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