summaryrefslogtreecommitdiff
path: root/misc/openoffice3/Makefile
blob: e4dc416533402dc7e464a374efe707ec929e293a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
# $NetBSD: Makefile,v 1.7 2008/10/20 12:30:16 hira Exp $
#

OO_VER=			3.0.0
PKGREVISION=		2
OO_TAG=			OOO300_m9
DISTNAME=		openoffice-${OO_VER}
PKGNAME=		openoffice3-${OO_VER}
CATEGORIES=		misc
MASTER_SITES=		${MASTER_SITE_OPENOFFICE:=stable/${OO_VER}/}
DIST_SUBDIR=		${DISTNAME}

DISTFILES=		OOo_${OO_VER}_src_core.tar.bz2
DISTFILES+=		OOo_${OO_VER}_src_binfilter.tar.bz2
DISTFILES+=		OOo_${OO_VER}_src_l10n.tar.bz2
DISTFILES+=		OOo_${OO_VER}_src_system.tar.bz2
#DISTFILES+=		OOo_${OO_VER}_src_extensions.tar.bz2

MAINTAINER=		hira@NetBSD.org
HOMEPAGE=		http://www.openoffice.org/
COMMENT=		Integrated office productivity suite (version 3)

PKG_DESTDIR_SUPPORT=	user-destdir

BUILD_DEPENDS+=		bison-[0-9]*:../../devel/bison
BUILD_DEPENDS+=		zip-[0-9]*:../../archivers/zip
BUILD_DEPENDS+=		unzip-[0-9]*:../../archivers/unzip
BUILD_DEPENDS+=		p5-Archive-Zip-[0-9]*:../../archivers/p5-Archive-Zip

DEPENDS+=		libpaper-[0-9]*:../../print/libpaper

.include "../../mk/bsd.prefs.mk"

WRKSRC=			${WRKDIR}/${OO_TAG}
CONFIGURE_DIRS=		config_office

# Cannot compile with 3.3.x (GCC Bugzilla Bug 16879).
GCC_REQD+=		3.4
USE_LANGUAGES+=		c c++

CONFLICTS+=		staroffice-[0-9]*
CONFLICTS+=		openoffice-[0-9]*
CONFLICTS+=		openoffice2-[0-9]*
CONFLICTS+=		openoffice-bin-[0-9]*
CONFLICTS+=		openoffice2-bin-[0-9]*
CONFLICTS+=		openoffice-linux-[0-9]*

USE_DIRS+=		xdg-1.1
USE_TOOLS+=		bash gmake imake perl pkg-config tar
PTHREAD_OPTS+=		require
PTHREAD_AUTO_VARS=	yes

ONLY_FOR_PLATFORM=	FreeBSD-*-i386 FreeBSD-*-x86_64
ONLY_FOR_PLATFORM+=	NetBSD-1.6Z[G-Z]*-i386 NetBSD-[2-9]*-i386
ONLY_FOR_PLATFORM+=	NetBSD-1.6Z[G-Z]*-x86_64 NetBSD-[2-9]*-x86_64

GNU_CONFIGURE=		yes

REPLACE_PERL+=		sd/res/webview/editpic.pl	\
			sd/res/webview/poll.pl		\
			sd/res/webview/savepic.pl	\
			sd/res/webview/show.pl		\
			sd/res/webview/webview.pl
REPLACE_PYTHON+=	scripting/source/pyprov/mailmerge.py

SUBST_CLASSES+=		lib
SUBST_STAGE.lib=	post-patch
SUBST_MESSAGE.lib=	Adding library paths
SUBST_FILES.lib=	solenv/inc/pkgsrc.mk
SUBST_SED.lib+=		-e 's|@COMPILER_RPATH_FLAG@|${COMPILER_RPATH_FLAG}|g'
SUBST_SED.lib+=		-e 's|@OO_LIBDIR@|${OO_PREFIX}/${OO_UNXNAME}/basis-link/program|g'
.for pkg in db4 expat icu jpeg zlib
LIB.${pkg}=		-L${BUILDLINK_PREFIX.${pkg}}/lib
LIB.${pkg}+=		${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.${pkg}}/lib
SUBST_SED.lib+=		-e 's|@LIB_${pkg}@|${LIB.${pkg}}|g'
LIBS+=			${LIB.${pkg}}
.endfor

