pkgsrc/x11/qt3-libs/Makefile.common
2008-02-16 22:41:31 +00:00

149 lines
3.8 KiB
Makefile

# $NetBSD: Makefile.common,v 1.70 2008/02/16 22:41:31 tnn Exp $
DISTNAME= qt-x11-free-${QTVERSION}
CATEGORIES= x11
MASTER_SITES= ftp://ftp.trolltech.com/qt/source/ \
ftp://ftp.bero.org/pub/qt/source/ \
http://ftp.silug.org/mirrors/ftp.trolltech.com/qt/source/
EXTRACT_SUFX= .tar.bz2
.include "../../x11/qt3/Makefile.common"
DISTINFO_FILE= ${.CURDIR}/../../x11/qt3-libs/distinfo
FILESDIR= ${.CURDIR}/../../x11/qt3-libs/files
PATCHDIR= ${.CURDIR}/../../x11/qt3-libs/patches
HAS_CONFIGURE= yes
USE_TOOLS+= gmake
USE_LANGUAGES= c c++
USE_LIBTOOL= yes
QTPREFIX= ${PREFIX}/qt3
CONFIGURE_ARGS+= -prefix ${QTPREFIX}
CONFIGURE_ARGS+= -shared -sm -thread \
-system-zlib -system-libpng \
-system-libmng -system-libjpeg \
${CFLAGS:M-I*} ${LDFLAGS:M-L*} ${LDFLAGS:M-Wl*:S/-Wl,//:S/-dylib_file//:C/.*\.dylib\:.*\.dylib//}
CONFIGURE_ARGS+= -qt-gif # qt3 does not write compressed GIFs
CONFIGURE_ARGS+= < ${FILESDIR}/license-acceptance
LIBQT?= -lqt-mt
MAKE_ENV+= QTPREFIX=${QTPREFIX:Q}
MAKE_ENV+= QTDIR=${WRKSRC:Q}
# avoid creating a .qt directory in the users home
# directory
SCRIPTS_ENV+= HOME="${WRKDIR}"
.include "../../mk/compiler.mk"
.if !empty(CC_VERSION:Mgcc*)
CONFIGURE_ARGS+= -no-g++-exceptions
.endif
.if ${OPSYS} == "SunOS"
. if !empty(CC_VERSION:Mgcc*)
CONFIGURE_ARGS+= -platform solaris-g++
. else
CONFIGURE_ARGS+= -platform solaris-cc
. endif
SYS_LIBS= -lresolv -lsocket -lnsl -lrt
.elif ${OPSYS} == "HPUX"
. if !empty(CC_VERSION:Mgcc*)
CONFIGURE_ARGS+= -platform hpux-g++
. else
CONFIGURE_ARGS+= -platform hpux-acc
. endif
.elif ${OPSYS} == "Interix"
CONFIGURE_ARGS+= -platform interix-g++
CFLAGS+= -I/usr/local/include/bind
LDFLAGS+= -L/usr/local/lib/bind -lbind
BUILDLINK_PASSTHRU_DIRS+=/usr/local/include/bind /usr/local/lib/bind
SYS_LIBS= -lbind -ldb -ldl
.elif ${OPSYS} == "DragonFly"
CONFIGURE_ARGS+= -platform freebsd-g++
.elif ${OPSYS} == "Darwin"
QMAKE_RANLIB= ${RANLIB}
. if exists(/usr/lib/libresolv.dylib)
LDFLAGS+= -lresolv
. endif
.endif
CONFIGURE_ARGS+= -verbose
QMAKE_RANLIB?= ${TRUE}
.if ${X11_TYPE} != "native"
.include "../../x11/libXinerama/buildlink3.mk"
.elif !exists(${X11BASE}/lib/libXinerama.so) && \
!exists(${X11BASE}/lib/libXinerama.dylib)
CONFIGURE_ARGS+= -no-xinerama
.endif
PKG_OPTIONS_VAR= PKG_OPTIONS.qt3
PKG_SUPPORTED_OPTIONS= cups debug
PKG_SUPPORTED_OPTIONS+= inet6
.include "../../mk/bsd.options.mk"
.if !empty(PKG_OPTIONS:Minet6)
CONFIGURE_ARGS+= -ipv6
.else
CONFIGURE_ARGS+= -no-ipv6
.endif
.if !empty(PKG_OPTIONS:Mcups)
. include "../../print/cups/buildlink3.mk"
CONFIGURE_ARGS+= -cups
.else
CONFIGURE_ARGS+= -no-cups
.endif
.if !empty(PKG_OPTIONS:Mdebug)
CC+= -ggdb
CXX+= -ggdb
CONFIGURE_ARGS+= --debug
INSTALL_UNSTRIPPED= yes
.endif
#
# Reverse the change to how templates are handled made between 3.0.4
# and 3.0.5 for older toolchains. Removing inline for newer toolchains
# produces smaller code. Removing inline for older toolchains prod-
# uces buggy code.
#
.if !empty(CC_VERSION:Mgcc-2.8*)
CXXFLAGS+= -DQ_INLINE_TEMPLATES=inline
.endif
pre-configure:
${SED} \
-e 's:@LOCALBASE@:${LOCALBASE}:g' \
-e 's:@X11BASE@:${X11BASE}:g' \
-e 's:@X11PREFIX@:${X11PREFIX}:g' \
-e 's:@LIBTOOL@:${LIBTOOL}:g' \
-e 's:@CC@:${CC}:g' \
-e 's:@CXX@:${CXX}:g' \
-e 's:@LDFLAGS@:${LDFLAGS:S/:/\\:/g}:g' \
-e 's:@CFLAGS@:${CFLAGS}:g' \
-e 's:@CXXFLAGS@:${CXXFLAGS}:g' \
-e 's:@SYS_LIBS@:${SYS_LIBS}:g' \
-e 's:@LEX@:${LEX}:g' \
-e 's:@YACC@:${TOOLS_CMDLINE_YACC}:g' \
-e 's:@AR@:${AR}:g' \
-e 's:@MKDIR@:${MKDIR}:g' \
-e 's:@LIBQT@:${LIBQT}:g' \
-e 's:@PTHREAD_LDFLAGS@:${PTHREAD_LDFLAGS}:g' \
-e 's:@PTHREAD_LIBS@:${PTHREAD_LIBS}:g' \
-e 's:@COMPILER_RPATH_FLAG@:${COMPILER_RPATH_FLAG}:g' \
-e 's:@QMAKE_RANLIB@:${QMAKE_RANLIB}:g' \
${FILESDIR}/qmake.conf > ${WRKSRC}/qmake.conf
for dir in ${WRKSRC}/mkspecs/*; do \
${CP} ${WRKSRC}/qmake.conf $${dir}; \
${RM} -f $${dir}/*.orig; \
done