Changed build choice in configure.ac/Makefile.am/Makefile.nix: shared xor static
authorWinfried <szukw000@arcor.de>
Fri, 10 Dec 2010 04:27:40 +0000 (04:27 +0000)
committerWinfried <szukw000@arcor.de>
Fri, 10 Dec 2010 04:27:40 +0000 (04:27 +0000)
Makefile.nix
codec/Makefile.am
codec/Makefile.in
codec/Makefile.nix

index d98611922bfebd58e63fb9850945a1194d710b7e..5b0796f31aa5f1a9c70be2b7755363d3b031c75b 100644 (file)
@@ -34,10 +34,11 @@ MODULES = $(SRCS:.c=.o)
 CFLAGS = $(COMPILERFLAGS) $(INCLUDE)
 
 LIBNAME = lib$(TARGET)
-STATICLIB = $(LIBNAME).a
 
 ifeq ($(ENABLE_SHARED),yes)
 SHAREDLIB = $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR).$(JP3D_BUILD)
+else
+STATICLIB = $(LIBNAME).a
 endif
 
 default: all
@@ -45,13 +46,14 @@ default: all
 all: Jp3dVM
        make -C codec -f Makefile.nix all 
        install -d ../bin
-       install -m 644 $(STATICLIB) ../bin
 ifeq ($(ENABLE_SHARED),yes)
        install -m 755 $(SHAREDLIB) ../bin
        (cd ../bin && \
        ln -sf $(SHAREDLIB) $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR))
        (cd ../bin && \
        ln -sf $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR) $(LIBNAME).so)
+else
+       install -m 644 $(STATICLIB) ../bin
 endif
 
 dos2unix:
@@ -62,26 +64,26 @@ Jp3dVM: $(STATICLIB) $(SHAREDLIB)
 .c.o:
        $(CC) $(CFLAGS) -c $< -o $@
 
-$(STATICLIB): $(MODULES)
-       $(AR) r $@ $(MODULES)
-
 ifeq ($(ENABLE_SHARED),yes)
 $(SHAREDLIB): $(MODULES)
        $(CC) -s -shared -Wl,-soname,$(LIBNAME) -o $@ $(MODULES) $(LIBRARIES)
+else
+$(STATICLIB): $(MODULES)
+       $(AR) r $@ $(MODULES)
 endif
 
 install: Jp3dVM
        install -d '$(DESTDIR)$(INSTALL_LIBDIR)'
-       install -m 644 -o root -g root $(STATICLIB) '$(DESTDIR)$(INSTALL_LIBDIR)'
-       (cd $(DESTDIR)$(INSTALL_LIBDIR) && ranlib $(STATICLIB))
 ifeq ($(ENABLE_SHARED),yes)
        install -m 755 -o root -g root $(SHAREDLIB) '$(DESTDIR)$(INSTALL_LIBDIR)'
        (cd $(DESTDIR)$(INSTALL_LIBDIR) &&  \
        ln -sf $(SHAREDLIB) $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR) )
        (cd $(DESTDIR)$(INSTALL_LIBDIR) && \
        ln -sf $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR) $(LIBNAME).so )
+else
+       install -m 644 -o root -g root $(STATICLIB) '$(DESTDIR)$(INSTALL_LIBDIR)'
+       (cd $(DESTDIR)$(INSTALL_LIBDIR) && ranlib $(STATICLIB))
 endif
-       $(LDCONFIG)
        install -d $(DESTDIR)$(INSTALL_INCLUDE)
        rm -f $(DESTDIR)$(INSTALL_INCLUDE)/openjpeg3d.h
        install -m 644 -o root -g root libjp3dvm/openjpeg3d.h \
@@ -91,15 +93,16 @@ endif
        make -C codec -f Makefile.nix install
 
 uninstall:
-       rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(STATICLIB)
 ifeq ($(ENABLE_SHARED),yes)
        (cd $(DESTDIR)$(INSTALL_LIBDIR) && \
        rm -f $(LIBNAME).so $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR) $(SHAREDLIB))
+else
+       rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(STATICLIB)
 endif
-       $(LDCONFIG)
        rm -f $(DESTDIR)$(prefix)/include/openjpeg3d.h
        rm -rf $(DESTDIR)$(INSTALL_INCLUDE)
        make -C codec -f Makefile.nix uninstall
+
 clean:
        rm -f core u2dtmp* $(MODULES) $(STATICLIB) $(SHAREDLIB)
        make -C codec -f Makefile.nix clean
index ae299e3d465fc2587f45ea0b9de08c254e4fdc6a..5b3e8cf4fef4d83f566fb1b8f09923e471aebe59 100644 (file)
@@ -2,7 +2,11 @@
 
 USERLIBS =
 INCLUDES = -I. -I../libjp3dvm
-CFLAGS = -Wall $(INCLUDES) -static
+CFLAGS = -Wall $(INCLUDES)
+
+if with_staticlibs
+CFLAGS += -static
+endif
 
 bin_PROGRAMS = jp3d_to_volume volume_to_jp3d
 LDADD = $(USERLIBS) ../libjp3dvm/libopenjp3dvm.la
index 0eadd9f12bfa47a9ea492093b25d0436c1bcae69..59ab5eaac91d6b0c7213ae8b2fa39420ce17e958 100644 (file)
@@ -37,6 +37,7 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 target_triplet = @target@
+@with_staticlibs_TRUE@am__append_1 = -static
 bin_PROGRAMS = jp3d_to_volume$(EXEEXT) volume_to_jp3d$(EXEEXT)
 subdir = jp3d/codec
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
@@ -92,7 +93,7 @@ AWK = @AWK@
 BUILD_NR = @BUILD_NR@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
-CFLAGS = -Wall $(INCLUDES) -static
+CFLAGS = -Wall $(INCLUDES) $(am__append_1)
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
 CXX = @CXX@
index b87a4d343176ca3c9ead87e5dec7b453a0fc31ea..e34ad39ca5aa5372efdcfb31f824bb86da50a82c 100644 (file)
@@ -6,17 +6,23 @@ INSTALL_BIN = $(prefix)/bin
 CFLAGS = -Wall -I. -I../libjp3dvm -lstdc++ # -g -p -pg
 #USERLIBS = -lm
 
+ifeq ($(ENABLE_SHARED),yes)
+ELIB = ../libopenjp3dvm.so.$(JP3D_MAJOR).$(JP3D_MINOR).$(JP3D_BUILD)
+else
+ELIB = ../libopenjp3dvm.a
+endif
+
 all: jp3d_to_volume volume_to_jp3d
        install -d ../../bin
        install jp3d_to_volume volume_to_jp3d ../../bin
 
-jp3d_to_volume: jp3d_to_volume.c ../libopenjp3dvm.a
+jp3d_to_volume: jp3d_to_volume.c $(ELIB)
        $(CC) $(CFLAGS) getopt.c convert.c jp3d_to_volume.c \
-       -o jp3d_to_volume ../libopenjp3dvm.a $(USERLIBS)
+       -o jp3d_to_volume  $(ELIB) $(USERLIBS)
 
-volume_to_jp3d: volume_to_jp3d.c ../libopenjp3dvm.a
+volume_to_jp3d: volume_to_jp3d.c  $(ELIB)
        $(CC) $(CFLAGS) getopt.c convert.c volume_to_jp3d.c \
-       -o volume_to_jp3d ../libopenjp3dvm.a $(USERLIBS)
+       -o volume_to_jp3d  $(ELIB) $(USERLIBS)
 
 clean:
        rm -f jp3d_to_volume volume_to_jp3d