Diff for /loncom/build/Makefile between versions 1.189.4.4 and 1.201.2.28

version 1.189.4.4, 2010/04/14 19:16:24 version 1.201.2.28, 2024/07/31 22:10:08
Line 13  DIST=$(DISTPROBE) Line 13  DIST=$(DISTPROBE)
 CATEGORY="development"  CATEGORY="development"
 SOURCE=../..  SOURCE=../..
 TARGET=""  TARGET=""
   CURRSHELL=`echo $(SHELL)`
   ifneq ('/bin/bash',${CURRSHELL})
   CURRSHELL=/bin/bash
   endif
 NORESTORECONF="0"  NORESTORECONF="0"
 HOSTNAME=""  HOSTNAME=""
 LAUNCH=| perl  LAUNCH=| perl
Line 22  SAVE=program.pl.$(TIMESTAMP) Line 26  SAVE=program.pl.$(TIMESTAMP)
 LAUNCHSAVE=$(OUTSTREAM) $(SAVE)  LAUNCHSAVE=$(OUTSTREAM) $(SAVE)
 METAMTARGET=""  METAMTARGET=""
 MTARGET=""  MTARGET=""
 VERSION=2.9.0  VERSION=2.11.5
   SHOWVERSION=$(VERSION)
   NEXTVERSION=2.12
   ifeq (CVS_HEAD,${VERSION})
   SHOWVERSION=$(NEXTVERSION).$(VERSION)
   endif
   #
 # The current working definition for "RELEASE" is: changes not in the software,  # The current working definition for "RELEASE" is: changes not in the software,
 # but in the operating system dependent packaging of the software.  Thus, the  # but in the operating system dependent packaging of the software.  Thus, the
 # generic tarball releases do not need to have a release number specified.  # generic tarball releases do not need to have a release number specified.
Line 46  help: Line 56  help:
   
 help_OPTIONS:  help_OPTIONS:
  @echo "* ADJUSTABLE OPTIONS *"   @echo "* ADJUSTABLE OPTIONS *"
  @echo "(option) DIST can be redhat7, debian, redhat6.2, or default"   @echo "(option) DIST can be centosN (N = 5, 6, 7 or 8), rhesN (N = 4, 5, 6, 7, 8 or 9),"
  @echo "         You probably do not need to specify this; it is"   @echo "         scientificN (N = 5, 6 or 7), oracleN (N = 6, 7, 8 or 9), rockyN (N = 8 or 9),"
  @echo "         automatically probed for."   @echo "         almaN (N = 8 or 9), centosN-stream (N = 8 or 9),"
    @echo "         or slesN (N = 9, 10, 11, 12 or 15), or debianN (N = 5, 6, 10, 11 or 12),"
    @echo "         or ubuntuN (N= 6, 8, 10, 12, 14, 16, 18, 20, 22 or 24), or fedoraN (N = 1 .. 40),"
    @echo "         or suseN.M (N.M: 9.2 .. 13.2), or default."
    @echo "         It is unlikely you would ever need to specify this,"
    @echo "         as it is automatically probed for."
  @echo "(option) CATEGORY can be 'runtime' or 'development'; currently"   @echo "(option) CATEGORY can be 'runtime' or 'development'; currently"
  @echo "         the 'development' setting is the most reliable;"   @echo "         the 'development' setting is the most reliable;"
  @echo "         eventually, production machines should be using the"   @echo "         eventually, production machines should be using the"
Line 126  help_TARGETS: Line 141  help_TARGETS:
  @echo "    nohist_reseval.db to nohist_accesscount.db."   @echo "    nohist_reseval.db to nohist_accesscount.db."
  @echo "modify_config_files: Perform automatic update of the "   @echo "modify_config_files: Perform automatic update of the "
  @echo "    configuration files for yum and MySQL."   @echo "    configuration files for yum and MySQL."
    @echo "langcheck: test to see if root bash and OS are using English."
  @echo "ntpcheck: test to see if ntp is installed and running."   @echo "ntpcheck: test to see if ntp is installed and running."
  @echo "html_parser_check: test functionality of HTML::Parser."   @echo "html_parser_check: test functionality of HTML::Parser."
  @echo "math_random_check: test functionality of Math::Random."   @echo "math_random_check: test functionality of Math::Random."
