pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
pkg/30029: [PATCH] devel/glib2 patches in defines never seen by the compiler
>Number: 30029
>Category: pkg
>Synopsis: [PATCH] devel/glib2 patches in defines never seen by the
>compiler
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Apr 22 07:59:00 +0000 2005
>Originator: Idar Tollefsen
>Release: N/A
>Organization:
Performance Design
>Environment:
Darwin fulcrum.local 7.9.0 Darwin Kernel Version 7.9.0: Wed Mar 30 20:11:17 PST
2005; root:xnu/xnu-517.12.7.obj~1/RELEASE_PPC Power Macintosh powerpc
>Description:
devel/glib2/patch/patch-ah replaces certain directory variables in
glib/gutils.c with defines to pkgsrc directories. devel/glib2/Makefile then
tries to define these by settings some of them in CONFIGURE_ENV and all of them
as -D flags in CPPFLAGS.
Unfortunately, the definitions set up the Makefile are never propagated to the
command line and the build fails.
>How-To-Repeat:
Just try to build devel/glib2.
It is possible that the problem is platform specific.
If so, try to build devel/glib2 on OS X.
>Fix:
Altough the problem _might_ be OS X specific, the solution isn't.
Instead of trying to get the necessary defines passed to the compiler from the
command line, include the definitions in config.h.
The patch also changes F77=${FALSE} to only apply to SunOS where the comment
says it's needed. It otherwise generates annoying warnings during configuration.
Here's the patch against devel/glib2/Makefile:
----------------------------------------------
--- Makefile.orig Fri Apr 22 08:47:33 2005
+++ Makefile Fri Apr 22 09:24:04 2005
@@ -34,7 +34,6 @@
PKGCONFIG_OVERRIDE+= gthread-2.0.pc.in
GNU_CONFIGURE= # defined
-CONFIGURE_ENV+= PKGLOCALEDIR=${PKGLOCALEDIR}
CONFIGURE_ARGS+= --enable-gtk-doc=no
CONFIGURE_ARGS+= --includedir=${PREFIX}/include/glib
CONFIGURE_ARGS+= --with-html-dir=${PREFIX}/share/doc
@@ -42,18 +41,16 @@
CONFIGURE_ARGS.gnu-iconv= --with-libiconv=gnu
-# Avoid an ICE in gcc2 on sparc64
-CONFIGURE_ENV+= F77=${FALSE}
-
CONFIGURE_ENV+= PERL=${PERL5}
CONFIGURE_ENV+= PERL_PATH=${PERL5}
-CPPFLAGS+= -DPREFIX="\"${PREFIX}\""
-CPPFLAGS+= -DPKGLOCALEDIR="\"${PKGLOCALEDIR}\""
-CPPFLAGS+= -DPKG_SYSCONFDIR="\"${PKG_SYSCONFDIR}\""
-
.include "../../mk/bsd.prefs.mk"
+# Avoid an ICE in gcc2 on sparc64
+.if ${OPSYS} == "SunOS"
+CONFIGURE_ENV+= F77=${FALSE}
+.endif
+
# FreeBSD fix for libgthread:
# Be sure libgthread is linked to the threaded library (libc_r), otherwise
# -pthread is added and this won't work with libraries, only executable
@@ -73,6 +70,13 @@
PRINT_PLIST_AWK+= /^@dirrm include\/glib$$/ \
{ print "@unexec $${RMDIR} %D/" $$2 \
" 2>/dev/null || $${TRUE}"; next; }
+
+post-configure:
+ @${ECHO} "" >> ${WRKSRC}/config.h
+ @${ECHO} "/* pkgsrc definitions. */" >> ${WRKSRC}/config.h
+ @${ECHO} "#define PREFIX \"${PREFIX}\"" >> ${WRKSRC}/config.h
+ @${ECHO} "#define PKGLOCALEDIR \"${PKGLOCALEDIR}\"" >>
${WRKSRC}/config.h
+ @${ECHO} "#define PKG_SYSCONFDIR \"${PKG_SYSCONFDIR}\"" >>
${WRKSRC}/config.h
.include "../../converters/libiconv/buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
Home |
Main Index |
Thread Index |
Old Index