--- loncom/build/Makefile 2002/04/21 23:21:06 1.80 +++ loncom/build/Makefile 2002/05/02 14:48:14 1.94 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Scott Harrison -# $Id: Makefile,v 1.80 2002/04/21 23:21:06 harris41 Exp $ +# $Id: Makefile,v 1.94 2002/05/02 14:48:14 harris41 Exp $ DISTPROBE=`perl ./distprobe` DIST=$(DISTPROBE) @@ -16,6 +16,7 @@ SAVE=program.pl.$(TIMESTAMP) LAUNCHSAVE=$(OUTSTREAM) $(SAVE) METAMTARGET="" MTARGET="" +VERSION=0.1 help: @echo "*** You need to specify a valid target ***" @@ -52,6 +53,8 @@ help: @echo "RPM: build LON-CAPA-base RPM from CVS repository" @echo "setup_RPM: build LON-CAPA-setup RPM from CVS repository" @echo " handy for CD-ROM generation" + @echo "tardist: build a tarball that will upgrade the software on a " + @echo " system" test: TEST_lpml_scripts TEST_system_dependencies TEST_web_layer @echo "ALL SYSTEM DEPENDENCY TESTS SUCCESSFUL" @@ -74,10 +77,10 @@ TEST_hosts_tab: echo "there is a defined link; assume okay"; \ else echo "**** ERROR **** hosts.tab not defined!" && \ echo -n "You need to do one of the following within your " && \ - echo "CVS repository" && \ - echo " 1) cd ../; ln -s production_hosts.tab hosts.tab" && \ - echo " 2) cd ../; ln -s development_hosts.tab hosts.tab" && \ - echo "or 3) cd ../; ln -s rawhide_hosts.tab hosts.tab" && \ + echo "CVS repository (cd loncapa/loncom)" && \ + echo " 1) ln -s production_hosts.tab hosts.tab" && \ + echo " 2) ln -s development_hosts.tab hosts.tab" && \ + echo "or 3) ln -s rawhide_hosts.tab hosts.tab" && \ echo "(you most likely want option #1, production_hosts.tab)" && \ exit 1; \ fi @@ -222,6 +225,9 @@ Makefile.install: $(SOURCE)/doc/loncapaf "$(TARGET)" > Makefile.install build: Makefile.build pod2html.sh pod2man.sh + install -d $(SOURCE)/doc/man + install -d $(SOURCE)/doc/scripts + install -d $(SOURCE)/doc/lib/perl/Apache echo -n "" > WARNINGS make -f Makefile.build all make warningnote @@ -250,11 +256,22 @@ setup_RPM: SetupBinaryRoot customizerpm.xml DPKG: - make TARGET='LON-CAPA-base' NORESTORECONF='1' install + make TARGET='lon-capa-$(VERSION)' NORESTORECONF='1' install @echo "You will next need to follow instructions at:" @echo "http://people.debian.org/~jaldhar/make_package1.html" @echo "A directory with a snapshot of the debian package files" @echo "is LON-CAPA-base." +# What DPKG steps need to happen (for future implementation): +# export EMAIL="" ... probably sharrison@mail.lon-capa.org +# deb-make +# edit debian/control +# make debian/dirs file +# make debian/copyright file +# debian/README.debian... point them to LON-CAPA URLS +# debian/changelog +# debian/conffiles +# debuild +# and maybe do some GPG-related steps around here base_rpm_file_list: cat $(SOURCE)/doc/loncapafiles/loncapafiles.lpml | \ @@ -302,7 +319,8 @@ documentation_tree: cvsreport install $(SOURCE)/doc/build/cvsreport.html docs/cvsreport.html install $(SOURCE)/doc/build/doc.html docs/index.html install -d docs/hardware - install $(SOURCE)/doc/hardware/hardware.html docs/hardware/hardware.html + install $(SOURCE)/doc/hardware/hardware.html \ + docs/hardware/hardware.html install -d docs/3.1 install $(SOURCE)/doc/build/install.html docs/3.1/index.html install $(SOURCE)/doc/build/instructions_with_cd.html \ @@ -331,32 +349,49 @@ documentation_tree: cvsreport docs/loncapapasswords.html install $(SOURCE)/doc/build/loncapapasswordauthentication.html \ docs/loncapapasswordauthentication.html - install $(SOURCE)/doc/build/loncapatimesync.html docs/loncapatimesync.html + install $(SOURCE)/doc/build/loncapatimesync.html \ + docs/loncapatimesync.html install $(SOURCE)/doc/build/loncapamathequivalency.html \ docs/loncapamathequivalency.html tar czvf install.lon-capa.org_docs.tar.gz docs rm -Rf docs tardist: - cat $(SOURCE)/doc/loncapafiles/loncapafiles.lpml | \ + cat $(SOURCE)/doc/loncapafiles/buildfiles.lpml | \ perl lpml_parse.pl MANIFEST development default \ '$(SOURCE)' '$(TARGET)' | grep '[[:alnum:]]' > $(SOURCE)/MANIFEST - cat $(SOURCE)/doc/loncapafiles/buildfiles.lpml | \ + cat $(SOURCE)/doc/loncapafiles/testfiles.lpml | \ perl lpml_parse.pl MANIFEST development default \ '$(SOURCE)' '$(TARGET)' | grep '[[:alnum:]]' >> $(SOURCE)/MANIFEST + perl lpml_parse.pl MANIFEST development default \ + '$(SOURCE)' '$(TARGET)' | grep '[[:alnum:]]' >> $(SOURCE)/MANIFEST + cd $(SOURCE); find . -type f -name 'Entries' | grep 'CVS/Entries' >> \ + MANIFEST echo 'README' >> $(SOURCE)/MANIFEST echo 'UPDATE' >> $(SOURCE)/MANIFEST echo 'TEST' >> $(SOURCE)/MANIFEST + echo 'CHECKRPMS' >> $(SOURCE)/MANIFEST + echo 'MANIFEST' >> $(SOURCE)/MANIFEST + echo 'loncom/rawhide_hosts.tab' >> $(SOURCE)/MANIFEST + echo 'loncom/production_hosts.tab' >> $(SOURCE)/MANIFEST + echo 'loncom/development_hosts.tab' >> $(SOURCE)/MANIFEST + echo 'doc/man' >> $(SOURCE)/MANIFEST + echo 'doc/lib' >> $(SOURCE)/MANIFEST + echo 'doc/lib/perl' >> $(SOURCE)/MANIFEST + echo 'doc/lib/perl/Apache' >> $(SOURCE)/MANIFEST + echo 'doc/scripts' >> $(SOURCE)/MANIFEST echo '#!/bin/sh' > $(SOURCE)/UPDATE echo 'cd loncom/build; make build; make install' >> $(SOURCE)/UPDATE - echo '#!/bin/sh' > $(SOURCE)/UPDATE + echo '#!/bin/sh' > $(SOURCE)/TEST echo 'cd loncom/build; make test' >> $(SOURCE)/TEST + cp $(SOURCE)/loncom/build/CHECKRPMS $(SOURCE)/CHECKRPMS chmod a+rx $(SOURCE)/UPDATE chmod a+rx $(SOURCE)/TEST + chmod a+rx $(SOURCE)/CHECKRPMS cp $(SOURCE)/doc/shortest_path_redhat7.2.txt $(SOURCE)/README cd $(SOURCE); \ - tar --numeric-owner --files-from MANIFEST -czf loncapa.tar.gz \ - 2>WARNINGS || [ "0" == "0" ] + tar --no-recursion --numeric-owner --files-from MANIFEST \ + -czf loncapa.tar.gz 2>WARNINGS || [ "0" == "0" ] cat $(SOURCE)/WARNINGS | \ xargs --replace=XXX echo '**** WARNING **** XXX' > WARNINGS rm -f $(SOURCE)/WARNINGS