From: Andreas Rottmann <[email protected]>

Having subdir-objects enabled is recommended by automake 1.14, to avoid
future incompatibilities.

However, adding that option breaks out-of-tree builds, and also seems to
break "make distclean" for in-tree builds. The reason is that
apparently, automake with subdir-objects enabled cannot cope with source
files in a different, non-child directory. To avoid that, instead of
referencing the source files, we (just) link against that library.
---
 configure.ac           | 2 +-
 tests/sccp/Makefile.am | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/configure.ac b/configure.ac
index 49c5f7e..2b4062b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,7 @@ AC_INIT([libosmo-sccp],
        m4_esyscmd([./git-version-gen .tarball-version]),
        [[email protected]])

-AM_INIT_AUTOMAKE([dist-bzip2])
+AM_INIT_AUTOMAKE([subdir-objects dist-bzip2])
 AC_CONFIG_TESTDIR(tests)

 dnl kernel style compile messages
diff --git a/tests/sccp/Makefile.am b/tests/sccp/Makefile.am
index 8cce20c..c22801a 100644
--- a/tests/sccp/Makefile.am
+++ b/tests/sccp/Makefile.am
@@ -5,6 +5,6 @@ EXTRA_DIST = sccp_test.ok

 noinst_PROGRAMS = sccp_test

-sccp_test_SOURCES = sccp_test.c $(top_srcdir)/src/sccp.c
-sccp_test_LDADD = $(LIBOSMOCORE_LIBS)
+sccp_test_SOURCES = sccp_test.c
+sccp_test_LDADD = $(top_builddir)/src/libsccp.a $(LIBOSMOCORE_LIBS)

-- 
2.1.4

Reply via email to