Both libpspp.la and libpspp-core.la linked directly against libgl.la, and
the UI linked against both libpspp.la and libpspp-core.la. This works fine
on ELF systems, but with Mach-O on Mac OS X it silently causes duplicate
symbols at runtime. In particular there are two different copies of
rpl_optarg from libgl.la. Different code sees different copies of these,
which causes a segfault at runtime whenever anyone invokes pspp with an
option that takes an argument.
Reported by Jeremy Lavergne <jeremy@lavergne.gotdns.org>, with debugging
assistance by Jeremy and by John Darrington.
src/language/liblanguage.la \
src/math/libpspp-math.la \
src/output/liboutput.la \
- $(GSL_LIBS) \
- gl/libgl.la
-
+ $(GSL_LIBS)
include $(top_srcdir)/src/math/automake.mk
include $(top_srcdir)/src/output/automake.mk
tests_data_datasheet_test_SOURCES = \
tests/data/datasheet-test.c
-tests_data_datasheet_test_LDADD = gl/libgl.la src/libpspp-core.la $(LIBINTL)
+tests_data_datasheet_test_LDADD = src/libpspp-core.la $(LIBINTL)
tests_data_datasheet_test_CFLAGS = $(AM_CFLAGS)
tests_libpspp_ll_test_SOURCES = \
tests_libpspp_str_test_SOURCES = \
tests/libpspp/str-test.c
-tests_libpspp_str_test_LDADD = src/libpspp/libpspp.la gl/libgl.la $(LIBINTL)
+tests_libpspp_str_test_LDADD = gl/libgl.la src/libpspp/libpspp.la $(LIBINTL)
tests_libpspp_string_map_test_SOURCES = \
src/libpspp/hash-functions.c \