update Sun Jun 13 18:37:00 PDT 2010
[pkgsrc.git] / misc / openoffice2 / Makefile
1 # $NetBSD: Makefile,v 1.79 2010/06/13 22:45:02 wiz Exp $
2 #
3
4 OO_VER=                 2.4.3
5 DISTNAME=               openoffice-${OO_VER}
6 PKGNAME=                openoffice2-${OO_VER}
7 PKGREVISION=            5
8 CATEGORIES=             misc
9 MASTER_SITES=           ${MASTER_SITE_OPENOFFICE:=stable/${OO_VER}/}
10 DIST_SUBDIR=            ${DISTNAME}
11
12 DISTFILES=              OOo_${OO_VER}_src_core.tar.bz2
13 DISTFILES+=             OOo_${OO_VER}_src_binfilter.tar.bz2
14 DISTFILES+=             OOo_${OO_VER}_src_l10n.tar.bz2
15 #DISTFILES+=            OOo_${OO_VER}_src_sdk.tar.bz2
16 DISTFILES+=             OOo_${OO_VER}_src_system.tar.bz2
17
18 MAINTAINER=             hira@NetBSD.org
19 HOMEPAGE=               http://www.openoffice.org/
20 COMMENT=                Integrated office productivity suite (version 2)
21
22 PKG_DESTDIR_SUPPORT=    user-destdir
23
24 BUILD_DEPENDS+=         bison-[0-9]*:../../devel/bison
25 BUILD_DEPENDS+=         zip-[0-9]*:../../archivers/zip
26 BUILD_DEPENDS+=         unzip-[0-9]*:../../archivers/unzip
27 BUILD_DEPENDS+=         p5-Archive-Zip-[0-9]*:../../archivers/p5-Archive-Zip
28
29 DEPENDS+=               libpaper-[0-9]*:../../print/libpaper
30
31 .include "../../mk/bsd.prefs.mk"
32
33 WRKSRC=                 ${WRKDIR}/OOH680_m21
34 CONFIGURE_DIRS=         config_office
35
36 # Cannot compile with 3.3.x (GCC Bugzilla Bug 16879).
37 GCC_REQD+=              3.4
38 USE_LANGUAGES+=         c c++
39
40 USE_TOOLS+=             bash gmake imake perl pkg-config tar
41 PTHREAD_OPTS+=          require
42 PTHREAD_AUTO_VARS=      yes
43
44 CONFLICTS+=             staroffice-[0-9]*
45 CONFLICTS+=             openoffice-[0-9]*
46 CONFLICTS+=             openoffice3-[0-9]*
47 CONFLICTS+=             openoffice-bin-[0-9]*
48 CONFLICTS+=             openoffice2-bin-[0-9]*
49 CONFLICTS+=             openoffice3-bin-[0-9]*
50 CONFLICTS+=             openoffice-linux-[0-9]*
51
52 ONLY_FOR_PLATFORM=      FreeBSD-*-i386 FreeBSD-*-x86_64
53 ONLY_FOR_PLATFORM+=     NetBSD-1.6Z[G-Z]*-i386 NetBSD-[2-9]*-i386
54 ONLY_FOR_PLATFORM+=     NetBSD-1.6Z[G-Z]*-x86_64 NetBSD-[2-9]*-x86_64
55
56 GNU_CONFIGURE=          yes
57
58 REPLACE_PERL+=          sd/res/webview/editpic.pl       \
59                         sd/res/webview/poll.pl          \
60                         sd/res/webview/savepic.pl       \
61                         sd/res/webview/show.pl          \
62                         sd/res/webview/webview.pl
63 REPLACE_PYTHON+=        scripting/source/pyprov/mailmerge.py
64
65 SUBST_CLASSES+=         prefix
66 SUBST_STAGE.prefix=     post-patch
67 SUBST_MESSAGE.prefix=   Fixing prefix
68 SUBST_FILES.prefix=     sysui/desktop/share/openoffice.sh
69 SUBST_FILES.prefix+=    sysui/desktop/share/printeradmin.sh
70 SUBST_SED.prefix=       -e 's|@OO_PREFIX@|${OO_PREFIX}|g'
71
72 SUBST_CLASSES+=         lib
73 SUBST_STAGE.lib=        post-patch
74 SUBST_MESSAGE.lib=      Adding library paths
75 SUBST_FILES.lib=        solenv/inc/pkgsrc.mk
76 SUBST_SED.lib+=         -e 's|@COMPILER_RPATH_FLAG@|${COMPILER_RPATH_FLAG}|g'
77 SUBST_SED.lib+=         -e 's|@OO_LIBDIR@|${OO_PREFIX}/program|g'
78 .for pkg in db4 expat icu jpeg zlib
79 LIB.${pkg}=             -L${BUILDLINK_PREFIX.${pkg}}/lib
80 LIB.${pkg}+=            ${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.${pkg}}/lib
81 SUBST_SED.lib+=         -e 's|@LIB_${pkg}@|${LIB.${pkg}}|g'
82 LIBS+=                  ${LIB.${pkg}}
83 .endfor
84
85 CONFIGURE_ENV+=         LIBS=${LIBS:O:u:Q}
86 CONFIGURE_ENV+=         X_LIBS=${X11_LDFLAGS:M*:Q}
87 CONFIGURE_ENV+=         BLNK_PREFIX_db4=${BUILDLINK_PREFIX.db4}
88 CONFIGURE_ENV+=         BLNK_PREFIX_nas=${BUILDLINK_PREFIX.nas}
89 CONFIGURE_ENV+=         ac_cv_path_SYSTEM_GENBRK=${PREFIX}/bin/genbrk
90 CONFIGURE_ENV+=         ac_cv_path_SYSTEM_GENCCODE=${PREFIX}/sbin/genccode
91 CONFIGURE_ENV+=         ac_cv_path_SYSTEM_GENCMN=${PREFIX}/sbin/gencmn
92
93 CONFIGURE_ARGS+=        --with-use-shell=bash
94 CONFIGURE_ARGS+=        --enable-binfilter
95 CONFIGURE_ARGS+=        --enable-cairo
96 CONFIGURE_ARGS+=        --disable-ldap
97 CONFIGURE_ARGS+=        --disable-vba
98 CONFIGURE_ARGS+=        --with-system-stdlibs
99 CONFIGURE_ARGS+=        --with-system-curl
100 CONFIGURE_ARGS+=        --with-system-db
101 CONFIGURE_ARGS+=        --with-system-expat
102 CONFIGURE_ARGS+=        --with-system-freetype
103 CONFIGURE_ARGS+=        --with-system-icu
104 CONFIGURE_ARGS+=        --with-system-jpeg
105 CONFIGURE_ARGS+=        --with-system-libxml2
106 CONFIGURE_ARGS+=        --with-system-libxslt
107 CONFIGURE_ARGS+=        --with-system-python
108 CONFIGURE_ARGS+=        --with-system-zlib
109 CONFIGURE_ARGS+=        --with-dynamic-xinerama
110
111 # `portable' supports all platforms.
112 CONFIGURE_ARGS+=        --enable-epm --with-package-format=portable
113
114 # XXX: Error in OOo internal libsndfile.
115 CONFIGURE_ARGS+=        --disable-pasf
116
117 # Disable Java.
118 CONFIGURE_ARGS+=        --without-java --disable-odk --disable-gcjaot
119
120 # NOTE: In this version, this value should be separated by space (comma
121 #       causes build error).
122 CONFIGURE_ARGS+=        --with-lang=${OO_LANGS:Q}
123
124 .include "options.mk"
125
126 UNLIMIT_RESOURCES+=     datasize
127
128 OO_RELEASE=             OpenOffice.org${OO_VER}
129 PLIST_SRC=              ${PKGDIR}/PLIST
130 PLIST_SRC+=             ${WRKDIR}/PLIST
131 PLIST_SUBST+=           OO_UNXNAME=${OO_UNXNAME}
132 PLIST_SUBST+=           OO_ICON_PREFIX=openofficeorg24
133 MESSAGE_SUBST+=         OO_PREFIX=${OO_PREFIX}
134 INSTALLATION_DIRS=      bin lib/${OO_RELEASE} share/applications \
135                         share/application-registry share/mime-info \
136                         share/packages share/mime/packages
137
138 OO_UNXNAME=     openoffice.org2.4
139 OO_PKGPATH=     ${WRKSRC}/instsetoo_native/${OPENOFFICE_OUTPATH}.pro/OpenOffice/portable/install
140 OO_LANGPACKPATH=${WRKSRC}/instsetoo_native/${OPENOFFICE_OUTPATH}.pro/OpenOffice_languagepack/portable/install
141 OO_PROGRAMS=    scalc sdraw simpress soffice swriter unopkg
142 OO_PREFIX=      ${PREFIX}/lib/${OO_RELEASE}
143
144 post-extract:
145         cd ${WRKSRC}/bridges/source/cpp_uno &&                  \
146         mv gcc3_netbsd_intel gcc3_netbsd_intel.orig &&          \
147         cp -Rp gcc3_freebsd_intel gcc3_netbsd_intel &&          \
148         cp -Rp gcc3_freebsd_x86-64 gcc3_netbsd_x86-64
149
150 do-build:
151         ${_ULIMIT_CMD} ${SETENV} ${MAKE_ENV} bash -c "cd ${WRKSRC} && ./bootstrap && source ${OPENOFFICE_SETFILE}Env.Set.sh && cd instsetoo_native && build.pl --checkmodules && build.pl -P${MAKE_JOBS:U1} --all product=full && cd util && dmake openoffice_${OO_BASELANG} && dmake ooolanguagepack"
152
153 do-install:
154         cd ${DESTDIR}${OO_PREFIX} &&                            \
155         for f in ${OO_PKGPATH:Q}/${OO_BASELANG}/*/*.sw; do      \
156                 tar xpf $$f;                                    \
157         done;                                                   \
158         for lang in ${OO_LANGPACKS}; do                         \
159                 for f in ${OO_LANGPACKPATH:Q}/$$lang/*/*.sw; do \
160                         tar xpf $$f;                            \
161                 done;                                           \
162         done
163         cd ${DESTDIR}${OO_PREFIX}/program &&                    \
164         chmod ${SHAREMODE} hid.lst testtoolrc
165         for f in ${OO_PROGRAMS}; do                             \
166                 ln -sf ${DESTDIR}${OO_PREFIX}/program/$$f       \
167                         ${DESTDIR}${PREFIX}/bin/$$f;            \
168         done
169         cd ${WRKSRC}/sysui/${OPENOFFICE_OUTPATH}.pro/misc/openoffice.org && \
170         ${SETENV} ${MAKE_ENV} DESTDIR=${DESTDIR} _PREFIX=${PREFIX}      \
171                 GNOME=${PKG_OPTIONS:Mgnome} KDE=${PKG_OPTIONS:Mkde}     \
172                 OO_PREFIX=${OO_PREFIX} ${SH} create_tree.sh
173
174 post-install:
175         cd ${DESTDIR}${PREFIX} &&                               \
176         find lib/${OO_RELEASE} \! -type d -print |              \
177         sort > ${WRKDIR}/PLIST
178
179 # OS specific Makefile
180 .if exists(Makefile.${OPSYS})
181 .  include "Makefile.${OPSYS}"
182 .endif
183
184 .include "../../mk/compiler.mk"
185
186 .include "../../databases/db4/buildlink3.mk"
187 .include "../../databases/shared-mime-info/mimedb.mk"
188 .include "../../devel/zlib/buildlink3.mk"
189 .include "../../fonts/fontconfig/buildlink3.mk"
190 .include "../../graphics/MesaLib/buildlink3.mk"
191 .include "../../graphics/cairo/buildlink3.mk"
192 .include "../../graphics/freetype2/buildlink3.mk"
193 .include "../../graphics/hicolor-icon-theme/buildlink3.mk"
194 .include "../../graphics/jpeg/buildlink3.mk"
195 .include "../../lang/python/application.mk"
196 .include "../../textproc/expat/buildlink3.mk"
197 .include "../../textproc/icu/buildlink3.mk"
198 .include "../../textproc/libxml2/buildlink3.mk"
199 .include "../../textproc/libxslt/buildlink3.mk"
200 .include "../../www/curl/buildlink3.mk"
201 .include "../../x11/libX11/buildlink3.mk"
202 .include "../../x11/libXaw/buildlink3.mk"
203 .include "../../x11/libXcursor/buildlink3.mk"
204 .include "../../x11/libXext/buildlink3.mk"
205 .include "../../x11/libXfixes/buildlink3.mk"
206 .include "../../x11/libXi/buildlink3.mk"
207 .include "../../x11/libXinerama/buildlink3.mk"
208 .include "../../x11/libXrandr/buildlink3.mk"
209 .include "../../x11/libXrender/buildlink3.mk"
210 .include "../../x11/libXt/buildlink3.mk"
211 .include "../../mk/pthread.buildlink3.mk"
212 .include "../../mk/bsd.pkg.mk"