Hi,
* Matt Whitlock <[email protected]> [2010-08-10 16:33]:
> 3. Remove from build.xml the steps that handle symlinking to
> dependencies. (The system-installed dependencies in Gentoo do not have OSGi
> metadata, so we're forced to set up unpacked bundles in Eclipse's plugins
> directory that contain the OSGi metadata and symlinks to the system-installed
> JARs.)
That's unfortunate.
> 5. Strip the building of the SWT native libraries from build.xml since
> SWT is installed independently on Gentoo.
That could be tricky if the system SWT isn't the same level but if it
works ... :)
> 7. Remove the doc plugins if the user has the "doc" USE flag disabled.
Do you also patch them out of the features that include them?
> 9. Create the plugins for the external dependencies by copying the
> manifests from dependencyManifests and symlinking to the system-installed
> JARs. (Getting this to work requires a relatively great amount of effort to
> fix up all the build.xml files.)
Yeah, the lack of OSGi-ified dependencies will always be a PITA.
> If it weren't for your efforts with Eclipse Build, building Eclipse
> would be completely impossible for anyone lacking intimate internal
> knowledge of PDE Build, Equinox, and P2.
We're glad it's useful for you :)
> - "org.hamcrest.core", new VersionRange("[1.1.0,2.0.0)"),
> null, "org.hamcrest.core.source", "source-bundle/",
> JUnitPreferencesConstants.HAMCREST_CORE_JAVADOC); //$NON-NLS-1$ //$NON-NLS-2$
> //$NON-NLS-3$ //$NON-NLS-4$
> + "org.hamcrest.core", new VersionRange("[1.1.0,2.0.0)"),
> "hamcrest-core.jar", "org.hamcrest.core.source", "source-bundle/",
> JUnitPreferencesConstants.HAMCREST_CORE_JAVADOC); //$NON-NLS-1$ //$NON-NLS-2$
> //$NON-NLS-3$ //$NON-NLS-4$
This will likely have to remain a Gentoo-local patch.
> -LFLAGS = ${M_ARCH} -shared -fpic -Wl,--export-dynamic
> -CFLAGS = ${M_ARCH} -g -s -Wall\
> +LFLAGS = ${M_ARCH} -shared -Wl,-soname=$(PROGRAM_SONAME) -fpic
> -Wl,--export-dynamic
> +CFLAGS += ${M_ARCH} -Wall\
> -fpic \
> -DLINUX \
> -DMOZILLA_FIX \
> @@ -95,10 +96,10 @@
> $(CC) $(CFLAGS) -c ../eclipseNix.c -o eclipseNix.o
>
> $(EXEC): $(MAIN_OBJS) $(COMMON_OBJS)
> - $(CC) ${M_ARCH} -o $(EXEC) $(MAIN_OBJS) $(COMMON_OBJS) $(LIBS)
> + $(CC) ${M_ARCH} $(LDFLAGS) -o $(EXEC) $(MAIN_OBJS) $(COMMON_OBJS)
> $(LIBS)
>
> $(DLL): $(DLL_OBJS) $(COMMON_OBJS)
> - $(CC) $(LFLAGS) -o $(DLL) $(DLL_OBJS) $(COMMON_OBJS) $(LIBS)
> + $(CC) $(LDFLAGS) $(LFLAGS) -o $(DLL) $(DLL_OBJS) $(COMMON_OBJS) $(LIBS)
Have you considered offering this to the Equinox team? Andrew Niefer is
a good guy and will take patches that make sense.
Thanks for the explanation, Matt.
Andrew
_______________________________________________
linuxtools-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/linuxtools-dev