Skip to content

start:

FreeBSD OpenOffice.org porting status page

$Id: index.html,v 1.246 2008/04/07 06:52:01 xxjack12xx Exp $
by OpenOffice.org porting team , NAKATA, Maho , and Jackson Low

News

2008/Apr/1: Policy for accepting patches in FreeBSD ports tree has been changed. See policy section for details.

2007/Oct/9: OOo 2.3.0 binaries for FreeBSD 6.2 i386 and amd64 are available at Good-Day.

2007/Sept/6: OOo 2.2.1 binaries for FreeBSD 7.0 amd64 are available at Good-Day.

2007/July/18: OOo 2.3m217 binaries for FreeBSD 6.2 amd64 are available at Good-Day.

2007/July/6: OOo 2.2.1 binaries for FreeBSD 6.2 amd64 and i386 are available at Good-Day.

2007/May/2: OOo 2.2 binaries for FreeBSD 6.2 amd64 (and soon i386) are available at Good-Day.

2007/Feb/21: OOo 2.2m202 binaries for FreeBSD 6.2 amd64 are available at Good-Day.

2007/Feb/8: We removed all FreeBSD 4 support, as it reached at the EoL (2007/1/31).

2007/Feb/1: OOo 2.2m200 binaries for FreeBSD 6.2 (i386 and amd64) are available at Good-Day.

2006/Dec/21: OOo 2.1 binaries for FreeBSD 6.2-RC1 (i386) are available at Good-Day.

2006/Dec/20: OOo 2.1 binaries for FreeBSD 6.2-RC1 (amd64) are available at Good-Day.

2006/Dec/18: OOo 2.2m196 binaries for FreeBSD 6.2-RC1 (i386) are available at Good-Day.

2006/Dec/8: OOo 2.0.4 binaries for FreeBSD 6.2-RC1 (amd64) are finally available at Good-Day.

2006/Nov/13: Ports names have been renamed and add RC port so that we have much more stable port for release. See PR 105195.

2006/Oct/10: OOo 2.0.4RC3 binaries for FreeBSD 6.2-PRERELEASE (amd64) are available at Good-Day.

2006/Oct/9: OOo 2.0m186 binaries for FreeBSD 6.2-PRERELEASE (i386) are available at Good-Day.

2006/Oct/6: OOo 2.0m186 binaries for FreeBSD 6.2-PRERELEASE (amd64) are available at Good-Day.

2006/Oct/4: OOo 2.0.4RC2 binaries for FreeBSD 6.1-STABLE (amd64) are available at Good-Day.

2006/Oct/3: OOo 2.0.4RC2 binaries for FreeBSD 6.1-STABLE (i386) are available at Good-Day.

2006/Sept/23: OOo 2.0m184 binaries for FreeBSD 6.1-STABLE (i386) are available at Good-Day.

2006/Sept/18: OOo 1.1.5 binaries for FreeBSD 5.5-RELEASE, 2.0.4RC1 binaries for FreeBSD 6.1-RELEASE (amd64 and i386) are available at Good-Day.

2006/Sept/2: OOo 2.0.4m1 binaries for FreeBSD 5.5-RELEASE are available at Good-Day.

2006/Aug/6: OOo 2.0m180 binaries for FreeBSD 5.5-RELEASE and 6.1-STABLE (amd64) are available at Good-Day.

2006/Aug/6: OOo 2.0m179 binaries for FreeBSD 5.5-RELEASE and 6.1-RELEASE are available at Good-Day.

2006/Jul/23: OOo 2.0m177 binaries for FreeBSD 5.5-RELEASE and 6.1-RELEASE are available at Good-Day.

2006/Jul/22: OOo 2.0m176 binaries for FreeBSD 5.5-RELEASE and 6.1-RELEASE are available at Good-Day.

2006/Jul/20: Announcement: FreeBSD/amd64 port has finished by Jung-uk Kim. 2.0.3 packages are available at Good-Day.

2006/Jul/15: OOo 2.0m175 binaries for FreeBSD 5.5-RELEASE and 6.1-RELEASE are available at Good-Day.

2006/Jul/13: OOo 2.0.3 binaries for FreeBSD 5.5-RELEASE and 6.1-RELEASE are available at Good-Day.

