Ebuilds Notes: Difference between revisions

From Elvanör's Technical Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 13: Line 13:
* In 3.3, the help system has been switched to the Jetty container. Tomcat is no longer needed (except for external plugins still not migrated to the new system). In 3.4, Tomcat is removed alltogether.
* In 3.3, the help system has been switched to the Jetty container. Tomcat is no longer needed (except for external plugins still not migrated to the new system). In 3.4, Tomcat is removed alltogether.


* The build system is somehow generic. If a particular plugin/component needs to do some special things, there is a file named customBuildCallbacks.xml, that contains some specific tasks to be done. Apart from that, the other tasks don't vary a lot from component to component. The "@dot" task takes care of the compiling. "gather.bin.parts" seems to create the component hierarchy structure (copies needed files into a destination folder, that will be packaged into a jar at some point).  
* The build system is somehow generic. If a particular plugin/component needs to do some special things, there is a file named customBuildCallbacks.xml, that contains some specific tasks to be done. Apart from that, the other tasks don't vary a lot from component to component. The "@dot" task takes care of the compiling. "gather.bin.parts" seems to create the component hierarchy structure (copies needed files into a destination folder, that will be packaged into a jar at some point).
 
* In the current Eclipse plugin, the C part of Eclipse (the loader) is extracted from org.eclipse.platform. Then it gets patched (to set proper CFLAGS etc). The loader is responsible for setting the correct Gecko directory (for the internal browser), so this may interfere somehow.


* Eclipse Tasks:
* Eclipse Tasks:

Revision as of 16:16, 14 November 2007

Eclipse 3.3

  • The Ant script creates a .tar.gz file at the end. We need to unpack it to perform further modifications.
  • To create this .tar.gz, stuff is copied from the build directory. We need to remove this copying in the main build.xml file, as we will later create the symlinks to our system jars.
  • The Javadoc is ran by the build file buildDoc.xml in plugins/org.eclipse.platform.doc.isv. You could disable it here, or if you want to produce the javadoc, you need to add some classpath entries. Note that the warnings about multiple sources for comments is an upstream problem.
  • OSGi Manifests: if you have a header spanning several lines, it is *imperative* that you start newlines with a space!! Else this is considered to be another header.
  • Eclipse imperatively expects the Ant jar to be "exploded", eg in folder form. So we must keep a org.apache.ant folder with inside a manifest and a lib dir. We will symlink to the system jars in lib/. Keep the manifest bundle classpath up-to-date with the actual symlinks, else errors appear on the log (Eclipse tries to find jars that are not present).
  • In 3.3, the help system has been switched to the Jetty container. Tomcat is no longer needed (except for external plugins still not migrated to the new system). In 3.4, Tomcat is removed alltogether.
  • The build system is somehow generic. If a particular plugin/component needs to do some special things, there is a file named customBuildCallbacks.xml, that contains some specific tasks to be done. Apart from that, the other tasks don't vary a lot from component to component. The "@dot" task takes care of the compiling. "gather.bin.parts" seems to create the component hierarchy structure (copies needed files into a destination folder, that will be packaged into a jar at some point).
  • In the current Eclipse plugin, the C part of Eclipse (the loader) is extracted from org.eclipse.platform. Then it gets patched (to set proper CFLAGS etc). The loader is responsible for setting the correct Gecko directory (for the internal browser), so this may interfere somehow.
  • Eclipse Tasks:
    • Fix Eclipse for x86
    • Remove the last compiled classes
    • Fix the internal browser support
  • Future Improvements:
    • Unbundle lucene-analysis, jetty and tomcat-jasper.
    • Do something about ant tasks (optional)