aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2020-05-12 16:45:33 +0200
committerMatthias P. Braendli <matthias.braendli@mpb.li>2020-05-12 16:45:33 +0200
commit808c7a7cd6004b0c039b00e0e9830027f424ab62 (patch)
treeccff8014caeef3f548826a1e63e634437d0b11f5
parent7867dadc168c9130c0aa569a48abbafa1cb075e7 (diff)
downloadODR-AudioEnc-808c7a7cd6004b0c039b00e0e9830027f424ab62.tar.gz
ODR-AudioEnc-808c7a7cd6004b0c039b00e0e9830027f424ab62.tar.bz2
ODR-AudioEnc-808c7a7cd6004b0c039b00e0e9830027f424ab62.zip
Statically link toolame-dab and fdk-aac-dab
ODR-AudioEnc is the only tool using those two libraries, and statically linking makes deployment simpler.
-rw-r--r--.gitignore2
-rw-r--r--Makefile.am65
-rw-r--r--configure.ac34
-rw-r--r--fdk-aac/Makefile.am22
4 files changed, 35 insertions, 88 deletions
diff --git a/.gitignore b/.gitignore
index a5b8794..83af487 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,7 @@
*.o
*.lo
*.la
+lib*.a
.deps
.libs
.dirstamp
@@ -27,4 +28,5 @@ m4/ltversion.m4
m4/lt~obsolete.m4
missing
stamp-h1
+ar-lib
odr-audioenc
diff --git a/Makefile.am b/Makefile.am
index 29ac878..44b2fab 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -9,9 +9,6 @@ else
GITVERSION_FLAGS =
endif
-libtoolame_dab_la_LINK = $(LINK) $(libtoolame_dab_la_LDFLAGS)
-# Mention a dummy pure C file to trigger generation of the $(LINK) variable
-
toolame_dabincludedir = $(includedir)/libtoolame-dab
toolame_dabinclude_HEADERS = \
$(top_srcdir)/libtoolame-dab/absthr.h \
@@ -45,14 +42,35 @@ toolame_dabinclude_HEADERS = \
$(top_srcdir)/libtoolame-dab/toolame.h \
$(top_srcdir)/libtoolame-dab/utils.h
-pkgconfigdir = $(libdir)/pkgconfig
+noinst_LIBRARIES = libtoolame-dab.a
+
+libtoolame_dab_a_SOURCES = \
+ libtoolame-dab/common.c \
+ libtoolame-dab/encode.c \
+ libtoolame-dab/ieeefloat.c \
+ libtoolame-dab/toolame.c \
+ libtoolame-dab/portableio.c \
+ libtoolame-dab/psycho_n1.c \
+ libtoolame-dab/psycho_0.c \
+ libtoolame-dab/psycho_1.c \
+ libtoolame-dab/psycho_2.c \
+ libtoolame-dab/psycho_3.c \
+ libtoolame-dab/psycho_4.c \
+ libtoolame-dab/fft.c \
+ libtoolame-dab/subband.c \
+ libtoolame-dab/bitstream.c \
+ libtoolame-dab/mem.c \
+ libtoolame-dab/crc.c \
+ libtoolame-dab/tables.c \
+ libtoolame-dab/availbits.c \
+ libtoolame-dab/ath.c \
+ libtoolame-dab/encode_new.c \
+ libtoolame-dab/utils.c
-lib_LTLIBRARIES = libtoolame-dab.la
-libtoolame_dab_la_CFLAGS = -fomit-frame-pointer -DNEWENCODE -std=c99
-libtoolame_dab_la_LDFLAGS = -version-info @LIBTOOLAME_DAB_VERSION@ \
- -no-undefined \
- -export-symbols $(top_srcdir)/libtoolame-dab.sym
+libtoolame_dab_a_CFLAGS = -fomit-frame-pointer -DNEWENCODE -std=c99
+
+pkgconfigdir = $(libdir)/pkgconfig
if HAVE_JACK
odr_audioenc_LDADD_JACK = -ljack
@@ -74,9 +92,8 @@ FEC_SOURCES = contrib/fec/char.h \
contrib/fec/rs-common.h
-odr_audioenc_LDFLAGS = -no-install
-odr_audioenc_LDADD = libtoolame-dab.la \
- fdk-aac/libfdk-aac-dab.la \
+odr_audioenc_LDADD = libtoolame-dab.a \
+ fdk-aac/libfdk-aac-dab.a \
-lzmq \
$(odr_audioenc_LDADD_JACK) \
$(odr_audioenc_LDADD_ALSA) \
@@ -145,30 +162,6 @@ bin_PROGRAMS = odr-audioenc$(EXEEXT)
noinst_HEADERS = src/wavfile.h
-libtoolame_dab_la_SOURCES = \
- libtoolame-dab/common.c \
- libtoolame-dab/encode.c \
- libtoolame-dab/ieeefloat.c \
- libtoolame-dab/toolame.c \
- libtoolame-dab/portableio.c \
- libtoolame-dab/psycho_n1.c \
- libtoolame-dab/psycho_0.c \
- libtoolame-dab/psycho_1.c \
- libtoolame-dab/psycho_2.c \
- libtoolame-dab/psycho_3.c \
- libtoolame-dab/psycho_4.c \
- libtoolame-dab/fft.c \
- libtoolame-dab/subband.c \
- libtoolame-dab/bitstream.c \
- libtoolame-dab/mem.c \
- libtoolame-dab/crc.c \
- libtoolame-dab/tables.c \
- libtoolame-dab/availbits.c \
- libtoolame-dab/ath.c \
- libtoolame-dab/encode_new.c \
- libtoolame-dab/utils.c
-
-
EXTRA_DIST = $(top_srcdir)/bootstrap \
$(top_srcdir)/README.md \
$(top_srcdir)/TODO.md \
diff --git a/configure.ac b/configure.ac
index 7db7c45..5f94cfb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -11,8 +11,8 @@ AC_CONFIG_HEADER([config.h])
dnl Checks for programs.
AC_PROG_CC
AC_PROG_CXX
-AC_PROG_LIBTOOL
-LT_INIT
+AC_PROG_RANLIB
+AM_PROG_AR
AX_CXX_COMPILE_STDCXX(11,noext,mandatory)
@@ -150,36 +150,6 @@ AS_IF([test "x$have_curl" = "xno"],
AM_EXTRA_RECURSIVE_TARGETS([fdk-aac])
-#PKG_CHECK_MODULES([LIBFDKAAC], [fdk-aac])
-#AC_SUBST([LIBFDKAAC_CFLAGS])
-#AC_SUBST([LIBFDKAAC_LIBS])
-## We need to have the ODR fdk-aac, the upstream one doesn't support DAB+
-#AC_MSG_CHECKING([for DAB+ support in FDK-AAC])
-#AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([[#include <fdk-aac/aacenc_lib.h>]],
-# [[char dummy[TT_DABPLUS];]])],
-# [
-# AC_MSG_RESULT([yes])
-# ],
-# [
-# AC_MSG_RESULT([no])
-# AC_MSG_ERROR(["Your FDK-AAC does not support DAB+, make sure you have installed the ODR version!"])
-# ]
-# )
-
-
-
-dnl soname version to use
-dnl goes by ‘current[:revision[:age]]’ with the soname ending up as
-dnl current.age.revision
-LIBTOOLAME_DAB_VERSION=0:1:0
-FDK_AAC_VERSION=2:0:0
-
-AS_IF([test x$enable_shared = xyes], [LIBS_PRIVATE=$LIBS], [LIBS_PUBLIC=$LIBS])
-AC_SUBST(FDK_AAC_VERSION)
-AC_SUBST(LIBTOOLAME_DAB_VERSION)
-AC_SUBST(LIBS_PUBLIC)
-AC_SUBST(LIBS_PRIVATE)
-
AM_CONDITIONAL([IS_GIT_REPO], [test -d '.git'])
AM_CONDITIONAL([EXAMPLE], [false])
diff --git a/fdk-aac/Makefile.am b/fdk-aac/Makefile.am
index 9404f8d..b53bced 100644
--- a/fdk-aac/Makefile.am
+++ b/fdk-aac/Makefile.am
@@ -17,9 +17,6 @@ AM_CPPFLAGS = \
-I./libPCMutils/include
AM_CXXFLAGS = -fno-exceptions -fno-rtti
-libfdk_aac_dab_la_LINK = $(LINK) $(libfdk_aac_dab_la_LDFLAGS)
-# Mention a dummy pure C file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libfdk_aac_dab_la_SOURCES = dummy.c
fdk_aac_dabincludedir = $(includedir)/fdk-aac-dab
fdk_aac_dabinclude_HEADERS = \
@@ -30,22 +27,7 @@ fdk_aac_dabinclude_HEADERS = \
./libAACenc/include/aacenc_lib.h \
./libAACdec/include/aacdecoder_lib.h
-#pkgconfigdir = $(libdir)/pkgconfig
-#pkgconfig_DATA = fdk-aac.pc
-
-lib_LTLIBRARIES = libfdk-aac-dab.la
-
-libfdk_aac_dab_la_LDFLAGS = -version-info @FDK_AAC_VERSION@ -no-undefined \
- -export-symbols ./fdk-aac.sym
-
-if EXAMPLE
-bin_PROGRAMS = aac-enc$(EXEEXT)
-
-aac_enc_LDADD = libfdk-aac-dab.la
-aac_enc_SOURCES = aac-enc.c wavreader.c
-
-noinst_HEADERS = wavreader.h
-endif
+noinst_LIBRARIES = libfdk-aac-dab.a
AACDEC_SRC = \
libAACdec/src/FDK_delay.cpp \
@@ -245,7 +227,7 @@ SYS_SRC = \
libSYS/src/genericStds.cpp \
libSYS/src/syslib_channelMapDescr.cpp
-libfdk_aac_dab_la_SOURCES = \
+libfdk_aac_dab_a_SOURCES = \
$(AACDEC_SRC) $(AACENC_SRC) \
$(ARITHCODING_SRC) \
$(DRCDEC_SRC) \