cc6aadf55e3f720487ad5c2b2c4f59f99621e3c0
angie
Wed Oct 27 11:02:39 2010 -0700
Bug #1211 (hg/makefile does not descend into hg/htdocs/): Added htdocsto hg/makefile's BROWSER_BINS, like js, so that all of the targets
that use BROWSER_BINS descend into htdocs. Unlike js/makefile,
htdocs/makefile does not create the -${USER} directory if it doesn't
exist, because Apache config change is required (and permissions for
apache/) -- cluster-admin need to handle that. Instead, htdocs' user
target checks for the existence of ${DOCUMENTROOT}-${USER} first.
diff --git src/hg/htdocs/makefile src/hg/htdocs/makefile
index 75c3021..acbfad2 100644
--- src/hg/htdocs/makefile
+++ src/hg/htdocs/makefile
@@ -1,76 +1,85 @@
include ../../inc/common.mk
# NOTES:
# - much of this is current repeats in the hgdownload htdocs makefile
# - all symlinks are built by the doSymLink target
GIT = git
GITUP = ${GIT} pull
FIND=gitFiles
user:
- ${MAKE} doInstall destDir=${DOCUMENTROOT}-${USER} extra=doSymLink
- cd style && echo style && ${MAKE} user
+ if test -d ${DOCUMENTROOT}-${USER}; then \
+ ${MAKE} doInstall destDir=${DOCUMENTROOT}-${USER} extra=doSymLink && \
+ cd style && echo style && ${MAKE} user; \
+ fi
alpha:
${MAKE} doInstall destDir=${DOCUMENTROOT} extra=doSymLink
cd style && echo style && ${MAKE} alpha
beta:
${GITUP}
${MAKE} doInstall destDir=${DOCUMENTROOT} extra=doSymLink
cd style && echo style && ${MAKE} beta
alphaCancerPublic:
${MAKE} doInstallCancerPublic destDir=${DOCUMENTROOT} extra=doSymLink
alphaCancerSU2C:
${MAKE} doInstallCancerSU2C destDir=${DOCUMENTROOT} extra=doSymLink
alphaCancerTCGA:
${MAKE} doInstallCancerTCGA destDir=${DOCUMENTROOT} extra=doSymLink
# Recursive target to do install to destDir, with extra excludes excl and
# specific includes in incl. The variable extra are extra targets to depend
# on. This queries git to find out the list of files to install, so avoid the
# usual crud that collects in directories.
doInstall: doRsync ${extra}
doInstallCancerPublic: doRsync ${extra}
mv ${destDir}/index.html ${destDir}/index.html.org
ln -sf ${destDir}/cancerGenomics/index.cancerGenomics.html ${destDir}/index.html
mv index.html index.html.org
doInstallCancerSU2C: doRsync ${extra}
mv ${destDir}/index.html ${destDir}/index.html.org
ln -sf ${destDir}/cancerGenomics/index.cancerGenomics.su2c.html ${destDir}/index.html
mv index.html index.html.org
doInstallCancerTCGA: doRsync ${extra}
mv ${destDir}/index.html ${destDir}/index.html.org
ln -sf ${destDir}/cancerGenomics/index.cancerGenomics.tcga.html ${destDir}/index.html
mv index.html index.html.org
# Run rsync. Care is taking to preserve times and mode on files. rsync is
# smart about recreating file under the current users so that times and
# permissions maybe modified. However, problems happen when a directory
# is not owned by the current users. These options attemp to work around it.
# use care in changing
rsyncOpts = --times --recursive --executability --omit-dir-times --relative --cvs-exclude --exclude='makefile' --exclude='cpAndLinkToResourceFiles.pl'
doRsync:
umask 002; rsync ${rsyncOpts} ${excl} ${incl} `$(FIND)` ${destDir}
# build symbolic links
doSymLink: doRsync
ln -sfn ../trash ${destDir}/trash
ln -sfn goldenPath ${destDir}/goldenpath
ln -sfn /gbdb/visiGene ${destDir}/visiGene
ln -sfn ENCODE ${destDir}/encode
ln -sfn Branchiostoma_lanceolatum.jpg ${destDir}/images/Branchiostoma_floridae.jpg
ln -sfn Rhesus_macaque.jpg ${destDir}/images/Macaca_mulatta.jpg
mkdir -p ${destDir}/RNA-img
ln -sfn /gbdb/hg18/RNA-img ${destDir}/RNA-img/hg18
ln -sfn /gbdb/hg19/RNA-img ${destDir}/RNA-img/hg19
ln -sfn /gbdb/mm9/RNA-img ${destDir}/RNA-img/mm9
ln -sfn /gbdb/rn4/RNA-img ${destDir}/RNA-img/rn4
+
+# Other targets that may be invoked by ../makefile:
+compile:
+
+install: alpha
+
+clean: