diff options
author | Sven Gothel <[email protected]> | 2012-03-06 19:52:11 +0100 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2012-03-06 19:52:11 +0100 |
commit | cb966d7feb89dd1ad811502c3f2aa1d37a503329 (patch) | |
tree | 4e2d5ebc3724be6961f99e97b39370f14e9ad8c9 | |
parent | bf03a3c4db9550f890e7ea5b0b46962ecaa66a92 (diff) |
cpptasks: Cleanup patch file and move single patches to obsolete for clarification
-rw-r--r-- | make/lib/archive/cpptasks/cpptasks-1.0b5-accumulated.patch | 233 | ||||
-rw-r--r-- | make/lib/archive/cpptasks/cpptasks-1.0b5.patches.txt | 4 | ||||
-rw-r--r-- | make/lib/archive/cpptasks/obsolete/cpptasks-1.0b5-darwin.patch (renamed from make/lib/archive/cpptasks/cpptasks-1.0b5-darwin.patch) | 0 | ||||
-rw-r--r-- | make/lib/archive/cpptasks/obsolete/cpptasks-1.0b5-gcclinker.patch (renamed from make/lib/archive/cpptasks/cpptasks-1.0b5-gcclinker.patch) | 0 | ||||
-rw-r--r-- | make/lib/cpptasks.jar | bin | 364220 -> 364220 bytes |
5 files changed, 8 insertions, 229 deletions
diff --git a/make/lib/archive/cpptasks/cpptasks-1.0b5-accumulated.patch b/make/lib/archive/cpptasks/cpptasks-1.0b5-accumulated.patch index 65ec9ae..4965a22 100644 --- a/make/lib/archive/cpptasks/cpptasks-1.0b5-accumulated.patch +++ b/make/lib/archive/cpptasks/cpptasks-1.0b5-accumulated.patch @@ -1,6 +1,6 @@ diff -Nur cpptasks-1.0b5/src/main/java/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java cpptasks-1.0b5-patched/src/main/java/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java --- cpptasks-1.0b5/src/main/java/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java 2008-04-02 19:26:44.000000000 +0200 -+++ cpptasks-1.0b5-patched/src/main/java/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java 2012-03-06 11:23:42.403976192 +0100 ++++ cpptasks-1.0b5-patched/src/main/java/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java 2012-03-06 19:39:46.739351056 +0100 @@ -59,7 +59,7 @@ args.addElement("-bundle"); } else { @@ -12,7 +12,7 @@ diff -Nur cpptasks-1.0b5/src/main/java/net/sf/antcontrib/cpptasks/gcc/AbstractLd } diff -Nur cpptasks-1.0b5/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker.java cpptasks-1.0b5-patched/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker.java --- cpptasks-1.0b5/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker.java 2008-04-02 19:26:44.000000000 +0200 -+++ cpptasks-1.0b5-patched/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker.java 2012-03-06 19:17:27.588492284 +0100 ++++ cpptasks-1.0b5-patched/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker.java 2012-03-06 19:42:21.241385093 +0100 @@ -17,6 +17,8 @@ package net.sf.antcontrib.cpptasks.gcc; import java.io.File; @@ -22,17 +22,14 @@ diff -Nur cpptasks-1.0b5/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker. import net.sf.antcontrib.cpptasks.CUtil; import net.sf.antcontrib.cpptasks.compiler.LinkType; -@@ -32,10 +34,11 @@ - ".dll", ".so", ".sl"}; +@@ -33,9 +35,10 @@ private static final String[] libtoolObjFiles = new String[]{".fo", ".a", ".lib", ".dll", ".so", ".sl"}; -- private static String[] linkerOptions = new String[]{"-bundle", + private static String[] linkerOptions = new String[]{"-bundle", - "-dynamiclib", "-nostartfiles", "-nostdlib", "-prebind", "-s", -+ private static String[] linkerOptions = new String[] {"-bundle", + "-dynamiclib", "-nostartfiles", "-nostdlib", "-prebind", "-noprebind", "-s", "-static", "-shared", "-symbolic", "-Xlinker", -- "--export-all-symbols", "-static-libgcc",}; -+ "--export-all-symbols", "-static-libgcc"}; + "--export-all-symbols", "-static-libgcc",}; + private static String[] darwinLinkerOptions = new String[]{"-arch", "-weak_framework", "-lazy_framework", "-weak_library" }; private static final GccLinker dllLinker = new GccLinker("gcc", objFiles, discardFiles, "lib", ".so", false, new GccLinker("gcc", objFiles, @@ -66,227 +63,9 @@ diff -Nur cpptasks-1.0b5/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker. if (!known) { buf.setLength(0); buf.append("-Wl,"); -diff -Nur cpptasks-1.0b5/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker.java.orig cpptasks-1.0b5-patched/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker.java.orig ---- cpptasks-1.0b5/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker.java.orig 1970-01-01 01:00:00.000000000 +0100 -+++ cpptasks-1.0b5-patched/src/main/java/net/sf/antcontrib/cpptasks/gcc/GccLinker.java.orig 2012-03-06 11:23:42.403976192 +0100 -@@ -0,0 +1,214 @@ -+/* -+ * -+ * Copyright 2002-2004 The Ant-Contrib project -+ * -+ * Licensed under the Apache License, Version 2.0 (the "License"); -+ * you may not use this file except in compliance with the License. -+ * You may obtain a copy of the License at -+ * -+ * http://www.apache.org/licenses/LICENSE-2.0 -+ * -+ * Unless required by applicable law or agreed to in writing, software -+ * distributed under the License is distributed on an "AS IS" BASIS, -+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -+ * See the License for the specific language governing permissions and -+ * limitations under the License. -+ */ -+package net.sf.antcontrib.cpptasks.gcc; -+import java.io.File; -+import java.util.Vector; -+import java.util.HashSet; -+import java.util.Arrays; -+ -+import net.sf.antcontrib.cpptasks.CUtil; -+import net.sf.antcontrib.cpptasks.compiler.LinkType; -+import net.sf.antcontrib.cpptasks.compiler.Linker; -+/** -+ * Adapter for the GCC linker -+ * -+ * @author Adam Murdoch -+ */ -+public class GccLinker extends AbstractLdLinker { -+ private static final String[] discardFiles = new String[0]; -+ private static final String[] objFiles = new String[]{".o", ".a", ".lib", -+ ".dll", ".so", ".sl"}; -+ private static final String[] libtoolObjFiles = new String[]{".fo", ".a", -+ ".lib", ".dll", ".so", ".sl"}; -+ private static String[] linkerOptions = new String[]{"-bundle", -+ "-dynamiclib", "-nostartfiles", "-nostdlib", "-prebind", "-noprebind", "-s", -+ "-static", "-shared", "-symbolic", "-Xlinker", -+ "--export-all-symbols", "-static-libgcc",}; -+ private static String[] darwinLinkerOptions = new String[]{"-arch", "-weak_framework", "-lazy_framework", "-weak_library" }; -+ private static final GccLinker dllLinker = new GccLinker("gcc", objFiles, -+ discardFiles, "lib", ".so", false, new GccLinker("gcc", objFiles, -+ discardFiles, "lib", ".so", true, null)); -+ private static final GccLinker instance = new GccLinker("gcc", objFiles, -+ discardFiles, "", "", false, null); -+ private static final GccLinker machBundleLinker = new GccLinker("gcc", -+ objFiles, discardFiles, "lib", ".bundle", false, null); -+ private static final GccLinker machDllLinker = new GccLinker("gcc", -+ objFiles, discardFiles, "lib", ".dylib", false, null); -+ public static GccLinker getInstance() { -+ return instance; -+ } -+ private File[] libDirs; -+ protected GccLinker(String command, String[] extensions, -+ String[] ignoredExtensions, String outputPrefix, -+ String outputSuffix, boolean isLibtool, GccLinker libtoolLinker) { -+ super(command, "-dumpversion", extensions, ignoredExtensions, -+ outputPrefix, outputSuffix, isLibtool, libtoolLinker); -+ } -+ protected void addImpliedArgs(boolean debug, LinkType linkType, Vector args) { -+ super.addImpliedArgs(debug, linkType, args); -+ if (getIdentifier().indexOf("mingw") >= 0) { -+ if (linkType.isSubsystemConsole()) { -+ args.addElement("-mconsole"); -+ } -+ if (linkType.isSubsystemGUI()) { -+ args.addElement("-mwindows"); -+ } -+ } -+ } -+ /** -+ * Allows drived linker to decorate linker option. Override by GccLinker to -+ * prepend a "-Wl," to pass option to through gcc to linker. -+ * -+ * @param buf -+ * buffer that may be used and abused in the decoration process, -+ * must not be null. -+ * @param arg -+ * linker argument -+ */ -+ public String decorateLinkerOption(StringBuffer buf, String arg) { -+ String decoratedArg = arg; -+ if (arg.length() > 1 && arg.charAt(0) == '-') { -+ switch (arg.charAt(1)) { -+ // -+ // passed automatically by GCC -+ // -+ case 'g' : -+ case 'f' : -+ case 'F' : -+ /* Darwin */ -+ case 'm' : -+ case 'O' : -+ case 'W' : -+ case 'l' : -+ case 'L' : -+ case 'u' : -+ case 'v' : -+ break; -+ default : -+ boolean known = false; -+ HashSet allLinkerOptions = new HashSet(); -+ allLinkerOptions.addAll(Arrays.asList(linkerOptions)); -+ if (isDarwin()) { -+ allLinkerOptions.addAll(Arrays.asList(darwinLinkerOptions)); -+ } -+ known = allLinkerOptions.contains(arg); -+ -+ if (!known) { -+ buf.setLength(0); -+ buf.append("-Wl,"); -+ buf.append(arg); -+ decoratedArg = buf.toString(); -+ } -+ break; -+ } -+ } -+ return decoratedArg; -+ } -+ /** -+ * Returns library path. -+ * -+ */ -+ public File[] getLibraryPath() { -+ if (libDirs == null) { -+ // -+ // construct gcc lib path from machine and version -+ // -+ StringBuffer buf = new StringBuffer("/lib/gcc-lib/"); -+ buf.append(GccProcessor.getMachine()); -+ buf.append('/'); -+ buf.append(GccProcessor.getVersion()); -+ // -+ // build default path from gcc and system /lib and /lib/w32api -+ // -+ String[] impliedLibPath = new String[]{buf.toString(), -+ "/lib/w32api", "/lib"}; -+ // -+ // read gcc specs file for other library paths -+ // -+ String[] specs = GccProcessor.getSpecs(); -+ String[][] libpaths = GccProcessor.parseSpecs(specs, "*link:", -+ new String[]{"%q"}); -+ String[] libpath; -+ if (libpaths[0].length > 0) { -+ libpath = new String[libpaths[0].length + 3]; -+ int i = 0; -+ for (; i < libpaths[0].length; i++) { -+ libpath[i] = libpaths[0][i]; -+ } -+ libpath[i++] = buf.toString(); -+ libpath[i++] = "/lib/w32api"; -+ libpath[i++] = "/lib"; -+ } else { -+ // -+ // if a failure to find any matches then -+ // use some default values for lib path entries -+ libpath = new String[]{"/usr/local/lib/mingw", -+ "/usr/local/lib", "/usr/lib/w32api", "/usr/lib/mingw", -+ "/usr/lib", buf.toString(), "/lib/w32api", "/lib"}; -+ } -+ for (int i = 0; i < libpath.length; i++) { -+ if (libpath[i].indexOf("mingw") >= 0) { -+ libpath[i] = null; -+ } -+ } -+ // -+ // if cygwin then -+ // we have to prepend location of gcc32 -+ // and .. to start of absolute filenames to -+ // have something that will exist in the -+ // windows filesystem -+ if (GccProcessor.isCygwin()) { -+ GccProcessor.convertCygwinFilenames(libpath); -+ } -+ // -+ // check that remaining entries are actual directories -+ // -+ int count = CUtil.checkDirectoryArray(libpath); -+ // -+ // populate return array with remaining entries -+ // -+ libDirs = new File[count]; -+ int index = 0; -+ for (int i = 0; i < libpath.length; i++) { -+ if (libpath[i] != null) { -+ libDirs[index++] = new File(libpath[i]); -+ } -+ } -+ } -+ return libDirs; -+ } -+ public Linker getLinker(LinkType type) { -+ if (type.isStaticLibrary()) { -+ return GccLibrarian.getInstance(); -+ } -+ if (type.isPluginModule()) { -+ if (isDarwin()) { -+ return machBundleLinker; -+ } else { -+ return dllLinker; -+ } -+ } -+ if (type.isSharedLibrary()) { -+ if (isDarwin()) { -+ return machDllLinker; -+ } else { -+ return dllLinker; -+ } -+ } -+ return instance; -+ } -+} diff -Nur cpptasks-1.0b5/src/test/java/net/sf/antcontrib/cpptasks/gcc/TestAbstractLdLinker.java cpptasks-1.0b5-patched/src/test/java/net/sf/antcontrib/cpptasks/gcc/TestAbstractLdLinker.java --- cpptasks-1.0b5/src/test/java/net/sf/antcontrib/cpptasks/gcc/TestAbstractLdLinker.java 2008-04-02 19:26:44.000000000 +0200 -+++ cpptasks-1.0b5-patched/src/test/java/net/sf/antcontrib/cpptasks/gcc/TestAbstractLdLinker.java 2012-03-06 11:23:42.571974125 +0100 ++++ cpptasks-1.0b5-patched/src/test/java/net/sf/antcontrib/cpptasks/gcc/TestAbstractLdLinker.java 2012-03-06 19:39:46.891349119 +0100 @@ -73,9 +73,8 @@ pluginOutType.setValue("shared"); pluginType.setOutputType(pluginOutType); diff --git a/make/lib/archive/cpptasks/cpptasks-1.0b5.patches.txt b/make/lib/archive/cpptasks/cpptasks-1.0b5.patches.txt index bd496c1..c8136b1 100644 --- a/make/lib/archive/cpptasks/cpptasks-1.0b5.patches.txt +++ b/make/lib/archive/cpptasks/cpptasks-1.0b5.patches.txt @@ -2,5 +2,5 @@ cpptasks-1.0b5-accumulated.patch - The accumulated patch, you only need to apply The single original patches: -cpptasks-1.0b5-darwin.patch - Make OSX/Darwin work (linker options etc) -cpptasks-1.0b5-gcclinker.patch - Make crosscompilation work (--sysroot .. etc) +obsolete/cpptasks-1.0b5-darwin.patch - Make OSX/Darwin work (linker options etc) +obsolete/cpptasks-1.0b5-gcclinker.patch - Make crosscompilation work (--sysroot .. etc) diff --git a/make/lib/archive/cpptasks/cpptasks-1.0b5-darwin.patch b/make/lib/archive/cpptasks/obsolete/cpptasks-1.0b5-darwin.patch index 8af11be..8af11be 100644 --- a/make/lib/archive/cpptasks/cpptasks-1.0b5-darwin.patch +++ b/make/lib/archive/cpptasks/obsolete/cpptasks-1.0b5-darwin.patch diff --git a/make/lib/archive/cpptasks/cpptasks-1.0b5-gcclinker.patch b/make/lib/archive/cpptasks/obsolete/cpptasks-1.0b5-gcclinker.patch index 0eb4c76..0eb4c76 100644 --- a/make/lib/archive/cpptasks/cpptasks-1.0b5-gcclinker.patch +++ b/make/lib/archive/cpptasks/obsolete/cpptasks-1.0b5-gcclinker.patch diff --git a/make/lib/cpptasks.jar b/make/lib/cpptasks.jar Binary files differindex 7324a3e..a97e636 100644 --- a/make/lib/cpptasks.jar +++ b/make/lib/cpptasks.jar |