2006/Jul/6: OOo 2.0.3rc7 binaries for FreeBSD 5.5-RELEASE and 6.1-RELEASE are available at Good-Day.

2006/Jun/27: OOo 2.0m172 binaries for FreeBSD 6.1-RELEASE are available at Good-Day.

2006/Jun/25: OOo 2.0m170 binaries for FreeBSD 6.1-RELEASE are available at Good-Day.

2006/Jun/10: OOo 2.0.3RC5 binaries for FreeBSD 5.5-RELEASE and 6.1-RELEASE are available at Good-Day.

2006/Jun/06: OOo 2.0.3RC3 binaries for FreeBSD 6.1-RELEASE are available at Good-Day.

2006/May/22: OOo 2.0m169 binaries for FreeBSD 5.5-PRERELEASE and 6.1-RELEASE are available at Good-Day.

2006/Apr/25: Carlos Eduardo donated me an access to FreeBSD/amd64 in Jail. We thank him very much!

2006/Apr/25: WITHOUT_JAVA knob has been removed

2006/Apr/17: Now openoffice.org-2.0 port is buildable with GNU GCJ

2006/Apr/15: Now openoffice.org-2.0/openoffice.org-2.0-devel ports are buildable with JDK 1.5

2006/Apr/10: OOo 2.0m162 binaries for FreeBSD 5.5-PRERELEASE and 6.1-PRERELEASE are available at Good-Day.

2006/Apr/7: Native Official Java 1.5 has been released for 6.0-RELEASE and 5.4-RELEASE, Announcement. FreeBSD porting team will use this Java as default soon.

2006/Mar/29: OOo 2.0m160 binaries for FreeBSD 6.1-PRERELEASE are available at Good-Day.

2006/Mar/29: OOo 2.0.2 binaries for FreeBSD 6.1-PRERELEASE are available at Good-Day.

2006/Mar/19: OOo 2.0m159 binaries for FreeBSD 6.1-PRERELEASE are available at Good-Day.

2006/Mar/10: OOo 2.0.2RC4 binaries for FreeBSD 6.1-PRERELEASE and 5.5-PRERELEASE are available at Good-Day.

2006/Mar/1: OOo 2.0.2RC2 binaries for FreeBSD 6.1-PRERELEASE and 5.5-PRERELEASE are available at Good-Day.

2006/Feb/22: OOo 2.0.2RC1 binaries for FreeBSD 6.1-PRERELEASE and 5.5-PRERELEASE are available at Good-Day.

2006/Feb/9: OOo 2.0m156 binaries for FreeBSD 6.0-RELEASE and 5.5-PRERELEASE are available at Good-Day.

2006/Feb/9: OOo 2.0m155 binaries for FreeBSD 6.0-RELEASE are available at Good-Day.

2006/Jan/30: OOo 2.0m151 binaries for FreeBSD 5.4-RELEASE and 6.0-RELEASE are available at Good-Day.

2006/Jan/20: OOo 2.0m150 binaries for FreeBSD 5.4-RELEASE and 6.0-RELEASE are available at Good-Day.

2006/Jan/18: OOo 2.0m149 binaries for FreeBSD 5.4-RELEASE and 6.0-RELEASE are available at Good-Day.

2006/Jan/15: OOo 2.0m148 binaries for FreeBSD 5.4-RELEASE and 6.0-RELEASE are available at Good-Day.

Click here for old news.

Top of page


Available ports (ports in the FreeBSD ports tree)

Obtaining packages, language packs, and build logs

Top of page

