aboutsummaryrefslogtreecommitdiffstats
path: root/converters
diff options
context:
space:
mode:
authorwill <will@FreeBSD.org>2001-03-13 17:48:11 +0800
committerwill <will@FreeBSD.org>2001-03-13 17:48:11 +0800
commit5878547031a9347b01ade1786d60b83fa4449db5 (patch)
tree1056f8693231934a13cf9efc97aaa9d668cd2e3c /converters
parent0245b3a2fdc9eeb528707aff01ab30e01a66db47 (diff)
downloadfreebsd-ports-gnome-5878547031a9347b01ade1786d60b83fa4449db5.tar.gz
freebsd-ports-gnome-5878547031a9347b01ade1786d60b83fa4449db5.tar.zst
freebsd-ports-gnome-5878547031a9347b01ade1786d60b83fa4449db5.zip
Bring in my KDE 2.1 + X 4.0.2 + threads "fixes". WARNING: Doesn't quite
work right yet. This needs other eyes to look at in order for me to figure out what's going on here. Help, please? Basically, the current situation is this: You can hack the startkde script to make KDE2 start all the way through, which basically consists of simply replacing the kdeinit line with "kcminit". However, at certain points after KDE is done setting things up, processes named "kdeinit" that are in charge of certain apps go crazy and hit infinite loops somewhere. I haven't been able to determine where exactly, and if this is related to threads at all, or if a critical app or similar somehow doesn't get compiled with threads. Or something like that. *sigh* Konqueror can startup and seems to work okay in a different window manager, but it seems to randomly set off a kdeinit proc as above. Anyhow, this is 2 weeks' worth of debugging on a 4-month-old problem. If you're using XFree86 4.0.2, I caution against trying this stuff out unless you're going to help me out and are willing to help me figure out exactly where the heck things are going awry. Things should still compile and work just fine for those on XFree86 3.3.6. I decided to leave out these hacks in nonessential stuff (like kdenetwork et al) because kde2 itself needs to work with threads first. =) I guess I can thank my lucky stars JKH's decided to stick with 3.3.6 until some point in the future when 4.0.x becomes more stable...
Diffstat (limited to 'converters')
-rw-r--r--converters/kdesupport2/Makefile31
1 files changed, 27 insertions, 4 deletions
diff --git a/converters/kdesupport2/Makefile b/converters/kdesupport2/Makefile
index 78094ac43756..2cbfda0eb7e6 100644
--- a/converters/kdesupport2/Makefile
+++ b/converters/kdesupport2/Makefile
@@ -22,13 +22,36 @@ USE_BZIP2= yes
USE_NEWGCC= yes
INSTALLS_SHLIB= yes
GNU_CONFIGURE= yes
+
+.include <bsd.port.pre.mk>
+
+# Hack to make pthread support work correctly. Even if we have a
+# libqt2-mt, it may not be wise to build with it if we don't have
+# a threads stub for X.
+.if exists(${X11BASE}/lib/libqt2-mt.so)
+.if exists(${X11BASE}/lib/libXThrStub.so)
+QTNAME= "qt2-mt"
+.if ${OSVERSION} >= 500016
+PTHREAD_CFLAGS= ""
+PTHREAD_LIBS= "-lc_r"
+.else
+PTHREAD_CFLAGS= "-D_THREAD_SAFE"
+PTHREAD_LIBS= "-pthread"
+.endif
+.else
+QTNAME= "qt2"
+PTHREAD_CFLAGS= ""
+PTHREAD_LIBS= ""
+.endif
+.endif
+
CONFIGURE_ARGS+=--with-qt-includes=${X11BASE}/include/qt2 \
--with-qt-libraries=${X11BASE}/lib \
--with-extra-libs=${LOCALBASE}/lib \
--without-audiofile
-CONFIGURE_ENV+= LIBQT="-lqt2" MOC="${MOC}" LIBQTFILE="libqt2" \
- CPPFLAGS="-I${LOCALBASE}/include -D_GETOPT_H" \
- LIBS="-Wl,-export-dynamic -L${LOCALBASE}/lib -ljpeg -lstdc++ -lgcc"
+CONFIGURE_ENV+= LIBQT="-l${QTNAME}" MOC="${MOC}" LIBQTFILE="lib${QTNAME}" \
+ CPPFLAGS="-I${LOCALBASE}/include -D_GETOPT_H ${PTHREAD_CFLAGS}" \
+ LIBS="-Wl,-export-dynamic -L${LOCALBASE}/lib -ljpeg -lstdc++ -lgcc ${PTHREAD_LIBS}"
USE_GMAKE= yes
pre-configure:
@@ -36,4 +59,4 @@ pre-configure:
s@odbc libaps@odbc@g" ${WRKSRC}/configure
${PERL} -pi -e "s@-version-info 1:1@-version-info 3:0@g" ${WRKSRC}/mimelib/Makefile.in
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>