# Makefile # For LON-CAPA # Scott Harrison # November 2000 CDTARGET="." all: # nothing yet here cd: # Build temporary script to get cd # make sure there is enough disk space @echo "# Automatically generated Makefile for LON-CAPA" > Makefile.cd.tmp @/bin/df $(CDTARGET) | perl -e '@l=<>;split(/\s+/,$$l[1]);$$s=@_[3]*1024;if ($$s>1000000000) {print "\S=1\n";} else {print "\S=0\n";}' >> Makefile.cd.tmp @echo "cd:" >> Makefile.cd.tmp @echo -e "ifeq (\$$(S),1)" >> Makefile.cd.tmp @echo -e "\t@echo \"There is enough disk space. Good!\"" >> Makefile.cd.tmp # set up commands to copy cd image from install.lon-capa.org (wget -r) @echo -e "\tcd \$$(TARGET); wget -np -N -r -l 1000 http://install.lon-capa.org/3.1/currentcdsource" >> Makefile.cd.tmp @echo -e "\tcd \$$(TARGET); find ./install.lon-capa.org -name index.html | xargs rm -f" >> Makefile.cd.tmp # set up cvs update commands # set up cd image compilation (mkisofs) @echo -e "\tcd \$$(TARGET)/install.lon-capa.org/3.1/currentcdsource/; mkisofs -v -R -T -V \"LON-CAPA and Red Hat 6.2\" -b images/boot.img -c boot.cat -o \$$(TARGET)/redhat.img ." >> Makefile.cd.tmp @echo -e "else" >> Makefile.cd.tmp @echo -e "\t@echo \"ERROR ******* Not enough disk space. There must be at least one gigabyte free\"" >> Makefile.cd.tmp @echo -e "endif" >> Makefile.cd.tmp @echo -e "\t@echo \"To mount this for something like an http network install; mount -t iso9660 -o ro,loop=/dev/loop0 /mnt/drive/redhat.img /home/harris41/public_html/mount\"" >> Makefile.cd.tmp make -f Makefile.cd.tmp TARGET="$(CDTARGET)" cd cd_cover: HTML: install -d HTML cp ../../doc/loncapafiles/*.gif HTML perl parse.pl ../../doc/loncapafiles/loncapafiles.html HTML > HTML/index.html status: install -d HTML cp ../../doc/loncapafiles/*.gif HTML perl parse.pl ../../doc/loncapafiles/loncapafiles.html status > HTML/filestatus.html statuspost: status cp ../../doc/loncapafiles/*.gif /home/httpd/html/lon-status cp HTML/filestatus.html /home/httpd/html/lon-status/filestatus.html LCMakefile: perl parse.pl ../../doc/loncapafiles/loncapafiles.html LCMakefile > LCMakefile SPEC: perl parse.pl ../../doc/loncapafiles/loncapafiles.html SPEC configinstall: # there is a dependency on having directories in place, but oh well... perl parse.pl ../../doc/loncapafiles/loncapafiles.html configinstall > Makefile.configinstall make -f Makefile.configinstall SOURCE="../.." TARGET="" configfiles perl loncaparestoreconfigurations lasttimestamp make -f Makefile.configinstall TARGET="" configpermissions install: build perl parse.pl ../../doc/loncapafiles/loncapafiles.html install > Makefile.install make -f Makefile.install SOURCE="../.." TARGET="" directories make -f Makefile.install SOURCE="../.." TARGET="" files make -f Makefile.install SOURCE="../.." TARGET="" links build: perl parse.pl ../../doc/loncapafiles/loncapafiles.html build > Makefile.build make -f Makefile.build all RPM: BinaryRoot cat base_file_list.txt | perl make_rpm.pl base 3.1 '' '' BinaryRoot cat setup_file_list.txt | perl make_rpm.pl setup 3.1 '' '' BinaryRoot BinaryRoot: perl parse.pl ../../doc/loncapafiles/loncapafiles.html BinaryRoot loncapaconfig: rm -Rf LoncapaconfigRoot install -d LoncapaconfigRoot/usr/src/ install -d LoncapaconfigRoot/usr/lib/python1.5/site-packages install /usr/lib/python1.5/site-packages/kudzumodule.so LoncapaconfigRoot/usr/lib/python1.5/site-packages/kudzumodule.so cd LoncapaconfigRoot/usr/src; cp -pR /mnt/drive/loncapaconfig . install -d LoncapaconfigRoot/usr/sbin @echo -e "#!/bin/sh\ncd /usr/src/loncapaconfig/usr/bin; ./loncapaconfig\n" > LoncapaconfigRoot/usr/sbin/loncapaconfig chmod u+x LoncapaconfigRoot/usr/sbin/loncapaconfig find LoncapaconfigRoot -type d | xargs chmod o-wxr find LoncapaconfigRoot -type f | xargs chmod o-wxr find LoncapaconfigRoot/ -type d | grep 'src/lon' > loncapaconfig_file_list.txt find LoncapaconfigRoot/ -type d | grep '^LoncapaconfigRoot/usr/lib/python1.5/site-packages' >> loncapaconfig_file_list.txt find LoncapaconfigRoot/ -type f >> loncapaconfig_file_list.txt cat loncapaconfig_file_list.txt | perl make_rpm.pl loncapaconfig 3.1 '' '' LoncapaconfigRoot cp LON-CAPA-loncapaconfig-3.1-1.i386.rpm /mnt/drive/install.lon-capa.org/3.1/currentcdsource/RedHat/RPMS/. clean: rm -Rf HTML rm -f *.spec rm -f LCMakefile rm -Rf BinaryRoot rm -f Makefile.BinaryRoot rm -f Makefile.build rm -f Makefile.install rm -f Makefile.install.tmp rm -f Makefile.cd.tmp rm -f *.rpm