Supported platforms

  • FreeBSD 5.3 and later, FreeBSD 6, and FreeBSD 7: supported
    Officially supported by openoffice@freebsd.org. If your build is broken, please let us know. Recommendation is FreeBSD 6.2-STABLE (__FreeBSD_version>=602103).
  • FreeBSD 4.11-RELEASE/i386 : NOT supported
    This has reached to the end of life.
  • FreeBSD 5.2.1-RELEASE/i386 : NOT supported
    We had serious implementation differences in rtld.c between FreeBSD and NetBSD/Linux/Solaris which had been producing very weird problems and a hard-to-track bug. It was fixed after 5.2.1-RELEASE and 4.11-RELEASE. Please see the commit log for details. We decided to mark this port as BROKEN for them, however, and a patch for rtld.c for 5-RELENG are available. This patch is totally unsupported so use it at your own risk. Feedback is welcome.
    BEFORE BUILDING OPENOFFICE.ORG, FOLLOW THESE INSTRUCTIONS: If you using prior than 5.3-RELEASE:
    % su
    Password:
    # fetch http://people.freebsd.org/~maho/ooo/patch-rtld.c-releng5
    # cd /usr/src/libexec/rtld-elf ; patch < patch-rtld.c-releng5
    # make ; make depend ; make install
    
Top of page

How to build

Basically, just typing make 'install' will work fine for standard installations. It will fetch everything you need from the Internet while you sit back and drink a cup of coffee or take a nap. However, compiling jdk is the most tedious part (i.e. fetching the java source code and enabling the linux binary compatibility mode required by the linux version of jdk for bootstrapping). I'll assume you have already installed JDK 1.5.0 (/usr/ports/java/jdk15) via ports in this tutorial. If you want to build a developer version or other snapshot versions of OOo, just cd to different directory; /usr/ports/editors/openoffice.org-3-devel or /usr/ports/editors/openoffice.org-3-devel.

  • Building/installing OpenOffice.org (English version)
    % cd /usr/ports/editors/openoffice.org-2 ; make
    % su
    Password:
    # make install
    
  • Building/installing/packaging a localized language package (Japanese version for example)
    % cd /usr/ports/editors/openoffice.org-2 ; make LOCALIZED_LANG=ja
    % su
    Password:
    # make LOCALIZED_LANG=ja install package
    
    For other languages such that French, German, etc, please change LOCALIZED_LANG=XX; replacing XX with your language in ISO-code, etc) Please consult files/Makefile.localized for supported languages.
  • Building a package
    % cd /usr/ports/editors/openoffice.org-2 ; make
    % su
    Password:
    # make package
    
  • Building sdk
    % cd /usr/ports/editors/openoffice.org-2 ; make ; make sdk
    
  • Building solver
    % cd /usr/ports/editors/openoffice.org-2 ; make ; make solver
    
  • Building the English version with package/sdk/solver
    % cd /usr/ports/editors/openoffice.org-2
    % su
    Password:
    # make package package-rename solver sdk deinstall clean
    
  • Building all localized language packages
    The initial make may take 6 hours, however the next make will only take 5 minutes. The trick is TWEAK_L10N touches work/.configure_done* etc. This is due to limitations of ports framework.
    # cd /usr/ports/editors/openoffice.org-2 ; make ALL_LOCALIZED_LANGS=yes
    # make TWEAK_L10N=yes LOCALIZED_LANG=ja pre-everything
    # make LOCALIZED_LANG=ja WITH_CCACHE=yes package package-rename deinstall
    # make TWEAK_L10N=yes LOCALIZED_LANG=ar pre-everything
    # make LOCALIZED_LANG=ar WITH_CCACHE=yes package package-rename deinstall
    # make TWEAK_L10N=yes LOCALIZED_LANG=ca pre-everything
    # make LOCALIZED_LANG=ca WITH_CCACHE=yes package package-rename deinstall
    ...
    
  • Renaming your OOo package, OOo_${VERSION}_${PLATFORM}_${ARCH}.t{bz|gz}; for example, renamed to OOo_2.0.2_FreeBSD52Intel_install_ja.tbz.
    % cd /usr/ports/editors/openoffice.org-2
    % su
    Password:
    # make package package-rename
    
  • Building with ccache (useful for 2nd builds and developers as it reduces the amount of time for a full build from 6 hours to 3 hours)
    # make WITH_CCACHE=yes
    
  • For releasing, do everything described above (build every localized package, sdk, solver, and rename).
    % cd /usr/ports/editors/openoffice.org-2/files
    % perl generate.pl > ../go.csh
    % su
    Password:
    # cd .. ; csh go.csh
    

