23042424a3f60f3a861e2f9c4f32f65ca1b23fd6 maximilianh Sat Apr 26 02:24:47 2025 +0200 making htdocs make work on OSX diff --git src/hg/htdocs/makefile src/hg/htdocs/makefile index 0941e4ac596..1266b42cc84 100644 --- src/hg/htdocs/makefile +++ src/hg/htdocs/makefile @@ -1,28 +1,29 @@ kentSrc = ../.. include ../../inc/common.mk GIT = git GITUP = ${GIT} pull ifeq (${FIND},) INSIDEGIT := $(shell git rev-parse --is-inside-work-tree 2>/dev/null) HASGITFILES := $(shell which gitFiles && echo true) # Default to using find: Mirrors do not have the program 'gitFiles'. Also gitFiles is not needed anyways. # Also, when gitFiles is not present, the make target would silently fail and do nothing. FIND = find + ifeq (${INSIDEGIT},true) ifeq (${HASGITFILES},true) FIND = gitFiles endif endif endif # if you need to pick up files not checked-in yet for rsync, # you can run it like this: # # make FIND=find # # but be careful as it will rsync everything over including junk # REMEMBER: HTDOCSEXTRA @@ -46,23 +47,27 @@ beta: @if [ "${FIND}" = "find" ] ; then echo Error: FIND=find not allowed with make beta >& 2 ; exit 1 ; fi ${GITUP} cp -p ${CPREMDESTOPT} ${DOCUMENTROOT}/assemblyRequest.html ${DOCUMENTROOT}-beta/assemblyRequest.html ${MAKE} doInstall destDir=qateam@hgwbeta:${DOCUMENTROOT} ${MAKE} doInstall destDir=${DOCUMENTROOT}-beta rsync --chmod=Fu=rwx,Fg=rwx,Fo=rx --whole-file --times -a ${DOCUMENTROOT}-beta/assemblyRequest.html qateam@hgwbeta:${DOCUMENTROOT}/ # Run rsync. Care is taken to preserve times and modes on files. rsync is # smart about recreating files under the current users so that times and # permissions may be 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 = --whole-file --times --recursive --omit-dir-times --relative --cvs-exclude --exclude='makefile' --exclude='cpAndLinkToResourceFiles.pl' --exclude='style/*' doInstall: + ifeq ($(UNAME_S),Darwin) + rsync ${rsyncOpts} ${excl} ${incl} ./ ${destDir} + else umask 002; rsync ${rsyncOpts} ${excl} ${incl} `$(FIND)` ${destDir} + endif # Other targets that may be invoked by ../makefile: compile: install: alpha clean: