# New ports collection makefile for: OpenOffice.org # Date created: 28 February 2002 # Whom: Martin Blapp # # $FreeBSD$ # PORTNAME= openoffice PORTVERSION= 1.1.4.${SNAPDATE} PORTREVISION= 1 CATEGORIES+= editors MASTER_SITES+= ${MASTER_SITE_LOCAL} \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ http://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla1.0/src/:moz \ ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,misc/openoffice/contrib/helpcontent/&,}:help \ ftp://ftp.kddlabs.co.jp/office/openoffice/contrib/helpcontent/:help \ ftp://sunsite.cnlab-switch.ch/mirror/OpenOffice/contrib/helpcontent/:help \ http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/helpcontent/:help MASTER_SITE_SUBDIR= maho/openoffice.org DISTFILES+= OOo_${PORTVERSION}_source.tar.bz2 gpc231.tar.Z:gpc EXTRACT_ONLY= OOo_${PORTVERSION}_source.tar.bz2 MAINTAINER= openoffice@FreeBSD.org SNAPDATE= 20041101 NO_LATEST_LINK= yes USE_GNOME= gtk20 MOZILLA_PROJECT= cws_srx645_mozooo.20040203.tar.gz MOZILLA_SOURCE= mozilla-source-1.0.tar.gz .if !defined(WITHOUT_MOZILLA) DISTFILES+= ${MOZILLA_PROJECT} ${MOZILLA_SOURCE}:moz USE_GNOME+= orbit gtk12 .endif USE_PERL5= yes USE_BISON= yes USE_GMAKE= yes USE_REINPLACE= yes USE_BZIP2= yes .if !defined(WITHOUT_JAVA) USE_JAVA= yes JAVA_VERSION= 1.4+ JAVA_BUILD= jdk .endif .include .include <${FILESDIR}/Makefile.localized> LANG_EXT?= 01 LANG_CONFIGURE_ARG?= ENUS .if defined(L10NHELP) DISTFILES+= ${L10NHELP}:help .endif .if defined(ALL_LOCALIZED_LANGS) DISTFILES+= helpcontent_31_unix.tgz:help helpcontent_33_unix.tgz:help \ helpcontent_34_unix.tgz:help helpcontent_39_unix.tgz:help \ helpcontent_46_unix.tgz:help helpcontent_49_unix.tgz:help \ helpcontent_55_unix.tgz:help \ helpcontent_81_unix.tgz:help helpcontent_82_unix.tgz:help \ helpcontent_86_unix.tgz:help helpcontent_88_unix.tgz:help \ helpcontent_90_unix.tgz:help L10NHELPS= helpcontent_31_unix.tgz helpcontent_33_unix.tgz \ helpcontent_34_unix.tgz helpcontent_39_unix.tgz \ helpcontent_46_unix.tgz helpcontent_49_unix.tgz \ helpcontent_55_unix.tgz \ helpcontent_81_unix.tgz helpcontent_82_unix.tgz \ helpcontent_86_unix.tgz helpcontent_88_unix.tgz \ helpcontent_90_unix.tgz .endif COMMENT?= Integrated wordprocessor/dbase/spreadheet/drawing/chart/browser BUILD_NR= 645 RELEASE_NR= 1.1.4 INSTALLATION_BASEDIR= OpenOffice.org${RELEASE_NR} DIST_SUBDIR= openoffice1.1 SIMPLEOSVER!= ${UNAME} -r | ${SED} -e 's/\.//g' | ${SED} -e 's/-.*//' # FIXME (Somehow INDEX build fails) .if defined(LANG_PKGNAME) PKGNAMEPREFIX= ${LANG_PKGNAME}- .endif .if defined(LANG_SUFFIX) PKGNAMESUFFIX?= -${LANG_SUFFIX} .endif BUILD_DEPENDS+= gcc32:${PORTSDIR}/lang/gcc32 # FIXME (correctly add ccache before gcc and g++) .if defined(WITH_CCACHE) BUILD_DEPENDS+= ccache:${PORTSDIR}/devel/ccache CC= ccache gcc32 CXX= ccache g++32 .else CC= gcc32 CXX= g++32 .endif BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ gcp:${PORTSDIR}/sysutils/coreutils \ xmkmf:${X_IMAKE_PORT} \ ${X11BASE}/lib/libXft.so:${PORTSDIR}/x11-fonts/libXft .if !defined(DISPLAY) BUILD_DEPENDS+= Xvfb:${X_VFBSERVER_PORT} .endif LIB_DEPENDS= jpeg.9:${PORTSDIR}/graphics/jpeg \ png.5:${PORTSDIR}/graphics/png \ mng.1:${PORTSDIR}/graphics/libmng \ freetype.9:${PORTSDIR}/print/freetype2 .if defined(WITHOUT_JAVA) LIB_DEPENDS= xslt.2:${PORTSDIR}/textproc/libxslt .else BUILD_DEPENDS+= ${ANT}:${PORTSDIR}/devel/apache-ant .endif GNU_CONFIGURE= yes USE_AUTOCONF_VER= 259 WRKDIR= ${WRKDIRPREFIX}${.CURDIR}/work WRKSRC= ${WRKDIR}/OOo_${RELEASE_NR}_src CONFIGURE_WRKSRC= ${WRKDIR}/OOo_${RELEASE_NR}_src/config_office ANT?= ${LOCALBASE}/bin/ant TCSH?= /bin/tcsh ZIP?= ${PREFIX}/bin/zip UNZIP?= ${PREFIX}/bin/unzip BUILD= dmake .if !defined(DISPLAY) DISPLAYHACK=localhost:1001 .endif CONFIGURE_ENV= PTHREAD_CFLAGS=${PTHREAD_CFLAGS} \ PTHREAD_LIBS=${PTHREAD_LIBS} CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp .if defined(WITHOUT_JAVA) CONFIGURE_ARGS+= --disable-java .else CONFIGURE_ARGS+= --with-jdk-home="${JAVA_HOME}" .endif .if defined(WITHOUT_MOZILLA) CONFIGURE_ARGS+= --disable-mozilla .endif .if defined(ALL_LOCALIZED_LANGS) CONFIGURE_ARGS+= --with-lang=ALL .else CONFIGURE_ARGS+= --with-lang=${LANG_CONFIGURE_ARG} .endif .if defined(WITH_DEBUG) .if ${WITH_DEBUG} == 2 CONFIGURE_ARGS+= --enable-debug .else CONFIGURE_ARGS+= --enable-symbols .endif .endif pre-fetch: @${ECHO} "OPTIONS:" .if !defined(WITH_DEBUG) @${ECHO} @${ECHO} "You can compile OOo with debug symbols" @${ECHO} "if you call make with WITH_DEBUG=1" @${ECHO} @${ECHO} "If you set WITH_DEBUG=2, you add internal" @${ECHO} "OOo debug support." @${ECHO} .endif @${ECHO} @${ECHO} "NOTICE:" @${ECHO} @${ECHO} "To build Openoffice, you should have a lot" .if defined(WITH_DEBUG) @${ECHO} "of free diskspace (~ 8GB)." .else @${ECHO} "of free diskspace (~ 4GB)." .endif @${ECHO} "If you want SDK and/or solver, please type make sdk and/or make solver" pre-everything:: # really tweak, extremely useful when you build all localized language versions # needed after when you build with ALL_LOCALIZED_LANGS. .if defined(TWEAK_L10N) @${RM} -f ${WRKDIR}/.PLIST* @${RM} -f ${WRKDIR}/.install_done.* @${RM} -f ${WRKDIR}/.package_done.* @${RM} -f ${WRKDIR}/.extract_done.* @${RM} -f ${WRKDIR}/.patch_done.* @${RM} -f ${WRKDIR}/.configure_done.* @${RM} -f ${WRKDIR}/.build_done.* @${TOUCH} ${EXTRACT_COOKIE} @${TOUCH} ${PATCH_COOKIE} @${TOUCH} ${CONFIGURE_COOKIE} @${TOUCH} ${BUILD_COOKIE} .endif post-extract: @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz - @${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/ @${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/ .if defined(L10NHELP) @${ECHO_MSG} "===> Extracting L10NHELP sub project" @${MKDIR} ${WRKDIR}/L10NHELP @cd ${WRKDIR}/L10NHELP ; \ ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${L10NHELP} | ${GZIP_CMD} -d | ${TAR} xf - .endif .if defined(ALL_LOCALIZED_LANGS) @${ECHO_MSG} "===> Extracting All available L10NHELPs" @${MKDIR} ${WRKDIR}/L10NHELP @cd ${WRKDIR}/L10NHELP ; \ for file in ${L10NHELPS}; do \ ${CAT} ${DISTDIR}/${DIST_SUBDIR}/$$file | ${GZIP_CMD} -d | ${TAR} xf - ; \ done .endif .if !defined(WITHOUT_MOZILLA) @cd ${WRKSRC} ; ${MV} moz moz.old ; ${TAR} xfz ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_PROJECT} ; ${PATCH} < ${FILESDIR}/moz-patch @${MKDIR} ${WRKSRC}/moz/download @${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download @cd ${WRKSRC} ; ${MV} moz moz.runtime ; ${MV} moz.old moz .endif post-patch: @${REINPLACE_CMD} -e 's+%%PTHREAD_LIBS%%+${PTHREAD_LIBS}+g;' ${WRKSRC}/odk/settings/settings.mk @${REINPLACE_CMD} -e 's+%%PTHREAD_CFLAGS%%+${PTHREAD_CFLAGS}+g' ${WRKSRC}/odk/settings/settings.mk do-build: @cd ${WRKSRC} ; ./bootstrap .if !defined(WITHOUT_MOZILLA) @cd ${WRKSRC}/moz.runtime ; ${SETENV} "BUILD_MOZAB=TRUE" ${TCSH} -c 'source ../FreeBSDEnv.Set ; build.pl ; dmake zip' ; cp unxfbsd.pro/zipped/FREEBSD*.zip ../moz/zipped .endif .if defined(L10NHELP) || defined(ALL_LOCALIZED_LANGS) @${MKDIR} ${WRKSRC}/solver/${BUILD_NR}/unxfbsd.pro/pck @${CP} ${WRKDIR}/L10NHELP/*.zip ${WRKSRC}/solver/${BUILD_NR}/unxfbsd.pro/pck .endif .if !defined(DISPLAY) # # This is a UGLY hack to not have to specify a X-Display. # ${X11BASE}/bin/Xvfb :1001 -screen 0 800x600x24 > /dev/null 2>&1 & ${ECHO} $$! > ${WRKDIR}/.Xvfb.pid @sleep 5 @cd ${WRKSRC} ; DISPLAY=${DISPLAYHACK} ; ${TCSH} -c 'source FreeBSDEnv.Set ; ${BUILD}' @-${CAT} ${WRKDIR}/.Xvfb.pid | ${XARGS} kill @${RM} -f ${WRKDIR}/.Xvfb.pid .else @cd ${WRKSRC} ; DISPLAY=${DISPLAY} ; ${TCSH} -c 'source FreeBSDEnv.Set ; ${BUILD}' .endif do-install: @cd ${WRKSRC}/instsetoo/*.pro/${LANG_EXT}/normal/ ; TEMP=${WRKDIR} DISPLAY=${DISPLAY} ./install --prefix=${PREFIX} install-user: @${PREFIX}/${INSTALLATION_BASEDIR}/program/setup post-install: @${ECHO_MSG} "===> Add wrapper scripts"; @${CP} ${FILESDIR}/openoffice-wrapper ${WRKDIR}/ @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%LANG%%#${USE_LANG}#g' \ -e 's#%%BUILD_NR%%#${BUILD_NR}#g' \ -e 's#%%RELEASE_NR%%#${RELEASE_NR}#g' \ ${WRKDIR}/openoffice-wrapper @${INSTALL_SCRIPT} ${WRKDIR}/openoffice-wrapper \ ${PREFIX}/bin/openoffice-${RELEASE_NR} @${LN} -fs ${PREFIX}/bin/openoffice-${RELEASE_NR} ${PREFIX}/bin/openoffice-${RELEASE_NR}-sagenda @${LN} -fs ${PREFIX}/bin/openoffice-${RELEASE_NR} ${PREFIX}/bin/openoffice-${RELEASE_NR}-scalc @${LN} -fs ${PREFIX}/bin/openoffice-${RELEASE_NR} ${PREFIX}/bin/openoffice-${RELEASE_NR}-sdraw @${LN} -fs ${PREFIX}/bin/openoffice-${RELEASE_NR} ${PREFIX}/bin/openoffice-${RELEASE_NR}-setup @${LN} -fs ${PREFIX}/bin/openoffice-${RELEASE_NR} ${PREFIX}/bin/openoffice-${RELEASE_NR}-sfax @${LN} -fs ${PREFIX}/bin/openoffice-${RELEASE_NR} ${PREFIX}/bin/openoffice-${RELEASE_NR}-smath @${LN} -fs ${PREFIX}/bin/openoffice-${RELEASE_NR} ${PREFIX}/bin/openoffice-${RELEASE_NR}-simpress @${LN} -fs ${PREFIX}/bin/openoffice-${RELEASE_NR} ${PREFIX}/bin/openoffice-${RELEASE_NR}-spadmin @${LN} -fs ${PREFIX}/bin/openoffice-${RELEASE_NR} ${PREFIX}/bin/openoffice-${RELEASE_NR}-sweb @${LN} -fs ${PREFIX}/bin/openoffice-${RELEASE_NR} ${PREFIX}/bin/openoffice-${RELEASE_NR}-swriter @cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} openoffice-${RELEASE_NR} > ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} openoffice-${RELEASE_NR} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type f >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type l >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type d > ${WRKDIR}/dir.tmp @${SORT} -r ${WRKDIR}/dir.tmp | ${XARGS} -n 1 ${ECHO_CMD} @dirrm >> ${TMPPLIST} package-rename: @${ECHO_MSG} "===> Rename package for OOo mirror upload"; .if defined(LANG_SUFFIX) @${MV} ${PKGFILE} \ ${WRKDIR}/../OOo_${PORTVERSION}_${OPSYS}${SIMPLEOSVER}Intel_install_${LANG_PKGNAME}-${LANG_SUFFIX}${PKG_SUFX} .elif defined(LANG_PKGNAME) @${MV} ${PKGFILE} \ ${WRKDIR}/../OOo_${PORTVERSION}_${OPSYS}${SIMPLEOSVER}Intel_install_${LANG_PKGNAME}${PKG_SUFX} .else @${MV} ${PKGFILE} \ ${WRKDIR}/../OOo_${PORTVERSION}_${OPSYS}${SIMPLEOSVER}Intel_install${PKG_SUFX} .endif sdk: @${ECHO_MSG} "===> Make SDK of OOo" @cd ${WRKSRC} ; DISPLAY=${DISPLAY} PATH="${PATH}:${LOCALBASE}/bin:${LOCALBASE}/sbin" ; \ ${TCSH} -c 'source FreeBSDEnv.Set ; unsetenv TOP ; cd sdk_oo ; build.pl ; deliver.pl' @${MV} ${WRKSRC}/solver/${BUILD_NR}/unxfbsd.pro/bin/OpenOffice.org${RELEASE_NR}_SDK.tar.gz ${WRKDIR}/../OOo_${PORTVERSION}_${OPSYS}${SIMPLEOSVER}Intel_sdk.tar.gz solver: @${ECHO_MSG} "===> Make Solver of OOo" @cd ${WRKSRC} ; ${TAR} cfz ${WRKDIR}/../OOo_${PORTVERSION}_${OPSYS}${SIMPLEOSVER}Intel_solver.tar.gz solver .include