CONFIGURE_ENV+=		LIBS=${LIBS:O:u:Q}
CONFIGURE_ENV+=		X_LIBS=${X11_LDFLAGS:M*:Q}
CONFIGURE_ENV+=		BLNK_PREFIX_db4=${BUILDLINK_PREFIX.db4}

CONFIGURE_ARGS+=	--with-use-shell=bash
CONFIGURE_ARGS+=	--enable-binfilter
CONFIGURE_ARGS+=	--enable-cairo
CONFIGURE_ARGS+=	--disable-systray
CONFIGURE_ARGS+=	--disable-ldap
CONFIGURE_ARGS+=	--with-system-stdlibs
CONFIGURE_ARGS+=	--with-system-cairo
CONFIGURE_ARGS+=	--with-system-curl
CONFIGURE_ARGS+=	--with-system-db
CONFIGURE_ARGS+=	--with-system-expat
CONFIGURE_ARGS+=	--with-system-freetype
CONFIGURE_ARGS+=	--with-system-hunspell
CONFIGURE_ARGS+=	--with-system-icu
CONFIGURE_ARGS+=	--with-system-jpeg
CONFIGURE_ARGS+=	--with-system-libxml
CONFIGURE_ARGS+=	--with-system-libxslt
CONFIGURE_ARGS+=	--with-system-neon
CONFIGURE_ARGS+=	--with-system-openssl
CONFIGURE_ARGS+=	--with-system-python
CONFIGURE_ARGS+=	--with-system-zlib
CONFIGURE_ARGS+=	--with-dynamic-xinerama

# Extensions
#CONFIGURE_ARGS+=	--enable-minimizer
#CONFIGURE_ARGS+=	--enable-presenter-console
#CONFIGURE_ARGS+=	--enable-pdfimport
#CONFIGURE_ARGS+=	--enable-wiki-publisher
#CONFIGURE_ARGS+=	--enable-ogltrans
#CONFIGURE_ARGS+=	--enable-report-builder

# `portable' supports all platforms.
CONFIGURE_ARGS+=	--enable-epm --with-package-format=portable

# Disable odk, gcjaot.
CONFIGURE_ARGS+=	--disable-odk --disable-gcjaot

# NOTE: In this version, this value should be separated by space (comma
#       causes build error).
CONFIGURE_ARGS+=	--with-lang=${OO_LANGS:Q}

.include "options.mk"

UNLIMIT_RESOURCES+=	datasize

OO_RELEASE=		OpenOffice.org${OO_VER}
PLIST_SRC+=		${PKGDIR}/PLIST
PLIST_SRC+=		${WRKDIR}/PLIST
MESSAGE_SUBST+=		DESTDIR=${DESTDIR}
MESSAGE_SUBST+=		OO_PREFIX=${OO_PREFIX}
INSTALLATION_DIRS=	bin lib/${OO_RELEASE} share/applications

OO_UNXNAME=	openoffice.org3
OO_PKGPATH=	${WRKSRC}/instsetoo_native/${OPENOFFICE_OUTPATH}.pro/OpenOffice/portable/install
OO_PROGRAMS=	scalc sdraw simpress soffice swriter unopkg
OO_PREFIX=	${DESTDIR}${PREFIX}/lib/${OO_RELEASE}

post-extract:
	cd ${WRKSRC}/bridges/source/cpp_uno &&			\
	mv gcc3_netbsd_intel gcc3_netbsd_intel.orig &&		\
	cp -Rp gcc3_freebsd_intel gcc3_netbsd_intel &&		\
	cp -Rp gcc3_freebsd_x86-64 gcc3_netbsd_x86-64

do-build:
	${_ULIMIT_CMD} ${SETENV} ${MAKE_ENV} bash -c "cd ${WRKSRC} && ./bootstrap && source ${OPENOFFICE_SETFILE}Env.Set.sh && dmake build_all"