Line 133  help_TARGETS: Line 149  help_TARGETS:
  @echo "chkconfig: test runlevels of httpd and loncontrol."   @echo "chkconfig: test runlevels of httpd and loncontrol."
  @echo "rpmcheck: test to see if rpms known to confict are installed."   @echo "rpmcheck: test to see if rpms known to confict are installed."
  @echo "wrap_setuid: put a C wrapper around setuid scripts."   @echo "wrap_setuid: put a C wrapper around setuid scripts."
    @echo "bash_config_check: test if enable-bracketed-paste set to on."
    @echo "systemd_config_check: test if ProtectHome set to readonly."
         @echo "latex_fixup: regenerate ls-R database for the latex base."          @echo "latex_fixup: regenerate ls-R database for the latex base."
  @echo "picins_check: check for picins.sty, retrieve and rebuild"   @echo "picins_check: check for picins.sty, retrieve and rebuild"
  @echo "             filename databases used by LaTeX"   @echo "             filename databases used by LaTeX"
  @echo "mimetex_version_check: check if mimetex.cgi version has changed,"   @echo "mimetex_version_check: check if mimetex.cgi version has changed,"
  @echo "                      if so remove files from mimetexcache."   @echo "                      if so remove files from mimetexcache."
  @echo "latex_fmtutil: run utility to maintain TeX format files system-wide."   @echo "latex_fmtutil: run utility to maintain TeX format files system-wide."
    @echo "lcmathcomplex: set nvsize in LCMathComplex, if different from default."
    @echo "removenolongerused: check if there are files from previous
    @echo "                    LON-CAPA version; if so, prompt for removal."
  @echo "updatequery: solicit the user for machine configuration"   @echo "updatequery: solicit the user for machine configuration"
  @echo "             information; to be incorporated during an update"   @echo "             information; to be incorporated during an update"
  @echo "             procedure (via the UPDATE command)"   @echo "             procedure (via the UPDATE command)"
Line 148  help_TARGETS: Line 169  help_TARGETS:
  @echo "         /home/httpd/html/lon-status/version.txt"   @echo "         /home/httpd/html/lon-status/version.txt"
  @echo "aboutVERSION: place version information inside about.html"   @echo "aboutVERSION: place version information inside about.html"
  @echo "              and loncapa_apache.conf"   @echo "              and loncapa_apache.conf"
    @echo "postaboutVERSION: restore default version <!-- VERSION --> to"
    @echo "                  about.html and loncapa_apache.conf"
  @echo "*** Makefile.* TARGETS BUILT DYNAMICALLY FROM loncapafiles.lpml ***"   @echo "*** Makefile.* TARGETS BUILT DYNAMICALLY FROM loncapafiles.lpml ***"
  @echo "Makefile.configinstall: generate a Makefile for configuration"   @echo "Makefile.configinstall: generate a Makefile for configuration"
  @echo "                        files; built dynamically from"   @echo "                        files; built dynamically from"
Line 255  TEST_hosts_tab: Line 278  TEST_hosts_tab:
  else echo "**** ERROR **** hosts.tab not defined!" && \   else echo "**** ERROR **** hosts.tab not defined!" && \
      echo -n "You need to do one of the following within your " && \       echo -n "You need to do one of the following within your " && \
      echo "CVS repository (cd loncapa/loncom)" && \       echo "CVS repository (cd loncapa/loncom)" && \
      echo "   1) ln -s production_dns_hosts.tab dns_hosts.tab" && \       echo "   1) ln -s production_hosts.tab hosts.tab" && \
      echo "   2) ln -s development_dns_hosts.tab dns_hosts.tab" && \       echo "   2) ln -s development_hosts.tab hosts.tab" && \
      echo "or 3) ln -s rawhide_hosts.tab hosts.tab" && \       echo "or 3) ln -s rawhide_hosts.tab hosts.tab" && \
      echo "(you most likely want option #1, production_hosts.tab)" && \       echo "(you most likely want option #1, production_hosts.tab)" && \
        echo " and also one of the following within your " && \
        echo "CVS repository (cd loncapa/loncom)" && \
        echo "   1) ln -s production_dns_hosts.tab dns_hosts.tab" && \
        echo "   2) ln -s development_dns_hosts.tab dns_hosts.tab" && \
        echo "(you most likely want option #1, production_dns_hosts.tab)" && \
      exit 1; \       exit 1; \
  fi   fi
   
