Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:anosek
eclipse
ecj-bootstrap.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File ecj-bootstrap.spec of Package eclipse
# # spec file for package ecj-bootstrap (Version 0.755) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine # package are under the same license as the package itself. # # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild Name: ecj-bootstrap BuildRequires: fastjar gcc-gij gcc-java libgcj-devel unzip zip %define eclipse_version 3.4 %define jarname eclipse-ecj License: Other uncritical OpenSource License Group: Development/Libraries/Java AutoReqProv: on Summary: Eclipse Java Compiler Version: 0.755 Release: 71 Url: http//www.eclipse.org Group: Development/Libraries/Java Source0: eclipse-sourceBuild-srcIncluded-%{eclipse_version}.tar.bz2 Source1: manifest.ecj #Source2: strange-mandriva-bug.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build #BuildArchitectures: noarch #ExclusiveArch: %ix86 BuildArch: noarch Provides: eclipse-ecj = %{eclipse_version} %description This is the Eclipse Java Compiler, which is used in the java-1_4_2-gcj-compat-devel package %prep #<<< package descriptions end #>>> %prep %setup -c -T ecj-bootstrap tar -jxf %{SOURCE0} #<<< #>>> %build %build #>>> some useful functions ... used throughout bootstrap packages TARGET_DIR=`pwd` CLASSPATH_ORIG="$CLASSPATH" LIB_GCJ="`ls %{_javadir}/libgcj-*.jar`" #>>> delete binary file and files not needed TARGET_DIR=`pwd` function delBinaryFiles() { set +x echo deleting binary files ... for file in `find . -name "*.class" -o -name "*.jar" -o -name "*DELETED-BY-PACKAGER*"` do rm -rf $file done set -x } #<<< #>>> make a string with all jar files found in target folder that can be used for a classpath string # string is saved in JAR_CLASSPATH function mkTargetClasspath() { set +x JAR_CLASSPATH="" for file in `find %{_javadir} -name "*.jar"` do JAR_CLASSPATH=$file:$JAR_CLASSPATH done set -x } #<<< #>>> compiles all *.java file in the current directory tree # uses mkTargetClasspath for CLASSPATH variable # uses LIB_GCJ for CLASSPATH function compileFiles() { mkTargetClasspath set +x COMPILE_CLASSPATH_PATH=.:${JAR_CLASSPATH} echo using: $COMPILER_COMMAND $COMPILE_CLASSPATH_PATH $$file export LANG=en_US find . -name "*.java" -exec $COMPILER_COMMAND $COMPILE_CLASSPATH_PATH {} + # for file in `find . -name "*.java"` # do # echo -e "$COMPILER_COMMAND $COMPILE_CLASSPATH_PATH $file ... \c" # $COMPILER_COMMAND $COMPILE_CLASSPATH_PATH $file # # check for errors # if [ $? != 0 ] # then # echo ERROR # exit 1; # fi # echo done # done set -x } #<<< #>>> make jar archive # PARAM#1: name of jar archive (without .jar suffix) # uses $TARGET_DIR to move created jar to function mkJar() { find -name "version.txt" -or -name "*.class" -or -name "*.properties" -or -name "*.rsc" -or -name "*manifest*" |\ xargs /usr/bin/fastjar -m manifest.* -cf ${1}.jar ; mv ${1}.jar $TARGET_DIR } #<<< COMPILER_COMMAND="gij -jar %{_javadir}/%{jarname}.jar -cp " #<<< end functions delBinaryFiles #>>> ecj compiler # we do this twice ... so let's create a function: function compileEcj() { pushd jdtcoresrc/src mkdir tmp cd tmp unzip ../ecj.zip # we have to delete the following class ... it needs ant to compile ... it will be left in later rm ./org/eclipse/jdt/core/JDTCompilerAdapter.java # copy the manifest ... cp %{SOURCE1} . # Mandriva does not compile without problems ... # /me ducks: # %if %{?mandriva_release:1}0 # if [ $1 = "stage1" ] # then # cat %{SOURCE2} | patch -p0 # fi # %endif compileFiles mkJar %{jarname} cd .. rm -r tmp popd } # compile with gcj COMPILER_COMMAND="gcj -Wno-deprecated -findirect-dispatch -Bsymbolic -C --classpath " compileEcj stage1 # compile with ecj COMPILER_COMMAND="gij -jar $TARGET_DIR/%{jarname}.jar -cp " compileEcj stage2 #>>> wrapper script # wrapper script to call ecj: # ecj script: mkdir -p $RPM_BUILD_ROOT/%{_bindir} cat >>$RPM_BUILD_ROOT/%{_bindir}/ecj<<EOF #!/bin/bash # remove double bootclasspath entries: BOOTCLASSPATH="" BOOTCLASSPATH=\$(find %{_javadir} -name "libgcj*.jar" -print | tr "\n" ":"):\$(find %{_javadir}/ -name "glibj*.jar" -print | tr "\n" ":") OPTIONS="" while [ \$# -gt 0 ] do if [ \$1 = "-bootclasspath" ] then BOOTCLASSPATH=\$2:\$BOOTCLASSPATH shift shift continue fi OPTIONS="\$OPTIONS \$1" shift done GIJ_EXECUTABLE=\$(ls /usr/bin/gij* | tail -n1) if [ -e /usr/bin/java ] then exec /usr/bin/java -jar %{_javadir}/%{jarname}.jar -bootclasspath \$BOOTCLASSPATH \$OPTIONS elif [ -e /usr/bin/cacao ] then exec /usr/bin/cacao -jar %{_javadir}/%{jarname}.jar -bootclasspath \$BOOTCLASSPATH \$OPTIONS elif [ -e ] then exec \$GIJ_EXECUTABLE -jar %{_javadir}/%{jarname}.jar -bootclasspath \$BOOTCLASSPATH \$OPTIONS else echo "no java vm found :(" exit -1 fi EOF #<<< wrapper script # build a jar with a correct manifest #mkdir manifest-tmp #pushd manifest-tmp #/usr/bin/fastjar -xf $TARGET_DIR/%{jarname}.jar #rm -r META-INF #/usr/bin/fastjar -m %{SOURCE1} -cf ../%{jarname}.jar * #popd # #<<< ecj compiler end #<<< #>>> install %install mkdir -p $RPM_BUILD_ROOT/%{_javadir} cp %{jarname}.jar $RPM_BUILD_ROOT/%{_javadir} ln -sf %{_javadir}/%{jarname}.jar $RPM_BUILD_ROOT/%{_javadir}/jdtcore.jar #<<< install end %clean rm -rf $RPM_BUILD_ROOT #>>> files %files %defattr(-,root,root) %{_javadir}/* %attr(0755,root,root) %{_bindir}/* #<<< # vim:fdm=marker:foldmarker=#>>>,#<<<:foldcolumn=6:foldlevel=42: %changelog * Mon Jul 02 2007 - dbornkessel@suse.de - updated to sources contained in eclipse 3.3 final version * Wed May 30 2007 - dbornkessel@suse.de - renamed package and sub-packages to eclipse-archdep-*; the eclipse-* packages are now noarch packges - split eclipse-platform in eclipse-archdep-platform and eclipse-archdep-platform-commons - moved arch dependent files to %%{_libdir}/eclipse - update to 3.3RC2 (Europa) * Wed May 30 2007 - dbornkessel@suse.de - update to version 0.755 which is included in eclipse 3.3 * Fri Mar 30 2007 - rguenther@suse.de - add unzip BuildRequires * Tue Nov 21 2006 - dbornkessel@suse.de - adjusted x86_64 build to function with updated jpackage-utils package * Wed Nov 15 2006 - dbornkessel@suse.de - corrections in eclipse package only * Wed Nov 15 2006 - dbornkessel@suse.de - correct wrong file lists (Bug #220245) * Sat Nov 11 2006 - aj@suse.de - Fix permissions of doc files. * Wed Oct 04 2006 - dbornkessel@suse.de - update of eclipse archive to 3.2.1 / ecj 0.670 * Thu Sep 28 2006 - dbornkessel@suse.de - update to version 3.2.1 - delete redundant BuildRequires * Thu Sep 28 2006 - ro@suse.de - added gcc-gij to BuildRequires * Mon Sep 18 2006 - dbornkessel@suse.de - added ecj-bootstrap spec * Mon Sep 18 2006 - dbornkessel@suse.de - first version of ecj-bootstrap package * Thu Jul 27 2006 - dbornkessel@suse.de - builds now on i386, ppc, x86_64 and ia64 * Wed Jul 05 2006 - dbornkessel@suse.de - enabled x86_64 and ia64 builds * Fri Mar 10 2006 - dbornkessel@suse.de - enabled ppc build * Wed Jan 25 2006 - mls@suse.de - converted neededforbuild to BuildRequires * Wed Jan 18 2006 - dbornkessel@suse.de - update to 3.1.1 * Thu Sep 29 2005 - dmueller@suse.de - add norootforbuild * Tue Aug 23 2005 - skh@suse.de - let eclipse require eclipse-gtk2 so that there's never only the README installed [#106699] * Tue Aug 09 2005 - hvogel@suse.de - make eclipse binary executeable again [Bug #102675] * Fri Aug 05 2005 - skh@suse.de - update to 3.1 final - clean up specfile * Tue Apr 19 2005 - mmj@suse.de - NULL terminate functions that are supposed to be NULL terminated * Mon Feb 21 2005 - skh@suse.de - update to version 3.0.1 * Tue Sep 28 2004 - skh@suse.de - Improved Provides: of eclipse-platform to enable update from old eclipse package and fix #46308 * Mon Sep 20 2004 - ro@suse.de - added main package containing only a readme * Thu Sep 16 2004 - skh@suse.de - Remove bogus Requires: lucene * Sat Sep 11 2004 - skh@suse.de - update to 3.0 (i386 only for now) - use JPackage package layout, splitting into the following subpackages: - eclipse-platform - eclipse-gtk2 - eclipse-jdt - eclipse-source - eclipse-pde - eclipse-scripts - libswt3-gtk2 * Thu Jul 08 2004 - skh@suse.de - Remove java2 and add BEAJava2 to neededforbuild to fix build (#42849) - source setJava from eclipse wrapper script if no java in $PATH * Thu May 13 2004 - skh@suse.de - update to version 2.1.3 * Fri Apr 23 2004 - skh@suse.de - Allow SWT to use deprecated gtk functions until a real fix is available from the eclipse project. * Mon Mar 15 2004 - skh@suse.de - Really fix #34496 (not only create the needed file, but also install it...) - Removed eclipse.desktop file from sources, all done automagically now by the %%suse_update_desktop_file macro. * Tue Feb 17 2004 - skh@suse.de - use gnome2-devel-packages in neededforbuild - Replace buggy wrapper script with a better one (#34496) - Fixed problem with correct generation of local workspace configuration ("Completing install..." only once now, not every time eclipse is started, #34496) * Mon Feb 16 2004 - skh@suse.de - update to version 2.1.2 * Thu Feb 12 2004 - ro@suse.de - added gconf2 to neededforbuild * Sat Jan 10 2004 - adrian@suse.de - build as user * Thu Oct 16 2003 - skh@suse.de - fix build (use libbonobo instead of bonobo-activation) * Tue Sep 02 2003 - skh@suse.de - fix LD_LIBRARY_PATH in wrapper script * Mon Sep 01 2003 - adrian@suse.de - add Categories * Mon Sep 01 2003 - skh@suse.de - added .desktop file and icon * Sat Aug 23 2003 - ro@suse.de - jakarta-ant was renamed to apache-ant * Mon Aug 18 2003 - skh@suse.de - fix build with non-SUN javas - be a bigpack * Wed Jul 30 2003 - ro@suse.de - fix build (help to find glib in /opt/gnome) * Mon Jul 28 2003 - skh@suse.de - initial package
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor