Installing empathy-2.32.2_3...warning: undefined reference

Chris Torek torek at torek.net
Wed Mar 13 12:26:45 UTC 2013


On Sun, Mar 10, 2013 at 3:34 PM, Koop Mast <kwm at rainbow-runner.nl>
wrote:

> Thanks for the report, this is already known.  Sadly I haven't
> managed to find a solution for this :/
>
>     -Koop

The Makefile in net-im/empathy tries to build its included header
files using glib-mkenums, but it assumes they're in the current
directory and depend on Makefile.in.  When they are in
/usr/local/include/* (and Makefile.in is newer) it goes badly
awry.

This somewhat crude patch fixes the problem...

Chris

--- src/Makefile.in.orig
+++ src/Makefile.in
@@ -1689,22 +1689,4 @@
 	$(GLIB_GENMARSHAL) --body --prefix=_$(subst -,_,$*)_marshal $< >> $*-marshal.c
 
-# rules for making the glib enum objects
-%-enumtypes.h: %.h Makefile.in
-	$(AM_V_GEN)glib-mkenums \
-	--fhead "#ifndef __$(shell echo $* | tr [:lower:]- [:upper:]_)_ENUM_TYPES_H__\n#define __$(shell echo $* | tr [:lower:]- [:upper:]_)_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
-	--fprod "/* enumerations from \"@filename@\" */\n" \
-	--vhead "GType @enum_name at _get_type (void);\n#define $(shell echo $* | tr [:lower:]- [:upper:]_ | sed 's/_.*//')_TYPE_ at ENUMSHORT@ (@enum_name at _get_type())\n"         \
-	--ftail "G_END_DECLS\n\n#endif /* __$(shell echo $* | tr [:lower:]- [:upper:]_)_ENUM_TYPES_H__ */" \
-	$< > $@
-
-%-enumtypes.c: %.h Makefile.in
-	$(AM_V_GEN)glib-mkenums \
-	--fhead "#include <$*.h>\n#include <$*-enumtypes.h>" \
-	--fprod "\n/* enumerations from \"@filename@\" */" \
-	--vhead "GType\n at enum_name@_get_type (void)\n{\n  static GType etype = 0;\n  if (etype == 0) {\n    static const G at Type@Value values[] = {"     \
-	--vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@VALUENAME@\" }," \
-	--vtail "      { 0, NULL, NULL }\n    };\n    etype = g_ at type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
-	$< > $@
-
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.


More information about the freebsd-ports mailing list