Line 269  TEST_domain_tab: Line 297  TEST_domain_tab:
  else echo "**** ERROR **** domain.tab not defined!" && \   else echo "**** ERROR **** domain.tab not defined!" && \
      echo -n "You need to do one of the following within your " && \       echo -n "You need to do one of the following within your " && \
      echo "CVS repository (cd loncapa/loncom)" && \       echo "CVS repository (cd loncapa/loncom)" && \
      echo "   1) ln -s production_dns_domain.tab dns_domain.tab" && \       echo "   1) ln -s production_domain.tab domain.tab" && \
      echo "   2) ln -s development_dns_domain.tab dns_domain.tab" && \       echo "   2) ln -s development_domain.tab domain.tab" && \
      echo "or 3) ln -s rawhide_domain.tab domain.tab" && \       echo "or 3) ln -s rawhide_domain.tab domain.tab" && \
      echo "(you most likely want option #1, production_domain.tab)" && \       echo "(you most likely want option #1, production_domain.tab)" && \
        echo " and also one of the following within your " && \
        echo "CVS repository (cd loncapa/loncom)" && \
        echo "   1) ln -s production_dns_domain.tab dns_domain.tab" && \
        echo "   2) ln -s development_dns_domain.tab dns_domain.tab" && \
        echo "(you most likely want option #1, production_dns_domain.tab)" && \
      exit 1; \       exit 1; \
  fi   fi
   
Line 309  configinstall: Makefile.configinstall Line 342  configinstall: Makefile.configinstall
   
 install: buildflag VERSION TEST_hosts_tab TEST_domain_tab Makefile.install Makefile  install: buildflag VERSION TEST_hosts_tab TEST_domain_tab Makefile.install Makefile
  echo -n "" > WARNINGS   echo -n "" > WARNINGS
    make aboutVERSION
  make -f Makefile.install SOURCE="$(SOURCE)" TARGET="$(TARGET)" \   make -f Makefile.install SOURCE="$(SOURCE)" TARGET="$(TARGET)" \
  directories   directories
  make -f Makefile.install SOURCE="$(SOURCE)" TARGET="$(TARGET)" files   make -f Makefile.install SOURCE="$(SOURCE)" TARGET="$(TARGET)" files
Line 317  install: buildflag VERSION TEST_hosts_ta Line 351  install: buildflag VERSION TEST_hosts_ta
  NORESTORECONF="$(NORESTORECONF)" configinstall   NORESTORECONF="$(NORESTORECONF)" configinstall
  make postinstall   make postinstall
  make warningnote   make warningnote
  @echo "You can now run 'make test' to see if your system is ready to go!"  # @echo "You can now run 'make test' to see if your system is ready to go!"
 # @echo "NOTE THAT YOUR SYSTEM MUST HAVE MYSQL WITH A USER=\"www\" AND"  # @echo "NOTE THAT YOUR SYSTEM MUST HAVE MYSQL WITH A USER=\"www\" AND"
 # @echo -n "PASSWORD=\"localhostkey\" FOR www\@localhost"  # @echo -n "PASSWORD=\"localhostkey\" FOR www\@localhost"
 # @echo -n "(YOU MAY NEED TO REINITIALIZE YOUR MYSQL www\@localhost USER)"  # @echo -n "(YOU MAY NEED TO REINITIALIZE YOUR MYSQL www\@localhost USER)"
