# For each dependency except python, list it here along with its minimum
# version number.
# Very common third-party packages (boost, python, swig, doxygen)
# and very low-level LSST packages can be assumed to be recursively
# included by low-level LSST packages such as utils or daf_base.
# Any other package whose interface is used should be listed explicitly
# rather than assuming it will be included recursively.

if (type == exact) {
if (type != exact) {
   setupRequired(sconsUtils -j g50719a3ea6)
   setupRequired(afw -j g9722cb1a7f+d8f85438e7)
   setupRequired(daf_base -j g8ea07a8fe4+79658f16ab)
   setupRequired(utils -j ged10c03045+edbf708997)
   setupRequired(cpputils -j g87389fa792+a4172ec7da)
   setupRequired(base -j g53246c7159+edbf708997)
   setupRequired(pex_exceptions -j g786e29fd12+af89c03590)
   setupRequired(pex_config -j ga9e74d7ce9+128cc68277)
   setupRequired(geom -j g90f42f885a+6577634e1f)
   setupRequired(sphgeom -j g00d0e8bbd7+edbf708997)
   setupRequired(log -j geaed405ab2+062dfc8cdc)
   setupRequired(astshim -j g2cef7863aa+73c82f25e4)
   setupRequired(daf_butler -j g4dd1d7b196+ea63be4a5d)
   setupRequired(resources -j gac860778b9+062dfc8cdc)
   setupRequired(obs_base -j g1a55b07155+6c5c5fb126)
   setupRequired(pipe_base -j gaa98aacebd+21936cce85)
   setupRequired(astro_metadata_translator -j gf746e4f9fc+02a42095d5)
   setupRequired(pipe_tasks -j ge8e7e3f09d+87bbe2f199)
   setupRequired(coadd_utils -j g89139ef638+19fcc35de2)
   setupRequired(dustmaps_cachedata -j gbb0a0c949e+edbf708997)
   setupRequired(ip_diffim -j g5b326b94bb+25bfd59086)
   setupRequired(meas_astrom -j gdbb4c4dda9+dfe1dff262)
   setupRequired(meas_algorithms -j g3541666cd7+1e37cdad5c)
   setupRequired(meas_base -j g03191d30f7+6b31559d11)
   setupRequired(skymap -j g1fd858c14a+90100aa1a7)
   setupRequired(kht -j gaf53c9a034)
   setupRequired(meas_extensions_trailedSources -j g74acd417e5+cfdc02aca8)
   setupRequired(meas_extensions_shapeHSM -j gf8a46c3309+dfe1dff262)
   setupRequired(meas_deblender -j g262e1987ae+64df5f6984)
   setupRequired(verify -j g00d583acbd+3222556bce)
   setupRequired(dax_apdb -j g88cb488625+cdc2ed4845)
   setupRequired(felis -j g5c320bd705+4529a0555a)
   setupRequired(sdm_schemas -j g3eb46086f9+edbf708997)
   setupRequired(verify_metrics -j g8b480f84d9+edbf708997)
   setupRequired(ip_isr -j g8d4809ba88+dfe1dff262)
   setupRequired(meas_extensions_convolved -j g7da95dfc27+a777695915)
   setupRequired(meas_extensions_photometryKron -j g64539dfbff+dfe1dff262)
   setupRequired(meas_extensions_gaap -j g5c7ea12361+4d132fac92)
   setupRequired(meas_extensions_piff -j ge41e95a9f2+dfe1dff262)
   setupRequired(meas_extensions_psfex -j g3fd5ace14f+fb4e2866cc)
   setupRequired(psfex -j g7b9623be85+edbf708997)
   setupRequired(meas_extensions_scarlet -j gfd6555b056+326eb75f99)
   setupRequired(scarlet_lite -j ga2180abaac+edbf708997)
   setupRequired(meas_modelfit -j g7aefaa3e3d+dc1a598170)
   setupRequired(shapelet -j g47891489e3+19fcc35de2)
   setupRequired(fgcm -j gd7274e624d)
   setupOptional(obs_subaru -j ga94e9f2cd1+5f9fec70df)
   setupRequired(obs_subaru_data -j g7ff78db354)
   setupOptional(obs_lsst -j g1217d0f59f+6e7a42141e)
   setupRequired(obs_lsst_data -j g9459c7acd6)
}
} else {
   if (type == exact) {
      setupRequired(sconsUtils      -j g50719a3ea6)
      setupRequired(afw             -j g9722cb1a7f+d8f85438e7)
      setupRequired(daf_base        -j g8ea07a8fe4+79658f16ab)
      setupRequired(utils           -j ged10c03045+edbf708997)
      setupRequired(cpputils        -j g87389fa792+a4172ec7da)
      setupRequired(base            -j g53246c7159+edbf708997)
      setupRequired(pex_exceptions  -j g786e29fd12+af89c03590)
      setupRequired(pex_config      -j ga9e74d7ce9+128cc68277)
      setupRequired(geom            -j g90f42f885a+6577634e1f)
      setupRequired(sphgeom         -j g00d0e8bbd7+edbf708997)
      setupRequired(log             -j geaed405ab2+062dfc8cdc)
      setupRequired(astshim         -j g2cef7863aa+73c82f25e4)
      setupRequired(daf_butler      -j g4dd1d7b196+ea63be4a5d)
      setupRequired(resources       -j gac860778b9+062dfc8cdc)
      setupRequired(obs_base        -j g1a55b07155+6c5c5fb126)
      setupRequired(pipe_base       -j gaa98aacebd+21936cce85)
      setupRequired(astro_metadata_translator -j gf746e4f9fc+02a42095d5)
      setupRequired(pipe_tasks      -j ge8e7e3f09d+87bbe2f199)
      setupRequired(coadd_utils     -j g89139ef638+19fcc35de2)
      setupRequired(dustmaps_cachedata -j gbb0a0c949e+edbf708997)
      setupRequired(ip_diffim       -j g5b326b94bb+25bfd59086)
      setupRequired(meas_astrom     -j gdbb4c4dda9+dfe1dff262)
      setupRequired(meas_algorithms -j g3541666cd7+1e37cdad5c)
      setupRequired(meas_base       -j g03191d30f7+6b31559d11)
      setupRequired(skymap          -j g1fd858c14a+90100aa1a7)
      setupRequired(kht             -j gaf53c9a034)
      setupRequired(meas_extensions_trailedSources -j g74acd417e5+cfdc02aca8)
      setupRequired(meas_extensions_shapeHSM -j gf8a46c3309+dfe1dff262)
      setupRequired(meas_deblender  -j g262e1987ae+64df5f6984)
      setupRequired(verify          -j g00d583acbd+3222556bce)
      setupRequired(dax_apdb        -j g88cb488625+cdc2ed4845)
      setupRequired(felis           -j g5c320bd705+4529a0555a)
      setupRequired(sdm_schemas     -j g3eb46086f9+edbf708997)
      setupRequired(verify_metrics  -j g8b480f84d9+edbf708997)
      setupRequired(ip_isr          -j g8d4809ba88+dfe1dff262)
      setupRequired(meas_extensions_convolved -j g7da95dfc27+a777695915)
      setupRequired(meas_extensions_photometryKron -j g64539dfbff+dfe1dff262)
      setupRequired(meas_extensions_gaap -j g5c7ea12361+4d132fac92)
      setupRequired(meas_extensions_piff -j ge41e95a9f2+dfe1dff262)
      setupRequired(meas_extensions_psfex -j g3fd5ace14f+fb4e2866cc)
      setupRequired(psfex           -j g7b9623be85+edbf708997)
      setupRequired(meas_extensions_scarlet -j gfd6555b056+326eb75f99)
      setupRequired(scarlet_lite    -j ga2180abaac+edbf708997)
      setupRequired(meas_modelfit   -j g7aefaa3e3d+dc1a598170)
      setupRequired(shapelet        -j g47891489e3+19fcc35de2)
      setupRequired(fgcm            -j gd7274e624d)
      setupOptional(obs_subaru      -j ga94e9f2cd1+5f9fec70df)
      setupRequired(obs_subaru_data -j g7ff78db354)
      setupOptional(obs_lsst        -j g1217d0f59f+6e7a42141e)
      setupRequired(obs_lsst_data   -j g9459c7acd6)
   } else {
      setupRequired(sconsUtils g50719a3ea6 [>= g50719a3ea6])
      setupRequired(afw g9722cb1a7f+d8f85438e7 [>= g9722cb1a7f+d8f85438e7])
      setupRequired(daf_butler g4dd1d7b196+ea63be4a5d [>= g4dd1d7b196+ea63be4a5d])
      setupRequired(obs_base g1a55b07155+6c5c5fb126 [>= g1a55b07155+6c5c5fb126])
      setupRequired(pipe_base gaa98aacebd+21936cce85 [>= gaa98aacebd+21936cce85])
      setupRequired(pex_config ga9e74d7ce9+128cc68277 [>= ga9e74d7ce9+128cc68277])
      setupRequired(pipe_tasks ge8e7e3f09d+87bbe2f199 [>= ge8e7e3f09d+87bbe2f199])
      setupRequired(fgcm gd7274e624d [>= gd7274e624d])
      
      # data files for the unittests, and the obs package for that data
      setupOptional(testdata_jointcal)
      setupOptional(obs_subaru ga94e9f2cd1+5f9fec70df [>= ga94e9f2cd1+5f9fec70df])
      setupOptional(obs_lsst g1217d0f59f+6e7a42141e [>= g1217d0f59f+6e7a42141e])
   }
}
envPrepend(PYTHONPATH, ${PRODUCT_DIR}/python)
envPrepend(PATH, ${PRODUCT_DIR}/bin)
