From e37673130c821a8bbdf9da1907cf1cdb0b689bbe Mon Sep 17 00:00:00 2001 From: Mohammad Akhlaghi Date: Thu, 31 Oct 2019 20:32:39 +0000 Subject: Minor corrections in distribution and autoconf prerequisite of automake Some minor corrections were made in the template: - When making the distribution, `.swp' files (created by Vim) are also removed. - Autoconf is set as a prerequisite of Automake I was also trying to add the Apache log4cxx, but its default 0.10.0 tarball needs some patches, so I have just left it half done until someone actually needs it and we apply the patch. --- .file-metadata | Bin 6727 -> 6727 bytes reproduce/analysis/make/initialize.mk | 1 + .../software/config/installation/checksums.mk | 1 + reproduce/software/config/installation/versions.mk | 1 + reproduce/software/make/build-rules.mk | 4 +-- reproduce/software/make/high-level.mk | 36 ++++++++++++++++++--- 6 files changed, 37 insertions(+), 6 deletions(-) diff --git a/.file-metadata b/.file-metadata index 282c544..346be67 100644 Binary files a/.file-metadata and b/.file-metadata differ diff --git a/reproduce/analysis/make/initialize.mk b/reproduce/analysis/make/initialize.mk index d6ac011..fde91af 100644 --- a/reproduce/analysis/make/initialize.mk +++ b/reproduce/analysis/make/initialize.mk @@ -331,6 +331,7 @@ $(packagecontents): paper.pdf | $(texdir) # Clean temporary (currently those ending in `~') files. cd $(texdir) find $(packagebasename) -name \*~ -delete + find $(packagebasename) -name \*.swp -delete # PROJECT SPECIFIC # ---------------- diff --git a/reproduce/software/config/installation/checksums.mk b/reproduce/software/config/installation/checksums.mk index 6a21477..b4efaa1 100644 --- a/reproduce/software/config/installation/checksums.mk +++ b/reproduce/software/config/installation/checksums.mk @@ -73,6 +73,7 @@ zlib-checksum = 73fd3fff4adeccd4894084c15ddac89890cd10ef105dd5e1835e1e9bbb6a49ff # `reproduce/software/config/installation/TARGETS.mk' will be built as part # of a project. To specify a software there, just remove the `-checksum' # suffix from the list below. +apachelog4cxx-checksum = 1c34d80983db5648bc4582ddcf6b4fdefdc6594c2769f95235f5441cd6d03cf279cc8f365e9a687085b113f79ebac9d7d33a54b6aa3b3b808c0e1a56a15ffa37 apr-checksum = daa140c83c7e2c45c3980d9dc81d34fa662bebd050653562c39572d0ddf2eaedb71767c518a59d77f59db9b32e00221ef48b9f72ec3666c4521dd511969f3706 apr-util-checksum = 84da76e9b64da2de0996d4d6f3ab3f23db3724eb6352d218e0e8196bcc0b0a5d4fe791f41b4cc350ce3d04cce3bb3cf8bfb513d777d0cd030928368e6b55a536 astrometrynet-checksum = 35c268bf0a7068e01323b9bfccdf255c993df83c24b2e6026a00084c4ab87d031f1024205d0ed3aecc7e2a495d4bc0b0e67270d66679020b7cc2e4b2f30f5c4a diff --git a/reproduce/software/config/installation/versions.mk b/reproduce/software/config/installation/versions.mk index f0971ec..b498733 100644 --- a/reproduce/software/config/installation/versions.mk +++ b/reproduce/software/config/installation/versions.mk @@ -71,6 +71,7 @@ zlib-version = 1.2.11 # `reproduce/software/config/installation/TARGETS.mk' will be built as part # of a project. To specify a software there, just remove the `-version' # suffix from the list below. +apachelog4cxx-version = 0.10.0 apr-version = 1.7.0 apr-util-version = 1.6.1 astrometrynet-version = 0.77 diff --git a/reproduce/software/make/build-rules.mk b/reproduce/software/make/build-rules.mk index a2d1c17..cde8f71 100644 --- a/reproduce/software/make/build-rules.mk +++ b/reproduce/software/make/build-rules.mk @@ -72,7 +72,7 @@ gbuild = if [ x$(static_build) = xyes ] && [ "x$(2)" = xstatic ]; then \ fi; \ \ if [ -f $(ibdir)/bash ]; then \ - if [ -f $$confscript ]; then \ + if [ -f "$$confscript" ]; then \ sed -e's|\#\! /bin/sh|\#\! $(ibdir)/bash|' \ -e's|\#\!/bin/sh|\#\! $(ibdir)/bash|' \ $$confscript > $$confscript-tmp; \ @@ -84,7 +84,7 @@ gbuild = if [ x$(static_build) = xyes ] && [ "x$(2)" = xstatic ]; then \ else shellop="SHELL=/bin/sh"; \ fi; \ \ - if [ -f $$confscript ]; then \ + if [ -f "$$confscript" ]; then \ if [ x"$(strip $(1))" = x"zlib-$(zlib-version)" ]; then \ configop="--prefix=$(idir)"; \ else configop="$$shellop --prefix=$(idir)"; \ diff --git a/reproduce/software/make/high-level.mk b/reproduce/software/make/high-level.mk index e164ef0..0812067 100644 --- a/reproduce/software/make/high-level.mk +++ b/reproduce/software/make/high-level.mk @@ -132,7 +132,8 @@ include reproduce/software/make/python.mk # convention, but include the name/version in their tarball names with # another format, we'll do the modification before the download so the # downloaded file has our desired format. -tarballs = $(foreach t, apr-$(apr-version).tar.gz \ +tarballs = $(foreach t, apachelog4cxx-$(apachelog4cxx-version).tar.gz \ + apr-$(apr-version).tar.gz \ apr-util-$(apr-util-version).tar.gz \ astrometry.net-$(astrometrynet-version).tar.gz \ atlas-$(atlas-version).tar.bz2 \ @@ -189,8 +190,12 @@ $(tarballs): $(tdir)/%: | $(lockdir) # Set the top download link of the requested tarball. mergenames=1 - if [ $* = apr-util-$(apr-util-version).tar.gz ]; - then c=$(apr-util-checksum); w=https://www-us.apache.org/dist/apr + if [ $$n = apachelog ]; then + mergenames=0; + c=$(apachelog4cxx-checksum); + w=https://www-eu.apache.org/dist/logging/log4cxx/$(apachelog4cxx-version)/apache-log4cxx-$(apachelog4cxx-version).tar.lz + elif [ $* = apr-util-$(apr-util-version).tar.gz ]; then + c=$(apr-util-checksum); w=https://www-us.apache.org/dist/apr elif [ $$n = apr ]; then c=$(apr-checksum); w=https://www-us.apache.org/dist/apr elif [ $$n = astrometry ]; then c=$(astrometrynet-checksum); w=http://astrometry.net/downloads elif [ $$n = atlas ]; then @@ -339,6 +344,28 @@ $(tarballs): $(tdir)/%: | $(lockdir) # libraries. Therefore, we can't use the easy `.a' suffix for static # libraries as targets and there are different conventions for shared # library names. + +# Until version 0.11.0 is released, we are using the version corresponding +# to commit 014954db +$(ibidir)/apachelog4cxx: | $(ibidir)/automake \ + $(tdir)/apachelog4cxx-$(apachelog4cxx-version).tar.gz + + ######################### + # STILL NOT COMPLETE: needs a patch. + ######################### + pdir=apache-log4cxx-$(apachelog4cxx-version) + rm -rf $(ddir)/$$pdir + topdir=$(pwd); cd $(ddir); + tar xf $(word 1,$(filter $(tdir)/%,$|)) + cd $$pdir \ + && ./configure SHELL=$(ibdir)/bash --prefix=$(idir) \ + && make -j$(numthreads) SHELL=$(ibdir)/bash \ + && make install \ + && cd .. \ + && rm -rf $$pdir \ + && cd $$topdir \ + && echo "Apache log4cxx $(apachelog4cxx-version)" > $@ + $(ibidir)/apr: | $(tdir)/apr-$(apr-version).tar.gz $(call gbuild, apr-$(apr-version), ,--disable-static) \ && echo "Apache Portable Runtime $(apr-version)" > $@ @@ -768,7 +795,8 @@ $(ibidir)/autoconf: | $(tdir)/autoconf-$(autoconf-version).tar.lz $(call gbuild, autoconf-$(autoconf-version), static, ,V=1) \ && echo "GNU Autoconf $(autoconf-version)" > $@ -$(ibidir)/automake: | $(tdir)/automake-$(automake-version).tar.gz +$(ibidir)/automake: | $(ibidir)/autoconf \ + $(tdir)/automake-$(automake-version).tar.gz $(call gbuild, automake-$(automake-version), static, ,V=1) \ && echo "GNU Automake $(automake-version)" > $@ -- cgit v1.2.1