update Thu Oct 1 06:37:00 PDT 2009
[pkgsrc.git] / x11 / qt3-libs / Makefile.common
1 # $NetBSD: Makefile.common,v 1.71 2009/07/11 09:11:13 rillig Exp $
2 # used by x11/qt3-docs/Makefile
3
4 DISTNAME=       qt-x11-free-${QTVERSION}
5 CATEGORIES=     x11
6 MASTER_SITES=   ftp://ftp.trolltech.com/qt/source/ \
7                 ftp://ftp.bero.org/pub/qt/source/ \
8                 http://ftp.silug.org/mirrors/ftp.trolltech.com/qt/source/
9 EXTRACT_SUFX=   .tar.bz2
10
11 .include "../../x11/qt3/Makefile.common"
12
13 DISTINFO_FILE=          ${.CURDIR}/../../x11/qt3-libs/distinfo
14 FILESDIR=               ${.CURDIR}/../../x11/qt3-libs/files
15 PATCHDIR=               ${.CURDIR}/../../x11/qt3-libs/patches
16
17 HAS_CONFIGURE=          yes
18 USE_TOOLS+=             gmake
19 USE_LANGUAGES=          c c++
20 USE_LIBTOOL=            yes
21
22 QTPREFIX=               ${PREFIX}/qt3
23
24 CONFIGURE_ARGS+=        -prefix ${QTPREFIX}
25 CONFIGURE_ARGS+=        -shared -sm -thread \
26                         -system-zlib -system-libpng \
27                         -system-libmng -system-libjpeg \
28                         ${CFLAGS:M-I*} ${LDFLAGS:M-L*} ${LDFLAGS:M-Wl*:S/-Wl,//:S/-dylib_file//:C/.*\.dylib\:.*\.dylib//}
29 CONFIGURE_ARGS+=        -qt-gif # qt3 does not write compressed GIFs
30
31 CONFIGURE_ARGS+=        < ${FILESDIR}/license-acceptance
32
33 LIBQT?=                 -lqt-mt
34
35 MAKE_ENV+=              QTPREFIX=${QTPREFIX:Q}
36 MAKE_ENV+=              QTDIR=${WRKSRC:Q}
37
38 # avoid creating a .qt directory in the users home
39 # directory
40 SCRIPTS_ENV+=           HOME="${WRKDIR}"
41
42 .include "../../mk/compiler.mk"
43
44 .if !empty(CC_VERSION:Mgcc*)
45 CONFIGURE_ARGS+=        -no-g++-exceptions
46 .endif
47
48 .if ${OPSYS} == "SunOS"
49 .  if !empty(CC_VERSION:Mgcc*)
50 CONFIGURE_ARGS+=        -platform solaris-g++
51 .  else
52 CONFIGURE_ARGS+=        -platform solaris-cc
53 .  endif
54 SYS_LIBS=               -lresolv -lsocket -lnsl -lrt
55 .elif ${OPSYS} == "HPUX"
56 .  if !empty(CC_VERSION:Mgcc*)
57 CONFIGURE_ARGS+=        -platform hpux-g++
58 .  else
59 CONFIGURE_ARGS+=        -platform hpux-acc
60 .  endif
61 .elif ${OPSYS} == "Interix"
62 CONFIGURE_ARGS+=        -platform interix-g++
63 CFLAGS+=                -I/usr/local/include/bind
64 LDFLAGS+=               -L/usr/local/lib/bind -lbind
65 BUILDLINK_PASSTHRU_DIRS+=/usr/local/include/bind /usr/local/lib/bind
66 SYS_LIBS=               -lbind -ldb -ldl
67 .elif ${OPSYS} == "DragonFly"
68 CONFIGURE_ARGS+=        -platform freebsd-g++
69 .elif ${OPSYS} == "Darwin"
70 QMAKE_RANLIB=           ${RANLIB}
71 .  if exists(/usr/lib/libresolv.dylib)
72 LDFLAGS+=               -lresolv
73 .  endif
74 .endif
75
76 CONFIGURE_ARGS+=        -verbose
77
78 QMAKE_RANLIB?=          ${TRUE}
79
80 .if ${X11_TYPE} != "native"
81 .include "../../x11/libXinerama/buildlink3.mk"
82 .elif !exists(${X11BASE}/lib/libXinerama.so) && \
83         !exists(${X11BASE}/lib/libXinerama.dylib)
84 CONFIGURE_ARGS+=        -no-xinerama
85 .endif
86
87 PKG_OPTIONS_VAR=        PKG_OPTIONS.qt3
88 PKG_SUPPORTED_OPTIONS=  cups debug
89 PKG_SUPPORTED_OPTIONS+= inet6
90
91 .include "../../mk/bsd.options.mk"
92
93 .if !empty(PKG_OPTIONS:Minet6)
94 CONFIGURE_ARGS+=        -ipv6
95 .else
96 CONFIGURE_ARGS+=        -no-ipv6
97 .endif
98
99 .if !empty(PKG_OPTIONS:Mcups)
100 .  include "../../print/cups/buildlink3.mk"
101 CONFIGURE_ARGS+=        -cups
102 .else
103 CONFIGURE_ARGS+=        -no-cups
104 .endif
105
106 .if !empty(PKG_OPTIONS:Mdebug)
107 CC+=                    -ggdb
108 CXX+=                   -ggdb
109 CONFIGURE_ARGS+=        --debug
110 INSTALL_UNSTRIPPED=     yes
111 .endif
112
113
114 #
115 # Reverse the change to how templates are handled made between 3.0.4
116 # and 3.0.5 for older toolchains. Removing inline for newer toolchains
117 # produces smaller code. Removing inline for older toolchains prod-
118 # uces buggy code.
119 #
120
121 .if !empty(CC_VERSION:Mgcc-2.8*)
122 CXXFLAGS+=              -DQ_INLINE_TEMPLATES=inline
123 .endif
124
125 pre-configure:
126         ${SED} \
127                 -e 's:@LOCALBASE@:${LOCALBASE}:g' \
128                 -e 's:@X11BASE@:${X11BASE}:g' \
129                 -e 's:@X11PREFIX@:${X11PREFIX}:g' \
130                 -e 's:@LIBTOOL@:${LIBTOOL}:g' \
131                 -e 's:@CC@:${CC}:g' \
132                 -e 's:@CXX@:${CXX}:g' \
133                 -e 's:@LDFLAGS@:${LDFLAGS:S/:/\\:/g}:g' \
134                 -e 's:@CFLAGS@:${CFLAGS}:g' \
135                 -e 's:@CXXFLAGS@:${CXXFLAGS}:g' \
136                 -e 's:@SYS_LIBS@:${SYS_LIBS}:g' \
137                 -e 's:@LEX@:${LEX}:g' \
138                 -e 's:@YACC@:${TOOLS_CMDLINE_YACC}:g' \
139                 -e 's:@AR@:${AR}:g' \
140                 -e 's:@MKDIR@:${MKDIR}:g' \
141                 -e 's:@LIBQT@:${LIBQT}:g' \
142                 -e 's:@PTHREAD_LDFLAGS@:${PTHREAD_LDFLAGS}:g' \
143                 -e 's:@PTHREAD_LIBS@:${PTHREAD_LIBS}:g' \
144                 -e 's:@COMPILER_RPATH_FLAG@:${COMPILER_RPATH_FLAG}:g' \
145                 -e 's:@QMAKE_RANLIB@:${QMAKE_RANLIB}:g' \
146                 ${FILESDIR}/qmake.conf > ${WRKSRC}/qmake.conf
147         for dir in ${WRKSRC}/mkspecs/*; do \
148                 ${CP} ${WRKSRC}/qmake.conf $${dir}; \
149                 ${RM} -f $${dir}/*.orig; \
150         done