#!/bin/bash # # OpenOffice.org Build script for GNU/Linux on x86 and PPC, Solaris, # FreeBSD, MacOS X and Microsoft Windows 2003 Server # # Supported versions: OOA680_m1 and SRC680_m146 # # Czech Native-Lang team (http://cs.openoffice.org/) # # # (c) Pavel Janík , 2002 - 2005 # (c) Dan Ohnesorg , 2002 # (c) Josef Cacek , 2002 - 2004 # (c) Rudolf Cejka , 2004 # (c) Petr Vaníček , 2004 (Linux/PPC support) # # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # Echo commands to be executed set -x date # Additional functions are stored in separate file . build.functions # Set EXTRACT_GSI to yes to get all GSI extracted EXTRACT_GSI="no" # Set EXTRACT_PO to yes to convert all extracted GSI to PO files EXTRACT_PO="no" # Set EXTRACT_README to yes to get all README.html files generated EXTRACT_README="no" # Set BUILD_DEBUG_PACKAGES to yes to get debugging packages BUILD_DEBUG_PACKAGES="no" # Set DEVEL to yes to build developers' version DEVEL="yes" # Set OOO_DEBUG to yes to build OOo with debugging OOO_DEBUG="no" # # Describe the build system # [ `uname -s` = "Linux" ] && export OOO_BUILD_SYSTEM=Linux [ `uname -s` = "Linux" -a "`uname -m`" = "x86_64" ] && export OOO_BUILD_SYSTEM=LinuxAMD64 [ `uname -s` = "Linux" -a "`uname -m`" = "ppc" ] && export OOO_BUILD_SYSTEM=LinuxPPC [ `uname -s` = "FreeBSD" ] && export OOO_BUILD_SYSTEM=FreeBSD [ `uname -s` = "SunOS" ] && export OOO_BUILD_SYSTEM=Solaris [ `uname -s` = "Darwin" ] && export OOO_BUILD_SYSTEM=MacOSX [ `uname -s | grep CYGWIN` ] && export OOO_BUILD_SYSTEM=Windows # On AMD64, always build development branch [ ${OOO_BUILD_SYSTEM} = "LinuxAMD64" ] && DEVEL="yes" if [ $DEVEL = "yes" ] then VERSION=SRC680_m146 BUILD_IDENTIFICATION="Build-0" BUILD_NUMBER=680 # FIXME: Languages to fix: hr ns/nso? SUPPORTEDLANGUAGES="af ar bg bn br cs cy da de el en-GB en-US et fa fi fr ga hu it km lo lt lv mk nb ne nl nn nr sr-CS sh-YU sk sl st sv th tn ts xh zu" # Build-0 is for experimental purposes only [ "x${BUILD_IDENTIFICATION}" = "xBuild-0" ] && SUPPORTEDLANGUAGES="en-US cs" else VERSION=OOA680_m1 BUILD_IDENTIFICATION="Build-1" BUILD_NUMBER=680 # FIXME: Languages to fix: hr ns/nso? SUPPORTEDLANGUAGES="af ar bg bn br cs cy da de el en-GB en-US et fa fi fr ga hu it km lo lt lv mk nb ne nl nn nr sr-CS sh-YU sk sl st sv th tn ts xh zu" # Build-0 is for experimental purposes only [ "x${BUILD_IDENTIFICATION}" = "xBuild-0" ] && SUPPORTEDLANGUAGES="en-US cs" fi # Build en-US only for AMD64 [ ${OOO_BUILD_SYSTEM} = "LinuxAMD64" ] && SUPPORTEDLANGUAGES="en-US" BUILD_ID="${BUILD_IDENTIFICATION} (`LANG=C date`)" CCACHEVERSION=2.4 DPKGVERSION=1.10.27 ANTVERSION=1.6.2 #if [ ${DEVEL} = "no" ] #then # FIXME: for now, use old version TRANSLATEVERSION=0.8rc2test2 #else # TRANSLATEVERSION=0.8rc3.20051010 #fi export BASE_DIRECTORY=${PWD} export PATCHES=${BASE_DIRECTORY}/Patches export FILES=${BASE_DIRECTORY}/Files export SOURCES=${BASE_DIRECTORY}/Sources export BUILD=${BASE_DIRECTORY}/BuildDir export BUILD_OUTPUT_DIRECTORY=${BUILD}/${VERSION}/${BUILD_IDENTIFICATION} export PATH=${BUILD}/bin:${PATH} # # Add correct paths for GCC # # GCC in the standard path/location if [ ${OOO_BUILD_SYSTEM} = "LinuxPPC" -o ${OOO_BUILD_SYSTEM} = "MacOSX" ] then export OOO_GCC_PATH="/usr" export PATH=${OOO_GCC_PATH}/bin/:${PATH} export LD_LIBRARY_PATH=${OOO_GCC_PATH}/lib:${LD_LIBRARY_PATH} fi if [ ${OOO_BUILD_SYSTEM} = "LinuxAMD64" ] then # export OOO_GCC_PATH="/tmp/GCC341/" # Try with system gcc export OOO_GCC_PATH="/usr/" export PATH=${OOO_GCC_PATH}/bin/:${PATH} export LD_LIBRARY_PATH=${OOO_GCC_PATH}/lib64:${LD_LIBRARY_PATH} fi if [ ${OOO_BUILD_SYSTEM} = "Linux" ] then # Use GCC 3.4.1 export OOO_GCC_PATH="/disk2/OpenOffice.org/GCC341" # ... or default system gcc [ ! -d ${OOO_GCC_PATH} ] && OOO_GCC_PATH=/usr export PATH=${OOO_GCC_PATH}/bin/:${PATH} export LD_LIBRARY_PATH=${OOO_GCC_PATH}/lib:${LD_LIBRARY_PATH} GTKPREFIX=/disk2/OpenOffice.org/GTK # Add new pkg_config and library path export PKG_CONFIG_PATH=${GTKPREFIX}/lib/pkgconfig export LD_LIBRARY_PATH=${GTKPREFIX}/lib/:${LD_LIBRARY_PATH} fi if [ ${OOO_BUILD_SYSTEM} = "FreeBSD" ] then export OOO_GCC_PATH=~/GCC341 export PATH=${OOO_GCC_PATH}/bin/:${PATH} export LD_LIBRARY_PATH=${OOO_GCC_PATH}/lib:${LD_LIBRARY_PATH} fi if [ ${OOO_BUILD_SYSTEM} = "Windows" ] then # Use .NET 2003 compiler and to the right version of ConvertDSW and .NET Tools, NSIS export PATH="/cygdrive/c/PROGRA~1/CONVER~2:/cygdrive/c/PROGRA~1/MICROS~1.NET/Common7/Tools/Bin:/cygdrive/c/PROGRA~1/MICROS~1.NET/Common7/IDE:/cygdrive/c/PROGRA~1/MICROS~1.NET/Vc7/bin:/cygdrive/c/PROGRA~1/NSIS/:${PATH}" export DOTNET_PATH="/cygdrive/c/Program Files/Microsoft Visual Studio .NET 2003/SDK/v1.1" fi # # GNU tar, GNU patch and GNU cp # export TAR=`which tar` export PATCH=`which patch` export CP=`which cp` # Location of GNU utilities on Solaris if [ ${OOO_BUILD_SYSTEM} = "Solaris" ] then export TAR=/usr/local/bin/tar export PATCH=/usr/local/bin/patch # GNU patch can be installed as gpatch [ ! -x ${PATCH} ] && export PATCH=/usr/bin/gpatch export CP=/usr/local/bin/cp fi if [ ${OOO_BUILD_SYSTEM} = "FreeBSD" ] then export PATCH=/usr/local/bin/gpatch export CP=/usr/local/bin/gcp fi if [ ${OOO_BUILD_SYSTEM} = "MacOSX" ] then export CP=/sw/bin/cp [ ! -x ${CP} ] && { echo "Install GNU cp (fink install fileutils)" exit } fi # # Architecture specific settings # case ${OOO_BUILD_SYSTEM} in Linux) OOOUTPATH=unxlngi6 OOARCHENVIRONMENT=LinuxIntel JDKPATH=/usr/lib/SunJava2 ;; LinuxAMD64) OOOUTPATH=unxlngx6 OOARCHENVIRONMENT=LinuxAMD JDKPATH=/opt/java ;; LinuxPPC) OOOUTPATH=unxlngppc OOARCHENVIRONMENT=LinuxPPC JDKPATH=/opt/j2sdk1.3.1 ;; FreeBSD) OOOUTPATH=unxfbsd OOARCHENVIRONMENT=FreeBSD JDKPATH=/usr/local/jdk1.4.2 ;; Solaris) OOOUTPATH=unxsols4 OOARCHENVIRONMENT=SolarisSparc JDKPATH=/usr/java ;; Windows) OOOUTPATH=wntmsci10 OOARCHENVIRONMENT=Win32Intel JDKPATH=/cygdrive/c/j2sdk1.4.2_04 ;; MacOSX) OOOUTPATH=unxmacxp OOARCHENVIRONMENT=Macosx JDKPATH=/usr ;; *) echo "Operating system/CPU not supported yet. Please report this to Pavel Janík." exit ;; esac # # Prepare the build tree # rm -rf ${BUILD} mkdir -p ${BUILD} mkdir -p ${BUILD_OUTPUT_DIRECTORY} cd ${BUILD} # Prepare ccache [ ${OOO_BUILD_SYSTEM} = "Linux" -o ${OOO_BUILD_SYSTEM} = "LinuxAMD64" -o ${OOO_BUILD_SYSTEM} = "MacOSX" ] && PrepareCCache # Prepare dpkg for Debian packages [ ${OOO_BUILD_SYSTEM} = "Linux" -o ${OOO_BUILD_SYSTEM} = "LinuxAMD64" ] && PrepareDpkg # Prepare translate tools [ ${OOO_BUILD_SYSTEM} = "Linux" -o ${OOO_BUILD_SYSTEM} = "LinuxAMD64" ] && PrepareTranslate # Prepare Ant PrepareAnt UnpackSource cd ooo_${VERSION}_src # Additional files for different operating systems # FIXME: Issue #i27627#: Windows directory not needed now for devel tree? # Issue #iFIXME#: MacOS X need Windows system running! [ -d ${SOURCES}/${OOO_BUILD_SYSTEM} ] && cp -v -f -R ${SOURCES}/${OOO_BUILD_SYSTEM}/* . # Unpack external source files - GPC UnpackGPC # Copy Mozilla source to the final destination cp ${SOURCES}/mozilla-source-1.7.5.tar.gz moz/download ########################################################################### # # # Patches and fixes # # # ########################################################################### # # Linux/AMD64 specific fixes for development version # if [ ${OOO_BUILD_SYSTEM} = "LinuxAMD64" ] then # FIXME: workaround for qadevOOo build failure export ANT_OPTS="-Xmx512m" # Commented region # # Issue #i50482#: 64bit: crash while initializing fontconfig # # Fixed in gslpatches2 # ApplyCWSPatch psprint CWS-gslpatches2-psprint.diff # # Issue #i50483#: 64bit: Wrong getting of work area rectangle # # Fixed in gslpatches2 # ApplyCWSPatch vcl CWS-gslpatches2-vcl.diff # # FIXME: report, http://www.go-oo.org/patches/64bit/buildfix-64bit-fpicker.diff # ApplyPatch iFIXME-fpicker.diff # # FIXME: http://www.go-oo.org/patches/64bit/buildfix-64bit-setup_native.diff # ApplyPatch iFIXME-setup_native.diff # # FIXME: http://www.go-oo.org/patches/64bit/buildfix-64bit-dbaccess.diff # ApplyPatch iFIXME-dbaccess.diff # # FIXME: http://www.go-oo.org/patches/64bit/buildfix-64bit-svx.diff # ApplyPatch iFIXME-svx.diff # # FIXME: http://www.go-oo.org/patches/64bit/buildfix-64bit-forms.diff # ApplyPatch iFIXME-forms.diff # # Issue #i50733#: Python registration failed (AMD64) # # TEMP: not proper solution # ApplyPatch i50733-scp2-no-python.diff # # Issue #i50781#: 64bit: pointer vs. ULONG (Focus) # ApplyPatch iFIXME-vcl-Focus.diff # # Issue #i50781#: 64bit: pointer vs. ULONG (Focus) # ApplyPatch iFIXME-svtools-Focus.diff # # FIXME: http://www.go-oo.org/patches/64bit/fix-64bit-tools-svbt.diff # ApplyPatch fix-64bit-tools-svbt.diff -p0 fi # VERIFY: Set OOO_VENDOR in build environment # FIXME: Issue #i59514# (OOO_VENDOR and space in it) [ $DEVEL = "no" ] && export OOO_VENDOR="Pavel Janik (paveljanik@openoffice.org)" # # Generic fixes # # Issue #i55205#: Add Danish images to images list ApplyPatch i55205-Danish-images-list.diff # stlport for SunONE 11 ApplyCWS hr24 # Issue #i59476#: Allow SunONE Studio 11 (5.8) compiler ApplyPatch i59476-SunONE-5.8.diff # Development fixes if [ $DEVEL = "yes" ] then # Issue #i59477#: Strip missing while delivering... ApplyPatch i59477-strip.diff # # Experimental Universal Binaries support # if [ ${OOO_BUILD_SYSTEM} = "MacOSX" ] then # Add Universal Binaries flags to Mac OS X environmental file ApplyPatch UB-solenv.diff ApplyPatch UB-sal.diff ApplyPatch UB-sal-endian-macros.diff ApplyPatch UB-nas.diff ApplyPatch UB-portaudio.diff ApplyPatch UB-icu.diff ApplyPatch UB-stlport.diff fi # Issue #i58437#: remove obsolete string in Control.ulf ApplyCWS nativefixer21 # Issue #i52789#: build errors with annonymous enums and gcc 4.0.1 ApplyCWS dba202a # QA pj43 ApplyCWS pj43 # Issue #i57397#: Add Lao fonts ApplyPatch i57397-Lao-fonts.diff # Issue #i49044#: Add somehow forgotten patch... ApplyPatch i49044-MacOSX-stlport-gcc33.diff # Issue #i58068#: svdem/workbench and visibility # For 2.0.2 ApplyPatch i58068-64bit-svtools.diff # # 64bit issues # if [ ${OOO_BUILD_SYSTEM} = "LinuxAMD64" ] then # TEMP: this has to be completed... # Issue #i58385#: 64bit: basic: UserData is 32bit or 64bit? ApplyPatch iFIXME-64bit-basic.diff # FIXME: continue # FIXME: separate DXArr changes ApplyPatch iFIXME-64bit-binfilter.diff ApplyPatch iFIXME-64bit-binfilter-xmloff.diff ApplyPatch iFIXME-64bit-binfilter-fields.diff ApplyPatch iFIXME-64bit-binfilter-bf_sw.diff ApplyPatch iFIXME-64bit-binfilter-bf_sw-layout.diff ApplyPatch iFIXME-64bit-binfilter-core-misc.diff ApplyPatch iFIXME-64bit-xmloff.diff ApplyPatch iFIXME-64bit-comphelper.diff ApplyPatch iFIXME-64bit-sc.diff ApplyPatch iFIXME-64bit-sd.diff ApplyPatch iFIXME-64bit-sw.diff # Issue #i59411#: 64bit: extensions: sal_uInt32 -> ULONG for Application::PostUserEvent() ApplyPatch iFIXME-64bit-extensions.diff ApplyPatch iFIXME-64bit-forms.diff ApplyPatch iFIXME-64bit-desktop.diff ApplyPatch iFIXME-64bit-canvas.diff # Issue #i57737#: 64bit: sal_uInt32 -> sal_Size, and 0x123UL -> # sal_uInt32(0x123) in 'store', cws sixtyfour01 ApplyPatch i57737-64bit-store.diff ApplyPatch iFIXME-64bit-fpicker.diff # Issue #i59041#: 64bit: long vs. sal_Int32 in fpicker/source/office/iodlg.cxx # Fixed in vcl49, 2.0.2 ApplyPatch i59041-64bit-fpicker.diff # Broken for 32bits... ApplyPatch iFIXME-64bit-framework.diff ApplyPatch iFIXME-64bit-svtools.diff ApplyPatch iFIXME-64bit-tools-svstream_Size_to_u32.diff ApplyPatch iFIXME-64bit-MinMax.diff ApplyPatch iFIXME-polygonpoints-psprint-vcl.diff # Issue #i57893#: 64bit: Change order of sal_u?Int64 definition, # trivial sal_uInt32->sal_Size change ApplyPatch i57893-64bit-sal-misc.diff # Fix bridges (from ooo-build) ApplyPatch kendy-bridges.diff # Issue #i59045#: 64bit: vcl/source/gdi/impgraph.cxx and ULONGs # Fixed in vcl49, 2.0.2 ApplyPatch i59045-vcl-gcc4.diff # Add stdio.h for debugging ApplyPatch DEBUG-64bit-bridges.diff # Issue #i31057#: Without this, pyuno debug build SIGSEGVs ApplyPatch i31057-DEBUG-64bit-no-opt-pyuno-sigsegv.diff # 64bit ApplyPatch iFIXME-tools-SvStream.diff # 64bit ApplyPatch iFIXME-64bit-tools-bigint.diff # 64bit ApplyPatch iFIXME-64bit-tools-pstm.diff # 64bit # Issue #i59252#: 64bit: automation: Trivial ULONG -> comm_UINT32 ApplyPatch iFIXME-64bit-automation.diff # 64bit ApplyPatch iFIXME-64bit-sfx2.diff # # 64bit child workspaces # # 64bit: Trivial long/ULONG -> sal_Int32/sal_uInt32 ApplyCWS long2int # # Issues already fixed in different child workspaces (not-64bit # relevant cws) # # Issue #i57682#: 64bit: For fprintf( ..., "%ld", var ), var must be a 'long' # Target 2.0.2, fixed in vcl47 ApplyPatch i57682-64bit-rsc.diff # Issue #i57690#: 64bit: sal_uInt32 -> uLongf in filter # target 2.0.2, fixed in cws sj31 ApplyPatch i57690-64bit-filter.diff # Issue #i50821#: gcc4 fails to build libxml2 # Target 2.0.2 ApplyPatch i50821-libxml2-elfgcchack.diff # Issue #i58018#: 64bit: 0L -> sal_Int32( 0 ) in cppcanvas # Fixed in cairocanvas ApplyPatch i58018-64bit-cppcanvas.diff fi # TEMP! [ ${OOO_BUILD_SYSTEM} = "Windows" ] && ApplyPatch TEMP-Windows-do-not-build-SDK.diff else # OpenOffice.org 2.0.1 fixes # Issue #i42516#: Use my name as OOO_VENDOR. ApplyPatch OOO_VENDOR.diff # Issue #i58437#: remove obsolete string in Control.ulf ApplyCWS nativefixer21 # QA canvas04 ApplyCWS canvas04 # Issue #i52789#: build errors with annonymous enums and gcc 4.0.1 ApplyCWS dba202a # QA pj43 ApplyCWS pj43 # QA pj43 ApplyCWS pj41 # Issue #i57397#: Add Lao fonts ApplyPatch i57397-Lao-fonts.diff # Issue #i49044#: Add somehow forgotten patch... ApplyPatch i49044-MacOSX-stlport-gcc33.diff # TEMP! [ ${OOO_BUILD_SYSTEM} = "Windows" ] && ApplyPatch TEMP-Windows-do-not-build-SDK.diff # Issue #i58214#: pyuno/zipcore MAXPROCESS failure ApplyPatch i58214-pyuno-MAXPROCESS.diff # Issue #i56611#: do not set environment variables to empty # Fixed in ause044 ApplyPatch i56611-empty-variables.diff fi # Issue #i35873#: Turn kerning on by default for 2.0 ApplyPatch i35873-kerning-on.diff # Issue #i49433#: Base's Form wizard has a non localizable strings # Target 2.0.1, extracted from dbwizardpp1 ApplyCWSPatch officecfg i49433-missing-translation.diff # Issue #iFIXME#: Default fonts for sl and sk ApplyPatch officecfg-sl_sk_default_fonts.diff # Issue #i42014#: Add Czech calendar to awt (for agenda wizard) # Eike is working on correct fix in cws internatiodel ApplyPatch i42014-Czech-awt-calendar.diff # Do not substitute fonts while printing # FIXME: report! ApplyPatch psprint-do-not-substitute.diff # # Preparing the compilation process # # We will use ccache on GNU/Linux (both x86 and x86_64), FreeBSD and MacOS X if [ ${OOO_BUILD_SYSTEM} = "Linux" -o ${OOO_BUILD_SYSTEM} = "LinuxAMD64" -o ${OOO_BUILD_SYSTEM} = "LinuxPPC" -o ${OOO_BUILD_SYSTEM} = "MacOSX" -o ${OOO_BUILD_SYSTEM} = "FreeBSD" ] then export CC="${BUILD}/bin/ccache ${OOO_GCC_PATH}/bin/gcc" export CXX="${BUILD}/bin/ccache ${OOO_GCC_PATH}/bin/g++" fi if [ ${OOO_BUILD_SYSTEM} = "Solaris" ] then # Default is to use gcc! Why? FIXME! export CC=cc export CXX=CC # FIXME: temporary! # Use GNU gcc # export OOO_GCC_PATH=/usr/local # export CC="ccache ${OOO_GCC_PATH}/bin/gcc" # export CXX="ccache ${OOO_GCC_PATH}/bin/g++" # OOARCHENVIRONMENT=SolarisSparcGcc fi # Configure OpenOffice.org ( cd config_office COMMON_CONFIG_FLAGS="--with-jdk-home=${JDKPATH} --with-dict=ALL --with-lang=\"${SUPPORTEDLANGUAGES}\" --with-gnu-patch=${PATCH} --with-gnu-cp=${CP} --enable-crashdump --with-ant-home=${BUILD}/apache-ant-${ANTVERSION} --with-mozilla-version=1.7.5 --enable-build-mozab --with-build-version=\"${BUILD_ID}\"" # FIXME: libIDL is not installed on my Solaris box [ ${OOO_BUILD_SYSTEM} = "Solaris" ] && COMMON_CONFIG_FLAGS="--with-jdk-home=${JDKPATH} --with-dict=ALL --with-lang=\"${SUPPORTEDLANGUAGES}\" --with-gnu-patch=${PATCH} --with-gnu-cp=${CP} --enable-crashdump --with-ant-home=${BUILD}/apache-ant-${ANTVERSION} --disable-mozilla --with-build-version=\"${BUILD_ID}\"" case ${OOO_BUILD_SYSTEM} in Linux) eval ./configure ${COMMON_CONFIG_FLAGS} --enable-gtk --enable-kde --with-package-format=\"rpm deb\" ;; LinuxAMD64) # Issue #i53880#: Use system freetype (FIXME) # Issue #i58343#: Use system boost (FIXME) eval ./configure ${COMMON_CONFIG_FLAGS} --disable-binfilter --disable-cups --disable-gnome-vfs --with-system-freetype --with-system-boost # --without-java ;; LinuxPPC) eval ./configure ${COMMON_CONFIG_FLAGS} --enable-mozilla ;; FreeBSD) # Issue #i46979#: FreeBSD: portaudio eval ./configure ${COMMON_CONFIG_FLAGS} --disable-gnome-vfs --disable-pasf ;; Solaris) # TEMP: disable pasf eval ./configure ${COMMON_CONFIG_FLAGS} --disable-cups --disable-gnome-vfs --disable-gtk --disable-pasf ;; MacOSX) # FIXME: #i27584#: MacOS X and X includes detection eval ./configure ${COMMON_CONFIG_FLAGS} --disable-gtk --disable-crashdump --with-x --x-includes=/usr/X11R6/include/ ;; Windows) eval ./configure ${COMMON_CONFIG_FLAGS} --with-mozilla-version=1.7.5 --enable-build-mozab \ --with-frame-home=\"${DOTNET_PATH}\" --disable-directx ;; esac ) || { echo "Configure failed. Fix it!" exit } # # Localized extras # for ISOCODE in $SUPPORTEDLANGUAGES do [ -f ${FILES}/${VERSION}/extras_${ISOCODE}.tar.gz ] && ${TAR} xvfz ${FILES}/${VERSION}/extras_${ISOCODE}.tar.gz done for ISOCODE in $SUPPORTEDLANGUAGES do # Unpack all auxiliary files [ -f ${FILES}/${VERSION}/auxiliary_${ISOCODE}.tar.gz ] && ${TAR} xvfz ${FILES}/${VERSION}/auxiliary_${ISOCODE}.tar.gz # Unpack localized help images [ -f ${FILES}/${VERSION}/help_images_${ISOCODE}.tar.gz ] && ${TAR} xvfz ${FILES}/${VERSION}/help_images_${ISOCODE}.tar.gz # Unpack images for toolbars (B, U, I etc.) [ -f ${FILES}/${VERSION}/toolbar_images_${ISOCODE}.tar.gz ] && ${TAR} xvfz ${FILES}/${VERSION}/toolbar_images_${ISOCODE}.tar.gz done # The number of processes running in parallel [ ${OOO_BUILD_SYSTEM} = "Linux" ] && { export MAXPROCESS=4 export nodep=true if [ ${MAXPROCESS} -gt 1 ] then # MAXPROCESS=1 fixes (#i#) for i in sdk_oo/pack/copying/makefile.mk do awk '{ if ($0 ~ "^PRJNAME=") print "MAXPROCESS=1"; print ; }' <$i >$i.MAXPROCESS mv -f $i.MAXPROCESS $i done echo "No patches needed" fi } # The number of processes running in parallel # FIXME: see above [ ${OOO_BUILD_SYSTEM} = "LinuxAMD64" ] && { export MAXPROCESS=4 export nodep=true if [ ${MAXPROCESS} -gt 1 ] then # MAXPROCESS=1 fixes # for i in moz/makefile.mk # do # awk '{ if ($0 ~ "^PRJNAME=") print "MAXPROCESS=1"; print ; }' <$i >$i.MAXPROCESS # mv -f $i.MAXPROCESS $i # done echo "No patches needed" fi } # The number of processes running in parallel [ ${OOO_BUILD_SYSTEM} = "Solaris" ] && { export MAXPROCESS=4 export nodep=true } [ -f bootstrap ] || { echo "bootstrap not found - fix this" exit } [ "x${OOO_DEBUG}" = "xyes" ] && export DBG_LEVEL=10 ./bootstrap || { echo "Bootstrap failed" exit } if [ ${OOO_BUILD_SYSTEM} = "Windows" ] then . winenv.set.sh else . ${OOARCHENVIRONMENT}Env.Set.sh fi # Issue #i51139#: workaround export TMP=/tmp # Build transex3 project first PrepareLocalizeTool # Extract all README.html files [ ${EXTRACT_README} = "yes" ] && ExtractREADME # Extract all GSI files [ ${EXTRACT_GSI} = "yes" -o ${EXTRACT_PO} = "yes" ] && ExtractGSI # Convert GSI files to PO files [ ${EXTRACT_PO} = "yes" ] && ExtractPO # Convert GSI files to PO files [ ${OOO_BUILD_SYSTEM} = "Linux" ] && ExtractPOT # # Add/update translations # # Merging GSI/SDF files for ISOCODE in $SUPPORTEDLANGUAGES do cp ${FILES}/${VERSION}/GSI_${ISOCODE}.sdf.{bz2,gz} ${BUILD} 2>/dev/null [ -f ${BUILD}/GSI_${ISOCODE}.sdf.bz2 ] && bunzip2 -f ${BUILD}/GSI_${ISOCODE}.sdf.bz2 [ -f ${BUILD}/GSI_${ISOCODE}.sdf.gz ] && gunzip ${BUILD}/GSI_${ISOCODE}.sdf.gz [ -f ${BUILD}/GSI_${ISOCODE}.sdf ] && { # FIXME: OOO_LICENSE was removed! # CWS localisation02 # Some languages still referenci it :-((( grep -v OOO_LICENSE ${BUILD}/GSI_${ISOCODE}.sdf >${BUILD}/GSI_${ISOCODE}.sdf.tmp mv ${BUILD}/GSI_${ISOCODE}.sdf.tmp ${BUILD}/GSI_${ISOCODE}.sdf # Remove all existing translations from localize.sdf files for localize in `find . -name localize.sdf` do grep -v " $ISOCODE " $localize >$localize.tmp mv -f $localize.tmp $localize done MergeGSI ${ISOCODE} } done # FIXME/TEMP: add missing auxiliary/isocode directories for now for i in ${SUPPORTEDLANGUAGES} do [ ! -d helpcontent2/source/auxiliary/$i ] && cp -r helpcontent2/source/auxiliary/en-US helpcontent2/source/auxiliary/$i done dmake || { date echo "Dmake failed, fix the bug above." read } # # Openoffice.org SDK # [ ${OOO_BUILD_SYSTEM} != "LinuxAMD64" ] && CreateSDK # # Installation sets # CreateNativeInstallers CreateNativeLangPacks CreateURE [ ${BUILD_DEBUG_PACKAGES} != "yes" ] && exit # Prepare debug GSI files [ ${OOO_BUILD_SYSTEM} = "Linux" ] && PrepareDebugGSI # # Debugging installation sets # for ISOCODE in $SUPPORTEDLANGUAGES do [ -f ${BUILD}/debug_GSI_${ISOCODE}.sdf ] && MergeGSI ${ISOCODE} debug done dmake # Create debugging language packs CreateNativeLangPacks debug