1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
Use libtool to have both shared and static lib.
diff --git a/Makefile.inc b/Makefile.inc
index 3178d7c..cc6f09a 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -1,7 +1,7 @@
pkgdocdir=$(pkgdatadir)/doc
AM_CPPFLAGS =
if !TARGET_WIN32CE
-CFLAGS += -shared
+#CFLAGS += -shared
AM_CPPFLAGS += -fPIC
endif
if DEBUG
diff --git a/autosh.sh b/autosh.sh
index fb522d6..216459e 100755
--- a/autosh.sh
+++ b/autosh.sh
@@ -1,2 +1,2 @@
#! /bin/bash
-aclocal && autoheader && automake --add-missing && autoreconf && ./configure
+autoreconf --force --install
diff --git a/configure.ac b/configure.ac
index af94cad..c0eb11c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -12,7 +12,14 @@ if eval "test x$GCC = xyes"; then
CFLAGS="$CFLAGS -Wall -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type"
fi
-AC_PROG_RANLIB
+AC_PROG_LIBTOOL
+LT_LIBGARMIN_CURRENT=0
+LT_LIBGARMIN_REVISION=0
+LT_LIBGARMIN_AGE=0
+AC_SUBST(LT_LIBGARMIN_CURRENT)
+AC_SUBST(LT_LIBGARMIN_REVISION)
+AC_SUBST(LT_LIBGARMIN_AGE)
+
# Checks for libraries.
# FIXME: Replace `main' with a function in `-lgarmin':
#AC_CHECK_LIB([garmin], [main])
diff --git a/src/Makefile.am b/src/Makefile.am
index e8ae308..27ffdc9 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -2,9 +2,12 @@ include $(top_srcdir)/Makefile.inc
AM_CPPFLAGS += -DDATAPREFIX=\"@datarootdir@\"
-lib_LIBRARIES = libgarmin.a
+lib_LTLIBRARIES = libgarmin.la
-libgarmin_a_SOURCES = GarminTypedef.h garmin_fat.c garmin_rgn.h \
+libgarmin_la_LDFLAGS = -version-info \
+ @LT_LIBGARMIN_CURRENT@:@LT_LIBGARMIN_REVISION@:@LT_LIBGARMIN_AGE@
+
+libgarmin_la_SOURCES = GarminTypedef.h garmin_fat.c garmin_rgn.h \
bsp.c garmin_fat.h garmin_subdiv.c libgarmin_priv.h \
bsp.h garmin_lbl.c garmin_subdiv.h \
garmin_lbl.h garmin_typ.c list.c \
@@ -18,9 +21,9 @@ libgarmin_a_SOURCES = GarminTypedef.h garmin_fat.c garmin_rgn.h \
garmin_mdr.c garmin_mdr.h \
garmin_route.c align.h extras.h
-nodist_libgarmin_a_SOURCES=
+nodist_libgarmin_la_SOURCES=
if HAVEEXTRAS
-nodist_libgarmin_a_SOURCES+=extras.c
+nodist_libgarmin_la_SOURCES+=extras.c
endif
include_HEADERS = libgarmin.h
|