Friday, February 13, 2009

Open Office - Mac OS X Build - Part 2

I have talked with Eric on IRC about hacking the OOo on Mac OS X. He provided me with many solutions, but the main difference is the way we build.

I described to him my situation of my method of build and it appears that I have missed a few steps in between. Lets review my old method...

1. Make changes to the .cxx file
2. Rebuild the directory branch of the .cxx file that it resides.
3. Rebuild the entire project from the source root.
4. Extract the OpenOffice Application inside the instsetoo_native/....../install/en-US/
5. Open OpenOffice to see changes.

Of course this method does not work, because I do not see any changes.

Now, this is Eric's solution
1. Make changes to the .cxx file
2. Rebuild the directory branch of the .cxx file that it resides.
3. Deliver on the same directory
4. Delete the initial output tree
cd instsetoo_native
rm -rf unxmacxi.pro
5. Rebuild the entire thing

I have not yet confirm on the status of this method, because I am only trying this now right after I spoke with Eric.


A different method that was introduce to me was delete portion of the OpenOffice Bundle content and replace it the newly build. (Sounds really confusing to me and wondering how people figure out this method.)

This is what had been said to my understanding.
1. Make the change on the .cxx
2. Rebuild the branch of the .cxx reside
3. Remove a portion of the OpenOffice Bundle in the Application
4.
rm -f /Applications/OpenOffice.org.app/Contents/basis-link/program/libvclmxi.dylib
In the Mac OS X case, you will find the Openoffice.org.app inside the instsetoo_native folder
5.
Copy the unxmacxi.pro inside vcl to the OpenOffice.org.app/Contents/basis-link/program/
cp unxmacxi.pro/lib/libvclmxi.dylib /Applications/OpenOffice.org.app/Contents/basis-
link/program/
6. Run the program.

To my understanding this method is a really quick way to modify the application without rebuilding everything. But I have not yet confirm if it works.

The 3rd method, he describe is to install cache, so any build that is not been modify it'll be ignore.
So imagin, your build takes 1 hour, with cache it might take 30 minutes.
So this is how he describe how to do it.
Once you install cache... do the following

1. export CC="ccache gcc"
2. export CXX = "ccache g++"

then just do you build routine with ./bootstrap and build

I am going to try them out see how well they work :)




No comments:

Post a Comment