Line 339  hosts_and_domain_tab: TEST_hosts_tab TES Line 373  hosts_and_domain_tab: TEST_hosts_tab TES
  "$(TARGET)" > Makefile.install   "$(TARGET)" > Makefile.install
  make -f Makefile.install directories   make -f Makefile.install directories
  make -f Makefile.install files   make -f Makefile.install files
  @echo "If hosts.tab or domain.tab has changed, restart httpd and loncontrol:"   @echo "If hosts.tab or domain.tab has changed, restart the web server and loncontrol:"
  @echo "   /etc/rc.d/init.d/httpd restart"   @echo "   service httpd restart,  or if that is unavailable on your Linux distro:"
  @echo "   /etc/rc.d/init.d/loncontrol restart"   @echo "   service apache2 restart"
    @echo "   /home/httpd/perl/loncontrol restart, or if that is unavailable on your Linux distro:"
    @echo "   /etc/init.d/loncontrol restart"
   
 webserverconf:  webserverconf:
  cat $(SOURCE)/doc/loncapafiles/webserver.piml | \   cat $(SOURCE)/doc/loncapafiles/webserver.piml | \
Line 375  tardist: Line 411  tardist:
  else \   else \
  ln -s . $(DIRTARGET); \   ln -s . $(DIRTARGET); \
  fi   fi
  cp -v $(SOURCE)/loncom/license/about.html \  
  $(SOURCE)/loncom/license/about.html.orig  
  cp -v $(SOURCE)/loncom/loncapa_apache.conf \  
  $(SOURCE)/loncom/loncapa_apache.conf.orig  
  make aboutVERSION   make aboutVERSION
  cd $(SOURCE); \   cd $(SOURCE); \
  tar --no-recursion --numeric-owner --files-from MANIFEST \   tar --no-recursion --numeric-owner --files-from MANIFEST \
  -h -czf $(DIRTARGET).tar.gz 2>tar_WARNINGS || [ "0" == "0" ]   -h -czf $(DIRTARGET).tar.gz 2>tar_WARNINGS || [ "0" == "0" ]
  mv -v $(SOURCE)/loncom/license/about.html.orig \   make postaboutVERSION
  $(SOURCE)/loncom/license/about.html  
  mv -v $(SOURCE)/loncom/loncapa_apache.conf.orig \  
  $(SOURCE)/loncom/loncapa_apache.conf  
  cat $(SOURCE)/tar_WARNINGS | \   cat $(SOURCE)/tar_WARNINGS | \
  xargs --replace=XXX echo '**** WARNING **** XXX' > WARNINGS   xargs --replace=XXX echo '**** WARNING **** XXX' > WARNINGS
  rm -f $(SOURCE)/tar_WARNINGS   rm -f $(SOURCE)/tar_WARNINGS
  make warningnote   make warningnote
   
   langcheck:
    cat $(SOURCE)/doc/loncapafiles/langcheck.piml | \
    perl piml_parse.pl $(CATEGORY) $(DIST) "$(TARGET)" $(LAUNCH) | \
    tee -a WARNINGS
   
 ntpcheck:  ntpcheck:
  cat $(SOURCE)/doc/loncapafiles/ntpcheck.piml | \   cat $(SOURCE)/doc/loncapafiles/ntpcheck.piml | \
  perl piml_parse.pl $(CATEGORY) $(DIST) "$(TARGET)" $(LAUNCH) | \   perl piml_parse.pl $(CATEGORY) $(DIST) "$(TARGET)" $(LAUNCH) | \
Line 510  latex_fmtutil: Line 544  latex_fmtutil:
  perl piml_parse.pl  $(CATEGORY) $(DIST) "$(TARGET)" $(LAUNCH) | \   perl piml_parse.pl  $(CATEGORY) $(DIST) "$(TARGET)" $(LAUNCH) | \
  tee -a WARNINGS   tee -a WARNINGS
   
   lcmathcomplex:
    cat $(SOURCE)/doc/loncapafiles/lcmathcomplex.piml | \
    perl piml_parse.pl  $(CATEGORY) $(DIST) "$(TARGET)" $(LAUNCH) | \
    tee -a WARNINGS
   
   removenolongerused:
    cat $(SOURCE)/doc/loncapafiles/removenolongerused.piml | \
    perl piml_parse.pl  $(CATEGORY) $(DIST) "$(TARGET)" $(QUERYLAUNCH)
   
   bash_config_check:
    cat $(SOURCE)/doc/loncapafiles/bash_config_check.piml | \
    perl piml_parse.pl  $(CATEGORY) $(DIST) "$(TARGET)" $(LAUNCH) | \
    tee -a WARNINGS
   
   systemd_config_check:
    cat $(SOURCE)/doc/loncapafiles/systemd_config_check.piml | \
    perl piml_parse.pl  $(CATEGORY) $(DIST) "$(TARGET)" $(LAUNCH) | \
    tee -a WARNINGS
   
 postinstall:  postinstall:
    make postaboutVERSION
  make webserverconf   make webserverconf
  make reseval_fixup   make reseval_fixup
  make clean_file_permissions   make clean_file_permissions
