Blob Blame History Raw
From: Ole Streicher <olebole@debian.org>
Date: Thu, 1 Dec 2016 21:18:56 +0100
Subject: Dynamically link to libastrometry.so, when possible

---
 libkd/Makefile  |  3 +--
 solver/Makefile | 10 ++++------
 util/Makefile   |  8 +++-----
 3 files changed, 8 insertions(+), 13 deletions(-)

diff --git a/libkd/Makefile b/libkd/Makefile
index d8de18e..77c0f3d 100644
--- a/libkd/Makefile
+++ b/libkd/Makefile
@@ -92,8 +92,7 @@ py: pyspherematch
 PYSPHEREMATCH_OBJ := pyspherematch.o
 
 spherematch_c$(PYTHON_SO_EXT): pyspherematch.c setup.py $(SLIB)
-	LDFLAGS="$(LDFLAGS)" LDLIBS="$(LDLIBS)" \
-	SLIB="$(SLIB)" \
+	LDFLAGS="$(LDFLAGS)" LDLIBS="-L../solver -lastrometry" \
 	INC="$(INC)" \
 	CFLAGS="$(CFLAGS)" \
 	$(PYTHON) setup.py build_ext --inplace --force --build-temp .
diff --git a/solver/Makefile b/solver/Makefile
index 08f5e35..cdc98cd 100644
--- a/solver/Makefile
+++ b/solver/Makefile
@@ -45,9 +45,7 @@ LDFLAGS := $(LDFLAGS_DEF)
 LDLIBS := $(LDLIBS_DEF)
 LDLIBS += $(ANFILES_LIB)
 
-SLIB := $(ENGINE_LIB)
-SLIB += $(CATS_SLIB)
-SLIB += $(ANFILES_SLIB)
+SLIB := $(ENGINE_SO)
 
 CFLAGS += $(CFLAGS_DEF)
 CFLAGS += $(CATS_INC)
@@ -122,7 +120,7 @@ ENGINE_OBJS += new-wcs.o fits-guess-scale.o cut-table.o \
 	resort-xylist.o
 
 BUILD_INDEX_OBJS := build-index.o uniformize-catalog.o startree.o hpquads.o \
-	quad-builder.o quad-utils.o codefile.o codetree.o unpermute-stars.o \
+	quad-builder.o codefile.o codetree.o unpermute-stars.o \
 	unpermute-quads.o merge-index.o 
 ENGINE_OBJS += $(BUILD_INDEX_OBJS)
 
@@ -133,8 +131,8 @@ $(ENGINE_LIB): $(ENGINE_OBJS)
 	$(AR) rc $@ $(ENGINE_OBJS)
 	$(RANLIB) $@
 
-$(ENGINE_SO): $(ENGINE_OBJS) $(SLIB)
-	$(CC) $(LDFLAGS) $(SHAREDLIBFLAGS) -Wl,-soname,$@.0 -o $@.0 $^ $(LDLIBS)
+$(ENGINE_SO): $(ENGINE_LIB) $(CATS_SLIB) $(ANFILES_SLIB)
+	$(CC) $(LDFLAGS) $(SHAREDLIBFLAGS) -Wl,-soname,$@.0 -o $@.0 -Wl,--whole-archive $^ -Wl,--no-whole-archive $(LDLIBS) -lpthread
 	ln -s  $@.0 $@
 
 # old and miscellaneous executables that aren't part of the pipeline.
diff --git a/util/Makefile b/util/Makefile
index 1909bf4..db92966 100644
--- a/util/Makefile
+++ b/util/Makefile
@@ -55,8 +55,7 @@ ANFILES_OBJ += multiindex.o index.o indexset.o \
 	tabsort.o wcs-xy2rd.o wcs-rd2xy.o matchfile.o
 ANFILES_DEPS += $(QFITS_LIB)
 
-ANUTILS_OBJ += fitsioutils.o sip_qfits.o fitstable.o fitsbin.o fitsfile.o \
-	tic.o
+ANUTILS_OBJ += fitsioutils.o sip_qfits.o fitstable.o fitsbin.o fitsfile.o
 ANUTILS_DEPS += $(QFITS_LIB)
 endif
 
@@ -101,8 +100,7 @@ CFLAGS += -I.
 
 LDFLAGS += $(LDFLAGS_DEF)
 
-LDLIBS := $(LDLIBS_DEF)
-LDLIBS += $(ANFILES_LIB)
+LDLIBS := $(LDLIBS_DEF) -lm
 
 SHAREDLIBFLAGS := $(SHAREDLIBFLAGS_DEF)
 
@@ -166,7 +164,7 @@ an-pnmtofits: an-pnmtofits.o $(ANUTILS_SLIB)
 ALL_OBJ += an-pnmtofits.o
 
 _util$(PYTHON_SO_EXT): util.i lanczos.i $(ANFILES_SLIB)
-	LDFLAGS="$(LDFLAGS)" LDLIBS="$(LDLIBS)" SLIB="$(ANFILES_SLIB)" \
+	LDFLAGS="$(LDFLAGS)" LDLIBS="-L../solver -lastrometry" \
 	INC="$(ANFILES_INC)" CFLAGS="$(CFLAGS)" \
 	$(PYTHON) setup.py build_ext -v --inplace --build-temp .
 util.py: util.i lanczos.i