From bbece574d4dc5692240714f4dd6aaf0fad1740e8 Mon Sep 17 00:00:00 2001 From: Haikel Guemar Date: Wed, 31 Jul 2013 18:34:33 +0200 Subject: [PATCH] autotools: fix shared library generation on *nix systems Actually the shared library generated was an empty stub --- Makefile.in | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/Makefile.in b/Makefile.in index e3e1afbf..b73de965 100644 --- a/Makefile.in +++ b/Makefile.in @@ -7,11 +7,14 @@ libdir = $(DESTDIR)@libdir@ CFLAGS = @CFLAGS@ LDFLAGS = @LDFLAGS@ +SRCS = $(wildcard *.c) +OBJS = $(SRCS:.c=.o) ifeq ($(shell uname),Darwin) SO_EXT := dylib else SO_EXT := so + CFLAGS := -fPIC $(CFLAGS) endif SO_NAME := libjsonparser.$(SO_EXT).@VERSION_MAJOR@ @@ -19,17 +22,17 @@ REAL_NAME = libjsonparser.$(SO_EXT).@PACKAGE_VERSION@ all: libjsonparser.a libjsonparser.$(SO_EXT) -libjsonparser.a: json.o +libjsonparser.a: $(OBJS) $(AR) rcs libjsonparser.a json.o -libjsonparser.so: json.o - $(CC) -shared -Wl,-soname,$(SO_NAME) -o libjsonparser.so +libjsonparser.so: $(OBJS) + $(CC) -shared -Wl,-soname,$(SO_NAME) -o libjsonparser.so $^ -libjsonparser.dylib: json.o +libjsonparser.dylib: $(OBJS) $(CC) -dynamiclib json.o -o libjsonparser.dylib -json.o: - $(CC) $(CFLAGS) -c json.c +%.o: %.c + $(CC) $(CFLAGS) -c $^ clean: rm -f libjsonparser.$(SO_EXT) libjsonparser.a json.o