Admin/website/build/project.mak
changeset 20110 c2ffa1783319
parent 20109 47fef41c68fb
child 20111 ba1676dd3546
equal deleted inserted replaced
20109:47fef41c68fb 20110:c2ffa1783319
     1 # isaweb makefile - project-specific dependencies
       
     2 # $Id$
       
     3 
       
     4 include conf/distinfo.mak
       
     5 conf/distinfo.mak:
       
     6 	@echo 'There is no $@ file; it should have been allocated by makedist.'; \
       
     7 	@echo 'If you have no makedist at hand, check out default $@ from CVS'; \
       
     8 	@false; \
       
     9 
       
    10 STATICDIRS=css img media misc js
       
    11 STATICFILES=include/documentationdist.include.html
       
    12 OUTPUTDIST_REL=dist-$(DISTNAME)
       
    13 OUTPUTDIST=$(OUTPUTROOT)/$(OUTPUTDIST_REL)
       
    14 
       
    15 project: $(OUTPUTDIST) site
       
    16 .PHONY: project
       
    17 
       
    18 cleanproject:
       
    19 	rm -rf $(OUTPUTDIST)
       
    20 .PHONY: cleanproject
       
    21 
       
    22 ifeq ($(RSYNC),)
       
    23 
       
    24 $(OUTPUTDIST): $(ISABELLE_DIST)
       
    25 	mkdir -p $@
       
    26 	$(COPY) -vRud $</[^w]* $@
       
    27 	-chgrp -hR $(TARGET_GROUP) $@
       
    28 	-chmod -R u+w,g-w,o-w $@
       
    29 	( cd $@ && rm -f Isabelle && ln -s $(DISTNAME) Isabelle )
       
    30 	-chgrp -h $(TARGET_GROUP) $@/Isabelle
       
    31 	-chmod u+w,g-w,o-w $@/Isabelle
       
    32 	( cd $(OUTPUTROOT) && rm -f dist && ln -s $(OUTPUTDIST_REL) dist )
       
    33 
       
    34 else
       
    35 
       
    36 $(OUTPUTDIST): $(ISABELLE_DIST) SYNC_ALWAYS
       
    37 	mkdir -p $@
       
    38 	$(RSYNC) -v --exclude='/website/' -rlt --delete --delete-after $</ $@
       
    39 	-chgrp -hR $(TARGET_GROUP) $@
       
    40 	-chmod -R u+w,g-w,o-w $@
       
    41 	( cd $@ && rm -f Isabelle && ln -s $(DISTNAME) Isabelle )
       
    42 	-chgrp -h $(TARGET_GROUP) $@/Isabelle
       
    43 	-chmod u+w,g-w,o-w $@/Isabelle
       
    44 	( cd $(OUTPUTROOT) && rm -f dist && ln -s $(OUTPUTDIST_REL) dist )
       
    45 
       
    46 SYNC_ALWAYS:
       
    47 
       
    48 endif
       
    49 
       
    50 include/documentationdist.include.html: $(ISABELLE_DOC_CONTENT_FILE)
       
    51 	perl build/mkcontents.pl -p '//dist/Isabelle/doc/' $< $@
       
    52 
       
    53 perms:
       
    54 	build/set_perm.bash $(FIND) $(LOCAL_UMASK_FILE) $(LOCAL_UMASK_DIR) $(LOCAL_GROUP)
       
    55 .PHONY: perms