Package: libfvm-dev
Version: 0.14.0-2
Severity: serious
Tags: patch
Justification: Broken shared objects

Hi,

as discussed quickly in #557020, libfvm might have some undefined
references. So I added -Wl,-z,defs to CFLAGS, and then noticed 900+
undefined references.

Please find attached a patch to fix those. I didn't use the .la's since
they're Evil©®™, but more importantly since not all libraries you're
using provide one. (Of course, automake helps getting src/Makefile.in in
line.)

I'll be checking code-saturne in a moment and update the other report
accordingly.

Mraw,
KiBi.
diff -u libfvm-0.14.0/debian/rules libfvm-0.14.0/debian/rules
--- libfvm-0.14.0/debian/rules
+++ libfvm-0.14.0/debian/rules
@@ -5,6 +5,8 @@
 include /usr/share/cdbs/1/class/autotools.mk
 include /usr/share/cdbs/1/rules/patchsys-quilt.mk
 
+CFLAGS += "-Wl,-z,defs"
+
 debian/stamp-autotools-files:
 	autoreconf
 	touch $@
diff -u libfvm-0.14.0/debian/patches/series libfvm-0.14.0/debian/patches/series
--- libfvm-0.14.0/debian/patches/series
+++ libfvm-0.14.0/debian/patches/series
@@ -3 +3 @@
-
+fix-undefined-references.diff
--- libfvm-0.14.0.orig/debian/patches/fix-undefined-references.diff
+++ libfvm-0.14.0/debian/patches/fix-undefined-references.diff
@@ -0,0 +1,19 @@
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -102,7 +102,15 @@ fvm_writer_priv.h
+ 
+ lib_LTLIBRARIES = libfvm.la
+ noinst_LTLIBRARIES =
+-libfvm_la_LIBADD =
++libfvm_la_LIBADD = -lbft -lm
++
++if HAVE_MED
++libfvm_la_LIBADD += -lmedC
++endif
++
++if HAVE_CGNS
++libfvm_la_LIBADD += -lcgns
++endif
+ 
+ libfvm_la_SOURCES = \
+ fvm_block_dist.c \

Reply via email to