Objective : create exercices, to practice OpenOffice.org tools used for development
TODO : define a list of items
- 1 Join the Project
- 1.1 Login and accounts
- 1.2 Find a page or a document
- 1.3 Bonsai use
- 1.4 LXR use
- 1.5 Checkout the code
- 1.6 Create a patch
- 1.7 Apply and Reverse a patch
- 1.8 Fix a build breaker (most common breakages )
- 1.8.1 A) Building OpenOffice.org
- 1.8.2 B) Hacking OpenOffice.org
Join the Project
Login and accounts
- Create your login on the OpenOffice.org wiki
- Become member of Education Project, using the Education Project wiki page : http://wiki.services.openoffice.org/wiki/Education_Project
Find a page or a document
- Find the web page for your own locale in OpenOffice.org project ( e.g. nl.openoffice.org )
- Find the OpenOffice.org Coding Guidelines on the Wiki ( and read it ... )
- Find the page about cws ( Child Workspace )
- Find firstname.lastname@example.org mailing list archive
- Subscribe to email@example.com mailing list if you didn't yet
- Extract mails 10 to 14 from any mailing list
- Discover Bonsai
- Visualize changes in a cws
We'll try to do a request :)
2) Don't modify Module (must be All files in the repository ) Remark : note the name "repository "
3) In the Field "Branch" replace HEAD with cws_dev300_aquavcl07
4) in the field "Date" check "Since the beginning of time "
5) do not modify the other fields
6) Click "Run Query"
=> all the changes in the code, based on DEV300_m9 ( we'll explain later) are on the page !!
7) To see the diff for any commit, click in the Rev. columns. Back to retrieve the current page.
Strongly advised : 8) Look carefully at other changes, what information you can obtain here.
Remark: Bonsai helps when you are searching for changes in the code, author date .. precise information about CODE
Checkout the code
- we suppose you have some bash knowledge, and some programming skills
- your .cvsrc file is ok (else ask on #education.openoffice.org )
Now, open a terminal, use bash, and do :
0 ) create the environment
what follows are command lines
If you don't have a proxy
There is a proxy, and nothing works using the line above:
Let the proxy be 100.101.102.103 ( name :proxy.machine.education.org ) , and the open port 1234, then just do :
And if you ignore the IP address of the gateway, but you know its name, do :
create TMP dir (command: mkdir TMP )
1) checkout vcl module from DEV300_m31
cvs co -r DEV300_m31 dtrans
Question: what happens ?
Download all OpenOffice.org tree :
cvs -4 co -r DEV300_m31 OpenOffice2
( -z4 is optional )
-> once done ( can be very long), and if no error occurs, you got all OpenOffice.org source code from DEV300_m31 Milestone !!
Create a patch
2) Modify one file, do "cvs up" , and comment on the result
3) using grep , retrieve the name of the milestone in the sources
4) checkout vcl from a cws under development
cvs -z4 co -r cws_dev300_aquavcl07 vcl
5) retrieve the cwsname in the sources
6) analyse the list of the subdirectories vcl contains
7) modify the code in vcl/source/gdi/sallayout.cxx
(write whatever you want, respecting C++ syntax prefered ;)
8) create a diff with the OpenOffice.org repository
change directory outside of vcl
in the current dir ( TMP ) , do :
cvs diff -u vcl > my_pretty_patch.diff
9) What does contain the patch ?
Apply and Reverse a patch
- Simulate a patch application
- Apply it for true
10) How reverse your changes ?
11) Be sure you have enough place on your hard disk ( count 2GB )
Fix a build breaker (most common breakages )
A) Building OpenOffice.org
Note: add your own experience here !
e.g. missing alias in DEV300_m13 : hyphen module is not checked, causing missing headers, never delivered and then, a breakage in lingucomponent because of undefined functions/methods and so on
Solution: check out hyphen
Note: there is another solution for experimented devs, using tunnel
cvs co -r DEV300_m13 hyphen