Line 518  postinstall: Line 572  postinstall:
  make update_queue_slots   make update_queue_slots
  make modify_config_files   make modify_config_files
  make clearoutoldspreadsheetcache   make clearoutoldspreadsheetcache
    make langcheck
  make chkconfig   make chkconfig
  make rpmcheck   make rpmcheck
  make ntpcheck   make ntpcheck
Line 526  postinstall: Line 581  postinstall:
  make sanitycheck   make sanitycheck
  make logcleanup   make logcleanup
  make sendmail_fix   make sendmail_fix
  make ownership_fix  
  make wrap_setuid   make wrap_setuid
  make latex_fixup   make latex_fixup
  make picins_check   make picins_check
  make mimetex_version_check   make mimetex_version_check
  make verify_domconfiguser   make verify_domconfiguser
    make bash_config_check
    make systemd_config_check
  make latex_fmtutil   make latex_fmtutil
    make lcmathcomplex
    sed -i "s/\x08\x08*/.../g" WARNINGS
 VERSION:  VERSION:
  install -d $(TARGET)/etc   install -d $(TARGET)/etc
    if (test -e /etc/loncapa-release); then \
    cp -p -v /etc/loncapa-release /etc/loncapa-release.prev; \
    fi
  echo -n "LON-CAPA release $(VERSION)-" > $(TARGET)/etc/loncapa-release   echo -n "LON-CAPA release $(VERSION)-" > $(TARGET)/etc/loncapa-release
  date +"%Y%m%d" >> $(TARGET)/etc/loncapa-release   date +"%Y%m%d" >> $(TARGET)/etc/loncapa-release
  install -d $(TARGET)/home/httpd/html/lon-status   install -d $(TARGET)/home/httpd/html/lon-status
