Make alpha: Difference between revisions
From genomewiki
Jump to navigationJump to search
No edit summary |
No edit summary |
||
Line 31: | Line 31: | ||
$ cd hg/makeDb/trackDb # to be complete, do the trackDb and hgFindSpec tables also | $ cd hg/makeDb/trackDb # to be complete, do the trackDb and hgFindSpec tables also | ||
$ make alpha # then email notify browser staff | $ make alpha # then email notify browser staff | ||
$ echo "Please note: /usr/local/apache/cgi-bin/ binaries have been updated" \ | $ echo "Please note: /usr/local/apache/cgi-bin/ binaries have been updated for <reason>" \ | ||
| mail -s "new binaries in cgi-bin" <browser staff email address> | | mail -s "new binaries in cgi-bin" <browser staff email address> | ||
</PRE> | </PRE> |
Revision as of 00:07, 27 October 2006
The 'make alpha' makefile target in the kent source tree is used to build the CGI binaries and related data files into the /usr/local/apache/cgi-bin/ hierarchy.
After a new browser feature is developed the 'make alpha' is used to deliver this feature to the genome-test browser to allow QA and other users of genome-test to begin testing the new feature.
To use the 'make alpha' procedure, keep in mind the following:
- use a local filesystem to the development machine to save compile time
- i.e. performing the build via an NFS filesystem is highly inefficient
- use a completely clean checkout of the source tree to use only top-of-tree source
- notify browser staff via email when install is done so everyone is aware that genome-test has changed
The recommended sequence is:
$ cd /scratch/$LOGNAME # work in local filesystem, mkdir here if you need one $ mv kent kent.old $ rm -fr kent.old & # remove any previous builds while new one takes place $ cvs co kent # checkout completely new source tree # this checkout can take several minutes depending upon # network traffic $ cd kent/src # the make command below uses 4 CPUs. nice it down # this build takes about 2 minutes $ MAKE="make -j 4" nice -n +19 make -j 4 cgi-alpha > alpha.out 2>&1 # use the following grep to check for build errors # csh version: # (setenv MAKE "make -j 4"; nice +19 make -j 4 cgi-alpha) >& alpha.out $ egrep -i "erro|warn" alpha.out | egrep -v "Werror|disabling jobserver mode" # csh version: # egrep -i "erro|warn" alpha.out | egrep -v "Werror\|disabling jobserver mode" $ cd hg/makeDb/trackDb # to be complete, do the trackDb and hgFindSpec tables also $ make alpha # then email notify browser staff $ echo "Please note: /usr/local/apache/cgi-bin/ binaries have been updated for <reason>" \ | mail -s "new binaries in cgi-bin" <browser staff email address>
This procedure is explicitly not encapsulated into a script because it is important for developers to understand what is happening here. You can make your own script if you want, but please understand what is happening here.