diff options
author | Mohammad Akhlaghi <mohammad@akhlaghi.org> | 2018-11-29 19:12:35 +0000 |
---|---|---|
committer | Mohammad Akhlaghi <mohammad@akhlaghi.org> | 2018-11-29 19:12:35 +0000 |
commit | 68325e63c51e3d5e569b2a14c90582f7b075dc23 (patch) | |
tree | 9e7775d775bae3072c0e7bbc707ee7d5cf4846cb /reproduce/src/make | |
parent | 5844981147a4af48fc3ffb8d2794487f0236b335 (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.mk | 7 | ||||
-rw-r--r-- | reproduce/src/make/dependencies.mk | 10 |
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. |