Ebuilds Notes

From Elvanör's Technical Wiki
Revision as of 14:51, 2 November 2007 by Elvanor (talk | contribs)
Jump to navigation Jump to search

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).
  • Eclipse Tasks:
    • Update to Eclipse 3.3.1
    • Unbundle the rest of the dependencies (jars): lucene. jetty and tomcat-jasper will stay bundled for now.
    • Make all the changes as patches
    • Remove the last compiled classes
    • Fix the internal browser support
    • Do something about ant tasks (optional)