A student wanted the latest version of ROOT added to the ups database. The software was already installed in /cdf/code/cdfsoft/root, but didn’t show up with ups list -a root. To fix this, I became the owner of all our cdf software and ran the following command:
ups declare root v_5_22_00j -r root/v5_22_00j-GCC_3_4_6/Linux+2.6 -f Linux+2 -z /cdf/code/cdfsoft/products/upsdb -m root.table -q GCC_3_4_6
It took a few times to get this correct. If you make a mistake you can run the undeclare command, or even easier, just delete the file in /cdf/code/cdfsoft/products/upsdb/root/v_5_22_00j and then run the declare command again.
All the software is installed in /cdf/code/cdfsoft/products. Then look in root/v5_22_00j-GCC_3_4_6 to find that version. The important bit for ups is the table file, which in this case is in /cdf/code/cdfsoft/products/root/v5_22_00j-GCC_3_4_6/Linux+2.6/ups/root.table.
[/ups]$ more root.table
File = table
Product = root
Group:
Flavor = ANY
Qualifiers = "GCC_3_4_6"
Flavor = ANY
Qualifiers = "GCC_3_4_6:debug"
Flavor = ANY
Qualifiers = "64bit:GCC_3_4_6"
Flavor = ANY
Qualifiers = "64bit:GCC_3_4_6:debug"
Common:
Action = setup
setupEnv()
prodDir()
envSet(ROOTSYS,${UPS_PROD_DIR});
envPrepend(LD_LIBRARY_PATH,${ROOTSYS}/lib)
envPrepend(PYTHONPATH,${ROOTSYS}/lib)
pathPrepend(PATH,${ROOTSYS}/bin)
End:
This is the file that lists the flavor and qualifiers that must be used when declaring the version.