aboutsummaryrefslogtreecommitdiff
path: root/reproduce/src/make
diff options
context:
space:
mode:
authorMohammad Akhlaghi <mohammad@akhlaghi.org>2018-11-29 19:12:35 +0000
committerMohammad Akhlaghi <mohammad@akhlaghi.org>2018-11-29 19:12:35 +0000
commit68325e63c51e3d5e569b2a14c90582f7b075dc23 (patch)
tree9e7775d775bae3072c0e7bbc707ee7d5cf4846cb /reproduce/src/make
parent5844981147a4af48fc3ffb8d2794487f0236b335 (diff)
Optional rpath link option, CMake search path set, static WCSLIB
Thanks to a test build on Raul Infante Sainz's Mac OS computer, we were able to address some issues and will be trying them after this commit: a) The LLVM linker on that computer didn't recognize `-rpath-link'! So at configure time we now check for it and only include it when the linker recognizes it. b) CMake corrections: 1) `CMAKE_LIBRARY_PATH' is now defined so CMake can look in our custom directory to find the necessary libraries. 2) To build and install the CMake built programs, we now simply use `make' and `make install'. c) To avoid particular linking problems with WCSLIB (which has special problems compared to other libraries), we are now deleting the shared library version (both on GNU and Mac systems).
Diffstat (limited to 'reproduce/src/make')
-rw-r--r--reproduce/src/make/dependencies-build-rules.mk7
-rw-r--r--reproduce/src/make/dependencies.mk10
2 files changed, 9 insertions, 8 deletions
diff --git a/reproduce/src/make/dependencies-build-rules.mk b/reproduce/src/make/dependencies-build-rules.mk
index b7d6c1a..479b008 100644
--- a/reproduce/src/make/dependencies-build-rules.mk
+++ b/reproduce/src/make/dependencies-build-rules.mk
@@ -98,9 +98,8 @@ cbuild = if [ x$(static_build) = xyes ] && [ $(3)x = staticx ]; then \
cd $(ddir) && rm -rf $(2) && tar xf $(1) && cd $(2) && \
rm -rf pipeline-build && mkdir pipeline-build && \
cd pipeline-build && \
- cmake .. $$opts $(4) && \
- cmake --build . && \
- cmake .. -DCMAKE_INSTALL_PREFIX=$(idir) && \
- cmake --build . --target install && \
+ cmake .. -DCMAKE_LIBRARY_PATH=$(ildir) \
+ -DCMAKE_INSTALL_PREFIX=$(idir) $$opts $(4) && \
+ make && make install && \
cd ../.. && \
rm -rf $(2)
diff --git a/reproduce/src/make/dependencies.mk b/reproduce/src/make/dependencies.mk
index dc9e053..9f16615 100644
--- a/reproduce/src/make/dependencies.mk
+++ b/reproduce/src/make/dependencies.mk
@@ -59,7 +59,7 @@ export SHELL := $(ibdir)/bash
export CPPFLAGS := -I$(idir)/include
export PKG_CONFIG_PATH := $(ildir)/pkgconfig
export PKG_CONFIG_LIBDIR := $(ildir)/pkgconfig
-export LDFLAGS := -Wl,-rpath-link=$(ildir) -L$(ildir)
+export LDFLAGS := $(rpath_command) -L$(ildir)
@@ -193,11 +193,13 @@ $(ilidir)/libtiff: $(tdir)/tiff-$(libtiff-version).tar.gz \
$(ilidir)/wcslib: $(tdir)/wcslib-$(wcslib-version).tar.bz2 \
$(ilidir)/cfitsio | $(ilidir)
- # Unfortunately WCSLIB forces the building of shared libraries.
+ # Unfortunately WCSLIB forces the building of shared libraries. So
+ # we'll just delete any shared library that is produced afterwards.
$(call gbuild, $<, wcslib-$(wcslib-version), , \
LIBS="-pthread -lcurl -lm" --without-pgplot \
- --disable-fortran) \
- && echo "WCSLIB is built" > $@
+ --disable-fortran) && \
+ rm -f $(ildir)/libwcs.so* $(ildir)/libwcs*.dylib && \
+ echo "WCSLIB is built" > $@
# Zlib: its `./configure' doesn't use Autoconf's configure script, it just
# accepts a direct `--static' option.