Knobs
  • Building without Mozilla connectivity
    % cd /usr/ports/editors/openoffice.org-2
    % make -DWITHOUT_MOZILLA
    
  • Building with CUPS support (2.0 or later)
    % cd /usr/ports/editors/openoffice.org-2
    % make -DWITH_CUPS
    
  • Building with KDE support (2.0 or later)
    % cd /usr/ports/editors/openoffice.org-2
    % make -DWITH_KDE
    
Top of page

Release process

  • Commit thoroughly tested updates to the FreeBSD ports tree
  • Prepare clean installed x.y-RELEASE of FreeBSD
  • Install cvsup and perl and rebuild world
  • Generate shell script for full build
    # cd /usr/ports/editors/openoffice.org-2
    # cd files ; perl generate.pl >& ../go.csh
    
  • cvsup ports tree
  • Remove /usr/local, /var/db/pkg,and /var/db/ports
  • Install /usr/ports/java/jdk15
  • Build entire OpenOffice.org (takes very long hours, can take several days)
    # cd /usr/ports/editors/openoffice.org-2
    # setenv BATCH yes ; csh go.csh
    
  • Upload to http://ooopackages.good-day.net/pub/OpenOffice.org/FreeBSD/, ftp://ftp.stardiv.de/ . Only maho and jack low know how to upload binaries.
  • Write an e-mail to ja@openoffice.org, st@openoffice.org or mh@openoffice.org to report packages are uploaded to visible place.
  • Announce at releases@openoffice.org and openoffice@freebsd.org
  • Update QA localized status page. So that let other persons to know packages are available for FreeBSD.
  • (optional) Do QA test for localized packages.
  • (optional) Announce if QA has passed.
Top of page

Todo

  • Define QA process. Pass VCLTesttool with recent VCLTestTool environment
Top of page

Porting tips

  • Checking out the source from cvs
     cvs -d:pserver:anoncvs@anoncvs.services.openoffice.org:/cvs checkout -r DEV300_m5 OpenOffice2
    
    checkouts DEV300_m5 source.
     cvs -d:pserver:anoncvs@anoncvs.services.openoffice.org:/cvs checkout -r cws_srx645_mozooo 
    checkouts cws_srx645_mozooo.
  • How to make a mozilla runtime : see #iz 11424 and #iz 28398 and use mozzip.sh for 1.0.
  • How to make a patch
    % dmake patch
    % dmake create_patch
    
  • Using cwstools, esp. for how to take diff of cws and its anchor (please read PJ's email)
    pavel@pavel:~/.ooo/ooo_SRC680_m96_src> cwsquery -m SRC680 -c macosx06 modules
    cwsquery -- version: 1.5
    cwsquery: Master workspace 'SRC680', child workspace 'macosx06':
    cwsquery: Modules:
    jvmfwk
    scp2
    
    Two modules are in macosx06
    cd scp2; cvs diff -r CWS_SRC680_MACOSX06_ANCHOR -r cws_src680_macosx06
    
    See the diff.
  • cws-extract
    cws-extract of ooo-build is very nice, a lot easier to obtain the diff explained above.
  • cws-commit-patch
    cws-commit-patch make it easier for us to commit patches to ooo cvs. You must have your issue numbers handy!
Top of page

Porting pitfalls

  • bridges/source/cpp_uno
  • solenv/inc/unxfbsdi.mk
Top of page

Links

Top of page

Policy

  • We support only Java 1.5, for openoffice.org-2 and openoffice.org-3-devel ports.
  • Looking volunteer for supporting gcj build.
  • Provide vanilla OOo package. Changes must be minimal or enhancements must be activated via special build flags.
  • If you would like to submit patches for OpenOffice.org, please fill out and submit SCA (or JCA or CA), (announcement). otherwise, we won't commit them, even for the FreeBSD ports cvs repo. If you want to learn more, please check the License FAQ. Here is a list of people who have signed the SCA, JCA and CA.
  • If you would like to provide enhancements in the Makefile in the ports framework, you *don't* need to fill out SCA (or JCA or CA).
  • If you would like to provide bug fix(es) and/or enhancement(s) which won't be integrated into OpenOffice.org, i.e. Ximian patches, you *don't* need to fill out the SCA (or JCA or CA).
Top of page

Contact

FreeBSD openoffice.org porting team

Top of page


Thank you very much for your support!