post-build:
	cd ${WRKDIR} &&						\
	rm -fr opt &&						\
	for l in ${OO_LANGS}; do				\
		for f in ${OO_PKGPATH:Q}/$${l}/*/*.sw; do	\
			tar xpfk $$f;				\
		done;						\
	done
	cd ${WRKDIR} &&						\
	rm -fr xdg &&						\
	mv opt/${OO_UNXNAME}/share/xdg .
	cd ${WRKDIR}/opt/openoffice.org &&			\
	chmod ${SHAREMODE} basis3.0/program/hid.lst		\
			   basis3.0/program/testtoolrc
	${ECHO} "#!${SH}" > ${WRKDIR}/${OO_UNXNAME}
	${ECHO} "exec ${OO_PREFIX}/${OO_UNXNAME}/program/soffice \"\$$@\"" \
		>> ${WRKDIR}/${OO_UNXNAME}
	${ECHO} "#!${SH}" > ${WRKDIR}/${OO_UNXNAME}-printeradmin
	${ECHO} "exec ${OO_PREFIX}/${OO_UNXNAME}/program/spadmin"	\
		>> ${WRKDIR}/${OO_UNXNAME}-printeradmin

do-install:
	cd ${WRKDIR}/opt &&						\
	tar cf - openoffice.org ${OO_UNXNAME} | tar Cxpf ${OO_PREFIX} -
	for f in ${OO_PROGRAMS}; do				\
		ln -sf ${OO_PREFIX}/${OO_UNXNAME}/program/$$f	\
			${DESTDIR}${PREFIX}/bin/$$f;		\
	done
	${INSTALL_DATA} ${WRKDIR}/xdg/* ${DESTDIR}${PREFIX}/share/applications
	${INSTALL_SCRIPT} ${WRKDIR}/${OO_UNXNAME} ${DESTDIR}${PREFIX}/bin
	${INSTALL_SCRIPT} ${WRKDIR}/${OO_UNXNAME}-printeradmin	\
		${DESTDIR}${PREFIX}/bin

post-install:
	cd ${DESTDIR}${PREFIX} &&				\
	find lib/${OO_RELEASE} \! -type d -print |		\
	sort > ${WRKDIR}/PLIST &&				\
	find lib/${OO_RELEASE} -type d -print | sort -r |	\
	awk '{print("@dirrm "$$1)}' >> ${WRKDIR}/PLIST
	${ECHO} bin/${OO_UNXNAME} >> ${WRKDIR}/PLIST
	${ECHO} bin/${OO_UNXNAME}-printeradmin >> ${WRKDIR}/PLIST

# OS specific Makefile
.if exists(Makefile.${OPSYS})
.  include "Makefile.${OPSYS}"
.endif

.include "../../mk/compiler.mk"

.include "../../lang/python/application.mk"

.include "../../databases/db4/buildlink3.mk"
.include "../../devel/gperf/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../fonts/fontconfig/buildlink3.mk"
.include "../../graphics/MesaLib/buildlink3.mk"
.include "../../graphics/cairo/buildlink3.mk"
.include "../../graphics/freetype2/buildlink3.mk"
.include "../../graphics/jpeg/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../textproc/expat/buildlink3.mk"
.include "../../textproc/hunspell/buildlink3.mk"
.include "../../textproc/icu/buildlink3.mk"
.include "../../textproc/libxml2/buildlink3.mk"
.include "../../textproc/libxslt/buildlink3.mk"
.include "../../www/curl/buildlink3.mk"
.include "../../www/neon/buildlink3.mk"
.include "../../x11/libX11/buildlink3.mk"
.include "../../x11/libXaw/buildlink3.mk"
.include "../../x11/libXcursor/buildlink3.mk"
.include "../../x11/libXext/buildlink3.mk"
.include "../../x11/libXfixes/buildlink3.mk"
.include "../../x11/libXi/buildlink3.mk"
.include "../../x11/libXinerama/buildlink3.mk"
.include "../../x11/libXrandr/buildlink3.mk"
.include "../../x11/libXrender/buildlink3.mk"
.include "../../x11/libXt/buildlink3.mk"
.include "../../mk/dlopen.buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"