Getting your routines extracted

Now you need to get your files to appear in the right subdirectories, so you need an entry in the appropriate Make.ext. All the Make.ext files comes from AtlasBase/make.base, so find the rout for your directory in this file (for examples the line saying
@ROUT ATLAS/interfaces/lapack/F77/src/) and add your routine name to the line containing the name of all the other routines.

So, now you are in your working directory (say ATLAS/src/lapack), and you type make -f Make.ext, and nothing happens, no new files show up. This is because you need to re-extract your Make.ext file. This can of course be done by removing your whole ATLAS tree and reinstalling, but less brutally you can ``just'' use something like this: extract -b /home/soender/AtlasBase/make.base -o Make.ext rout=ATLAS/src/lapack -langM. The -langM switch is required for extract to properly handle makefiles, so you cannot skip it.

This is the basic procedure for this sort of stuff. When you need a makefile in a BLDdir subdirectory, the appropriate makefile is copied by Make.top from the ATLAS/makes/ directory. Check Make.ext to see which basefile they come from, and add your routine name among the names of the other routines.

Remember to update the Makefiles for both ATLAS/bin and ATLAS/src/testing, and to get these makefiles into the appropriate subdirs. In order to extract new makefiles, and get them put into the appropriate subdirs, I typically do something like (from the BLDdir:

   pushd ~/TEST/ATLAS/makes/ ; make -f Make.ext ; cd .. ; \
          make refresh ; popd
(replace the path and arch appropriately, obviously).

Clint Whaley 2012-07-10