Line 542  VERSION: Line 603  VERSION:
  date +"%Y%m%d" >> $(TARGET)/home/httpd/html/lon-status/version.txt   date +"%Y%m%d" >> $(TARGET)/home/httpd/html/lon-status/version.txt
   
 aboutVERSION:  aboutVERSION:
    cp -p -v $(SOURCE)/loncom/license/about.html \
    $(SOURCE)/loncom/license/about.html.orig
  cat $(SOURCE)/loncom/license/about.html | \   cat $(SOURCE)/loncom/license/about.html | \
  perl -e '$$d=`date +"%Y%m%d%H"`;chomp($$d);while(<>){s/\<\!\-\- VERSION \-\-\>/$(VERSION)-$$d/; print;}' > \   perl -e '$$d=`date +"%Y%m%d%H"`;chomp($$d);while(<>){s/(\<\!\-\- VERSION \-\-\>|\d+\.\d+\.CVS_HEAD\-\d{10})/$(SHOWVERSION)-$$d/; print;}' > \
  $(SOURCE)/loncom/license/about.html.new   $(SOURCE)/loncom/license/about.html.new
  mv -v $(SOURCE)/loncom/license/about.html.new \   mv -v $(SOURCE)/loncom/license/about.html.new \
  $(SOURCE)/loncom/license/about.html   $(SOURCE)/loncom/license/about.html
    touch --date="$(shell echo `perl getcvsdate.pl \
    $(SOURCE)/loncom/license/CVS/Entries about.html`)" \
    $(SOURCE)/loncom/license/about.html
    cp -p -v $(SOURCE)/loncom/loncapa_apache.conf \
    $(SOURCE)/loncom/loncapa_apache.conf.orig
  cat $(SOURCE)/loncom/loncapa_apache.conf | \   cat $(SOURCE)/loncom/loncapa_apache.conf | \
  perl -e '$$d=`date +"%Y%m%d%H"`;chomp($$d);while(<>){s/\<\!\-\- VERSION \-\-\>/$(VERSION)-$$d/; print;}' > \   perl -e '$$d=`date +"%Y%m%d%H"`;chomp($$d);while(<>){s/(\<\!\-\- VERSION \-\-\>|\d+\.\d+\.CVS_HEAD\-\d{10})/$(SHOWVERSION)-$$d/; print;}' > \
  $(SOURCE)/loncom/loncapa_apache.conf.new   $(SOURCE)/loncom/loncapa_apache.conf.new
  mv -v $(SOURCE)/loncom/loncapa_apache.conf.new \   mv -v $(SOURCE)/loncom/loncapa_apache.conf.new \
  $(SOURCE)/loncom/loncapa_apache.conf   $(SOURCE)/loncom/loncapa_apache.conf
    touch --date="$(shell echo `perl getcvsdate.pl \
    $(SOURCE)/loncom/CVS/Entries loncapa_apache.conf`)" \
    $(SOURCE)/loncom/loncapa_apache.conf
   
   postaboutVERSION:
    if (test -e $(SOURCE)/loncom/license/about.html.orig) && \
    (diff $(SOURCE)/loncom/license/about.html.orig \
    $(SOURCE)/loncom/license/about.html > /dev/null); then \
    mv -v $(SOURCE)/loncom/license/about.html.orig \
    $(SOURCE)/loncom/license/about.html; \
    elif (test -e $(SOURCE)/loncom/license/about.html.orig) && \
    !(diff $(SOURCE)/loncom/license/about.html.orig \
    $(SOURCE)/loncom/license/about.html > /dev/null); then \
    rm -f $(SOURCE)/loncom/license/about.html.orig; \
    fi
    touch --date="$(shell echo `perl getcvsdate.pl \
    $(SOURCE)/loncom/license/CVS/Entries about.html`)" \
    $(SOURCE)/loncom/license/about.html
    if (test -e $(SOURCE)/loncom/loncapa_apache.conf.orig) && \
    (diff $(SOURCE)/loncom/loncapa_apache.conf.orig \
    $(SOURCE)/loncom/loncapa_apache.conf > /dev/null); then \
    mv -v $(SOURCE)/loncom/loncapa_apache.conf.orig \
    $(SOURCE)/loncom/loncapa_apache.conf; \
    elif (test -e $(SOURCE)/loncom/loncapa_apache.conf.orig) && \
    !(diff $(SOURCE)/loncom/loncapa_apache.conf.orig \
    $(SOURCE)/loncom/loncapa_apache.conf > /dev/null); then \
    rm -f $(SOURCE)/loncom/loncapa_apache.conf.orig; \
    fi
    touch --date="$(shell echo `perl getcvsdate.pl \
    $(SOURCE)/loncom/CVS/Entries loncapa_apache.conf`)" \
    $(SOURCE)/loncom/loncapa_apache.conf
   
 # ========= *** Makefile.* TARGETS BUILT DYNAMICALLY FROM loncapafiles.lpml ***  # ========= *** Makefile.* TARGETS BUILT DYNAMICALLY FROM loncapafiles.lpml ***
   
Line 564  Makefile.configinstall: $(SOURCE)/doc/lo Line 663  Makefile.configinstall: $(SOURCE)/doc/lo
 Makefile.build: $(SOURCE)/doc/loncapafiles/loncapafiles.lpml lpml_parse.pl  Makefile.build: $(SOURCE)/doc/loncapafiles/loncapafiles.lpml lpml_parse.pl
  cat $(SOURCE)/doc/loncapafiles/loncapafiles.lpml | \   cat $(SOURCE)/doc/loncapafiles/loncapafiles.lpml | \
  perl lpml_parse.pl build $(CATEGORY) $(DIST) "$(SOURCE)" "$(TARGET)" \   perl lpml_parse.pl build $(CATEGORY) $(DIST) "$(SOURCE)" "$(TARGET)" \
  > Makefile.build   "$(CURRSHELL)" > Makefile.build
   
 Makefile.install: alwaysrun  Makefile.install: alwaysrun
  cat $(SOURCE)/doc/loncapafiles/loncapafiles.lpml | \   cat $(SOURCE)/doc/loncapafiles/loncapafiles.lpml | \

Removed from v.1.189.4.4  
changed lines
  Added in v.1.201.2.28


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>