|
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721359 is a reply to message #1721181] |
Tue, 26 January 2016 19:54 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
Jonah Graham wrote on Mon, 25 January 2016 14:35Hi Dale,
I am sorry to hear you are stuck with Carbon on MacOSX. I don't know much about Mac dev so not sure I could even recommend upgrading your hardware if I wanted to.
Also, sorry you are finding dead links on the community wikis (I assume), I am sure any wiki updates that you performed as you found dead links on our open source project would be most appreciated!
In the meantime I think what you are looking for source wise is https://git.eclipse.org/c/cdt/org.eclipse.cdt.git/tree/cross/org.eclipse.cdt.build.crossgcc that has all the history moved to CVS going back to 2009 when it was first added (see https://git.eclipse.org/c/cdt/org.eclipse.cdt.git/commit/cross/org.eclipse.cdt.build.crossgcc?id=1042ed5f25a54495dd18079515e8b07b4c4d1bf2)
Jonah
Yes, I've looked at this link but found it useless as no way to download anything from it (literally).
Intelligent repo's usually post a git or svn command to obtain the code or provide a downloadable archive but git.eclipse.org doesn't seem to be that intelligent.
Without an exact git command or a downloadable archive I can't get this source and the page offers no information how to get this block of code which only adds to my frustration.
Also, I can't tell if this is the exact source I am looking for because it's either a different version or it's incomplete.
I've managed to generate the java files from the existing archive but the issue now is a project to build it and putt al the crap back together.
It would have been easier if eclipse would decomplie the class files for me but javap and editing to remove the line comments gave me the files.
Frustration and anger is growing because such a simple process shouldn't be so friggin complicated.
I've created a plugin project, added the java source code and no matter what I do it never generates a jar file or gives me anything usable.
I tried to package the project myself using jar, eclipse complains about no signature and no checksum and refuses to use the plugin.
It's not that I can't program, my issue is getting this plugin fixed and until I can build this basic plugin (before modification) eclipse is nothing more than a waste of disk space.
I can give you the plugin project I made (can't confirm it's made correctly as it doesn't build anything) along with the original plugin.jar.
You can use the jar to extract and make java sources if you don't trust my sources, use the already minor modified java source files and make a new project or fix whatever is wrong with my existing project.
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721362 is a reply to message #1721359] |
Tue, 26 January 2016 20:16 |
Jonah Graham Messages: 416 Registered: June 2014 |
Senior Member |
|
|
Quote:Yes, I've looked at this link but found it useless as no way to download anything from it (literally).
Intelligent repo's usually post a git or svn command to obtain the code or provide a downloadable archive but git.eclipse.org doesn't seem to be that intelligent.
It is right there on the Summary page. github does the same thing btw, I provided a link to a path within a tree.
This is what is on the summary page:
Clone
git clone git://git.eclipse.org/gitroot/cdt/org.eclipse.cdt.git
git clone ssh://git.eclipse.org/gitroot/cdt/org.eclipse.cdt.git
git clone http://git.eclipse.org/gitroot/cdt/org.eclipse.cdt.git
Here is the exact same thing on github, perhaps you are more familiar with it: https://github.com/eclipse/cdt/tree/master/cross
Quote:Also, I can't tell if this is the exact source I am looking for because it's either a different version or it's incomplete.
Why don't you tell us what version (Exactly!) you are looking for. I pointed you at a git repo, so ALL versions are there.
Quote: I've managed to generate the java files from the existing archive but the issue now is a project to build it and putt al the crap back together.
Describing the project as "crap" is not likely to increase the amount of responses you get.
Quote: It would have been easier if eclipse would decomplie the class files for me but javap and editing to remove the line comments gave me the files.
Not sure why you are decompiling, but there is an excellent decompilation plug-in: http://jd.benow.ca/
Quote:Frustration and anger is growing because such a simple process shouldn't be so friggin complicated.
Once again I am sorry to hear that. It should not be so complicated, but CDT alone is nearly 2 million LOC. You should be able to build and test all of CDT with a simple "mvn verify" and no setup besides setting up Java and maven!
Quote: I've created a plugin project, added the java source code and no matter what I do it never generates a jar file or gives me anything usable.
Trying to manually recreate a plug-in from decompiled sources is an exercise in futility. Clone the git repo and go from there.
BTW I just checked, I don't think there was ever a CDT that officially supported Eclipse 4.0. Your choices are less than 3.8, or greater than 4.2.
I wished I had asked this earlier, why are you stuck on old mac hardware?
|
|
|
|
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721379 is a reply to message #1721362] |
Tue, 26 January 2016 22:34 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
Jonah Graham wrote on Tue, 26 January 2016 20:16Quote:Yes, I've looked at this link but found it useless as no way to download anything from it (literally).
Intelligent repo's usually post a git or svn command to obtain the code or provide a downloadable archive but git.eclipse.org doesn't seem to be that intelligent.
It is right there on the Summary page. github does the same thing btw, I provided a link to a path within a tree.
This is what is on the summary page:
Clone
git clone git://git.eclipse.org/gitroot/cdt/org.eclipse.cdt.git
git clone ssh://git.eclipse.org/gitroot/cdt/org.eclipse.cdt.git
git clone http://git.eclipse.org/gitroot/cdt/org.eclipse.cdt.git
Here is the exact same thing on github, perhaps you are more familiar with it: https://github.com/eclipse/cdt/tree/master/cross
Quote:Also, I can't tell if this is the exact source I am looking for because it's either a different version or it's incomplete.
Why don't you tell us what version (Exactly!) you are looking for. I pointed you at a git repo, so ALL versions are there.
Quote: I've managed to generate the java files from the existing archive but the issue now is a project to build it and putt al the crap back together.
Describing the project as "crap" is not likely to increase the amount of responses you get.
Quote: It would have been easier if eclipse would decomplie the class files for me but javap and editing to remove the line comments gave me the files.
Not sure why you are decompiling, but there is an excellent decompilation plug-in: [removed to post]
Quote:Frustration and anger is growing because such a simple process shouldn't be so friggin complicated.
Once again I am sorry to hear that. It should not be so complicated, but CDT alone is nearly 2 million LOC. You should be able to build and test all of CDT with a simple "mvn verify" and no setup besides setting up Java and maven!
Quote: I've created a plugin project, added the java source code and no matter what I do it never generates a jar file or gives me anything usable.
Trying to manually recreate a plug-in from decompiled sources is an exercise in futility. Clone the git repo and go from there.
BTW I just checked, I don't think there was ever a CDT that officially supported Eclipse 4.0. Your choices are less than 3.8, or greater than 4.2.
I wished I had asked this earlier, why are you stuck on old mac hardware?
This is the plugin in question:
C/C++ GCC Cross Compiler Support 1.0.2.201202111925 org.eclipse.cdt.build.crossgcc.feature.group
This is the plugin I need to be able to reproduce that will install and work without complaints or errors.
My reference to "crap" is due to my frustration in trying to achieve my goal.
Have the JD plugin installed.
JD-Eclipse Plug-in 1.0.0 jd.ide.eclipse.feature.feature.group
When I first installed it it worked and I used it to generate the sources from the original jar but after an update it stopped working and when I try to revert the update it fails becuase it can't find a couple of plugins.
Now when I dbl-click a .class file (or right-click-->JD Class File Viewer) it says no source associated and the same unusable decomp from javap so it must not be turned on and I can't find anything in the project properties related to enabling it, removing, reinstalling doesn't fix it so something from the update is incompatible.
I'm not even going to go into the issues related to orphaned configurations, I've chosen to ignore this warning and eclipse provides no way to easily remove orphaned configs and installation of the offending plugin is not possible according to the message I get when I try.
|
|
|
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721390 is a reply to message #1721385] |
Wed, 27 January 2016 02:30 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
Your git clone command worked and download a pile.
Your git checkout doesn't check out anything.
exact commands issued
dalecnc:/Volumes/Storage/eclipse-git root# git clone git://git.eclipse.org/gitroot/cdt/org.eclipse.cdt.git
Cloning into 'org.eclipse.cdt'...
remote: Counting objects: 570756, done.
remote: Compressing objects: 100% (26125/26125), done.
remote: Total 570756 (delta 16757), reused 0 (delta 0)
Receiving objects: 100% (570756/570756), 129.04 MiB | 440.00 KiB/s, done.
Resolving deltas: 100% (316554/316554), done.
Checking connectivity... done.
Checking out files: 100% (15318/15318), done.
dalecnc:/Volumes/Storage/arm_10.4/eclipse/git root# git checkout CDT_8_0_3
fatal: Not a git repository (or any parent up to mount point /Volumes/Storage)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
dalecnc:/Volumes/Storage/eclipse-git root# ls
org.eclipse.cdt
dalecnc:/Volumes/Storage/eclipse-git root#
I've deleted everything in preparation of valid commands.
[Updated on: Wed, 27 January 2016 03:22] Report message to a moderator
|
|
|
|
|
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721414 is a reply to message #1721400] |
Wed, 27 January 2016 10:03 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
Marc-Andre Laperle wrote on Wed, 27 January 2016 06:51Here's your curl command... I just assumed anyone would be OK with cloning a git repo at this point
curl -O http://git.eclipse.org/c/cdt/org.eclipse.cdt.git/snapshot/org.eclipse.cdt-CDT_8_0_3.tar.gz
Some progress WOO-HOO!!!!!
OK, expanded the archive and import with copy the projects, certainly a lot more than the eight I was told I needed so picked the following (added two)org.eclipse.cdt.build.crossgcc
org.eclipse.cdt.build.crossgcc-feature <-- thought this might be needed.
org.eclipse.cdt.core
org.eclipse.cdt.core.macosx <-- thought this might be needed.
org.eclipse.cdt.make.core
org.eclipse.cdt.make.ui
org.eclipse.cdt.managedbuilder.core
org.eclipse.cdt.managedbuilder.gnu.ui
org.eclipse.cdt.managedbuilder.ui
org.eclipse.cdt.ui
I executed a build-all and after quite some time it did it's thing, the only two projects that built without any errors or warnings were the following:org.eclipse.cdt.core.macosx
org.eclipse.cdt.build.crossgcc-feature
As advised i ignored the API errors and most of the warnings were related to dependancies so it looks like I can build cdt-8.0.3.
This is the contents of my current workspace:dalecnc:/Users/websrvr/Documents/workspace root# ls
.metadata org.eclipse.cdt.core org.eclipse.cdt.make.ui org.eclipse.cdt.managedbuilder.ui
org.eclipse.cdt.build.crossgcc org.eclipse.cdt.core.macosx org.eclipse.cdt.managedbuilder.core org.eclipse.cdt.ui
org.eclipse.cdt.build.crossgcc-feature org.eclipse.cdt.make.core org.eclipse.cdt.managedbuilder.gnu.ui
dalecnc:/Users/websrvr/Documents/workspace root#
dalecnc:/Users/websrvr/Documents/workspace root# mvn --version
Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 08:51:28-0500)
Maven home: /usr/local/maven
Java version: 1.5.0_19, vendor: Apple Computer, Inc.
Java home: /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home
Default locale: en_US, platform encoding: MacRoman
OS name: "mac os x", version: "10.4.11", arch: "ppc", family: "unix"
dalecnc:/Users/websrvr/Documents/workspace root# Where do I execute the "mvn clean package" command or is there something I need (or you want me) to do first to get maven working (installed in /usr/local/maven and path added to environment variable)?
[Updated on: Wed, 27 January 2016 10:22] Report message to a moderator
|
|
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721518 is a reply to message #1721512] |
Wed, 27 January 2016 22:22 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
Not entirely sure it successfully completedL[INFO] Using compile source roots from build.properties
[INFO]
[INFO] --- maven-resources-plugin:2.4.1:testResources (default-testResources) @ org.eclipse.cdt ---
[INFO] Using 'ISO-8859-1' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/websrvr/Documents/workspace/org.eclipse.cdt-CDT_8_0_3/releng/org.eclipse.cdt/src/test/resources
[INFO]
[INFO] --- tycho-packaging-plugin:0.13.0:package-plugin (default-package-plugin) @ org.eclipse.cdt ---
[INFO] Building jar: /Users/websrvr/Documents/workspace/org.eclipse.cdt-CDT_8_0_3/releng/org.eclipse.cdt/target/org.eclipse.cdt-8.0.2-SNAPSHOT.jar
[INFO]
[INFO] --- tycho-p2-plugin:0.13.0:p2-metadata (default-p2-metadata) @ org.eclipse.cdt ---
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building org.eclipse.cdt.core 5.3.2-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ org.eclipse.cdt.core ---
[INFO]
[INFO] --- tycho-packaging-plugin:0.13.0:build-qualifier (default-build-qualifier) @ org.eclipse.cdt.core ---
[INFO]
[INFO] --- tycho-packaging-plugin:0.13.0:validate-id (default-validate-id) @ org.eclipse.cdt.core ---
[INFO]
[INFO] --- tycho-packaging-plugin:0.13.0:validate-version (default-validate-version) @ org.eclipse.cdt.core ---
[INFO]
[INFO] --- maven-resources-plugin:2.4.1:resources (default-resources) @ org.eclipse.cdt.core ---
[INFO] Using 'ISO-8859-1' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/websrvr/Documents/workspace/org.eclipse.cdt-CDT_8_0_3/core/org.eclipse.cdt.core/src/main/resources
[INFO]
[INFO] --- tycho-compiler-plugin:0.13.0:compile (default-compile) @ org.eclipse.cdt.core ---
[INFO] Using compile source roots from build.properties
[INFO] Compiling 1984 source files to /Users/websrvr/Documents/workspace/org.eclipse.cdt-CDT_8_0_3/core/org.eclipse.cdt.core/target/classes
[ERROR] Java heap space -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/OutOfMemoryError
d added the following command and re-running:export MAVEN_OPTS='-Xmx512m -XX:MaxPermSize=128m'; mvn clean package
[Updated on: Wed, 27 January 2016 22:26] Report message to a moderator
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721523 is a reply to message #1721518] |
Wed, 27 January 2016 23:17 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 43:36.454s
[INFO] Finished at: Wed Jan 27 18:08:02 EST 2016
[INFO] Final Memory: 55M/132M
[INFO] ------------------------------------------------------------------------ Looks like it built, now, where are the packages and how do I install them???
[Updated on: Wed, 27 January 2016 23:21] Report message to a moderator
|
|
|
|
|
|
|
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721655 is a reply to message #1721629] |
Thu, 28 January 2016 22:48 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
Jonah Graham wrote on Thu, 28 January 2016 17:50Quote:
I think an API document for cdt will be required so I can find all the related stuff, surely I wont need a full eclipse API just to work with CDT.
What are you trying to achieve? The only getSimpleValue method I can think of off hand is org.eclipse.cdt.core.templateengine.process.ProcessArgument.getSimpleValue() and that is for the template engine. Surely you are not working on a new template, are you?
As for API, yes you will need the API for Eclipse and for CDT depending on what you are doing. Just as you will need the API for Java too, depending on what you are doing.
Anyway, if you can expand on what you are trying to achieve, perhaps someone can point you in the right direction. http://xyproblem.info/
I need to add features to the crossgcc plugin and I don't have the patience to kindly explain why.
I need some checkboxes to enable things like "size", "objcopy" and other missing features, it must be done in crossgcc so please do not suggest using another plugin.
Eclipse is the place to go for help about Eclipse plugins so no search will be performed elsewhere.
I can reduce this to just implementing "size" as all others would most likely be implemented the same way.
Checkboxes are usually boolean but CDT doesn't seem to know what they are when "Quick Fix" offers stupid solutions like changing the type to a string or changing the API to a boolean.
[Updated on: Thu, 28 January 2016 22:51] Report message to a moderator
|
|
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721663 is a reply to message #1721658] |
Fri, 29 January 2016 00:17 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
[quote title=Marc-Andre Laperle wrote on Thu, 28 January 2016 23:03][quote title=Dale Walsh wrote on Thu, 28 January 2016 17:28]Jonah Graham wrote on Thu, 28 January 2016 17:45Quote:
I'll ignore your suggestion about boolean, it has nothing to do with java, it has to do with eclipse.
Surely eclipse can save boolean type variable settings or is it too complicated for it?
A known working example for a plugin is needed.
Eclipse and CDT are written in Java... Try something like this
Boolean myBooleanArgument = Boolean.valueOf(progressArgument.getSimpleValue());
It's done like that for example in org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/templateengine/processes/NewManagedProject.java
Incomplete information....
ManagedBuildManager.setOption(config, toolchain, option, printsize); // This wont accept the boolean
So, eclipse doesn't handle booleans as settings, at least not in an normal manner so again, I ask for known working code to implement a checkbox.
Some data from the xml files in case someone decides to comment it's more involved than the ability to save and read back the setting.
plugin.xml: <option
category="cdt.managedbuild.optionCategory.gnu.cross.settings"
id="cdt.managedbuild.option.gnu.cross.printsize"
isAbstract="true"
defaultValue="false"
name="Cross GCC Size"
resourceFilter="all"
valueType="boolean">
<enablement
attribute="value"
type="ALL"
value="true">
<!-- we only want to process applications -->
<checkBuildProperty
property="org.eclipse.cdt.build.core.buildArtefactType"
value="org.eclipse.cdt.build.core.buildArtefactType.exe">
</checkBuildProperty>
</enablement>
</option>
template.xml <property id="printsize"
label="Print Size"
description="Print the size of the file"
type="toggle"
default="false"
hidden="false"
persist="true"/>
Clearly boolean is not the correct way to do a checkbox.
I still have yet to see plugable working code that gives me a checkbox.
|
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721751 is a reply to message #1721667] |
Fri, 29 January 2016 18:54 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
Well, I finally got "size" implemented in the cross only to find out that CDT is extremely handicapped in supported/implemented tools.
The major issue is in the tool management, it seems "gcc", "cc", "c++", "g++", "cpp", "ar", "as" are the only managed tools.
Tools like "strip", "ld", "size", "objcopy", "objdump", "elfedit", "readelf", "strings", "addr2line" are not managed and there seems to be no simple way of adding them except to weed through the entire CDT and implement (what should have been implemented) the missing commands so that they can be used as needed.
I'll start by getting the missing tools added but I will need some help from someone who is familar with how CDT does it's thing.
How on earth it passed approval with such limited functionality is beyond my comprehension but I think it would be a considerable improvement to add the functionality.
|
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1721834 is a reply to message #1721799] |
Sun, 31 January 2016 21:18 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
I have expanded linker and compiler tool functionality and can confirm the expanded compiler and linker functionality works.
I have added the "size" tool as a base tool, added it to some toolchains and can confirm the tool is selectable and confirmed it can be configured and the settings are persistant.
How do I get CDT to call the tool?
I've set the input file based on the BuildArtifactFileName so if the BuildArtifactFileName file is generated shouldn't CDT automatically execute the "size" command?
Once I have this tool working I will/should be able to make all of the other tools work but until it executes the command I'm dead in the water.
[Updated on: Mon, 01 February 2016 02:29] Report message to a moderator
|
|
|
|
|
|
|
|
Re: eclipse-SDK-4.0-macosx-carbon / CROSSGCC issue [message #1722004 is a reply to message #1721954] |
Tue, 02 February 2016 08:38 |
Dale Walsh Messages: 34 Registered: January 2016 |
Member |
|
|
I am able to confirm the tools work by manually making the target (makefile generation) however, there seems to be an issue with targets and this looks like it's why the internal builder doesn't make the secondary targets.
According to addTargets(List<String> outputVarsAdditionsList, boolean rebuild) SECONDARY_OUTPUTS should be appended to the all: target and clearly they are not.
From GnuMakeFileGenerator: // Write out the all target first in case someone just runs make
// all: <target_name> or mainbuild: <target_name>
String outputPrefix = EMPTY_STRING;
if (targetTool != null) {
outputPrefix = targetTool.getOutputPrefix();
}
buffer.append(defaultTarget + WHITESPACE + outputPrefix
+ ensurePathIsGNUMakeTargetRuleCompatibleSyntax(buildTargetName));
if (buildTargetExt.length() > 0) {
buffer.append(DOT + buildTargetExt);
}
// Add the Secondary Outputs to the all target, if any
IOutputType[] secondaryOutputs = config.getToolChain().getSecondaryOutputs();
if (secondaryOutputs.length > 0) {
buffer.append(WHITESPACE + SECONDARY_OUTPUTS); // SECONDARY_OBJCOPY and SECONDARY_SIZE should be appended to all: !!!!!
}
buffer.append(NEWLINE + NEWLINE);
Tools added in plugin.xml: <tool
command="objcopy"
commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT}"
id="cdt.managedbuild.tool.gnu.objcopy"
isAbstract="false"
name="GNU Create Flash Image"
natureFilter="both">
<enablement
type="ALL">
<and>
<checkBuildProperty
property="org.eclipse.cdt.build.core.buildArtefactType"
value="org.eclipse.cdt.build.core.buildArtefactType.exe">
</checkBuildProperty>
</and>
</enablement>
<inputType
id="cdt.managedbuild.gnu.objcopy.input"
multipleOfType="true"
option="cdt.managedbuild.gnu.objcopy.option.InFileName"
sources="elf">
</inputType>
<outputType
buildVariable="SECONDARY_OBJCOPY"
id="cdt.managedbuild.gnu.objcopy.output"
outputNames="${BuildArtifactFileBaseName}.hex"
outputContentType="cdt.managedbuild.gnu.objcopy.content-type.hex"
outputs="hex"
primaryOutput="false">
</outputType>
<optionCategory
id="cdt.managedbuild.gnu.objcopy.optionCategory.general"
name="%OptionCategory.General">
</optionCategory>
<option
category="cdt.managedbuild.gnu.objcopy.optionCategory.general"
id="cdt.managedbuild.gnu.objcopy.option.choice"
name="%Option.Gnu.ObjCopy.outFormat"
tip="Write the output file using the given object format."
valueType="enumerated">
<enumeratedOptionValue
command="-O ihex"
id="cdt.managedbuild.gnu.objcopy.option.choice.ihex"
isDefault="true"
name="Intel Hex">
</enumeratedOptionValue>
<enumeratedOptionValue
command="-O srec"
id="cdt.managedbuild.gnu.objcopy.option.choice.srec"
name="Motorola S-record">
</enumeratedOptionValue>
<enumeratedOptionValue
command="-O symbolsrec"
id="cdt.managedbuild.gnu.objcopy.option.choice.symbolsrec"
name="Motorola S-record (symbols)">
</enumeratedOptionValue>
<enumeratedOptionValue
command="-O binary"
id="cdt.managedbuild.gnu.objcopy.option.choice.binary"
name="Raw Binary">
</enumeratedOptionValue>
</option>
<option
category="cdt.managedbuild.gnu.objcopy.optionCategory.general"
command="-j .text"
id="cdt.managedbuild.gnu.objcopy.option.textsection"
isAbstract="false"
name="Section -j text"
resourceFilter="all"
tip="Copy only the text section from the input file to the output file. This option may be given more than once."
valueType="boolean">
</option>
<option
category="cdt.managedbuild.gnu.objcopy.optionCategory.general"
command="-j .data"
id="cdt.managedbuild.gnu.objcopy.option.datasection"
isAbstract="false"
name="Sections -j data"
resourceFilter="all"
tip="Copy only the data section from the input file to the output file. This option may be given more than once."
valueType="boolean">
</option>
<option
category="cdt.managedbuild.gnu.objcopy.optionCategory.general"
command="-j "
id="cdt.managedbuild.gnu.objcopy.option.othersection"
isAbstract="false"
name="Other sections (-j)"
resourceFilter="all"
tip="Copy only the named section from the input file to the output file. This option may be given more than once."
valueType="stringList">
</option>
<option
category="cdt.managedbuild.gnu.objcopy.optionCategory.general"
id="cdt.managedbuild.gnu.objcopy.option.other"
name="%Option.OtherFlags"
valueType="string">
</option>
<option
id="cdt.managedbuild.gnu.objcopy.option.InFileName"
resourceFilter="all"
value=""${BuildArtifactFileName}""
valueType="string">
</option>
</tool>
<tool
command="size"
commandLinePattern="${COMMAND} ${FLAGS}"
id="cdt.managedbuild.tool.gnu.size"
name="%ToolName.size.gnu"
natureFilter="both">
<supportedProperties>
<not>
<property
id="org.eclipse.cdt.build.core.buildArtefactType">
<value
id="org.eclipse.cdt.build.core.buildArtefactType.sharedLib">
</value>
</property>
</not>
</supportedProperties>
<inputType
id="cdt.managedbuild.gnu.size.input"
multipleOfType="true"
option="cdt.managedbuild.gnu.size.InFileName"
sources="elf">
</inputType>
<outputType
buildVariable="SECONDARY_SIZE"
id="cdt.managedbuild.gnu.size.output"
outputNames="${BuildArtifactFileBaseName}.siz"
outputContentType="cdt.managedbuild.gnu.objcopy.content-type.siz"
outputs="siz"
primaryOutput="false">
</outputType>
<optionCategory
owner="cdt.managedbuild.tool.gnu.size"
id="gnu.size.category.general"
name="%OptionCategory.General">
</optionCategory>
<option
category="gnu.size.category.general"
defaultValue="gnu.option.size.format.berkeley"
id="gnu.option.size.format"
name="%Option.Gnu.Size.Format"
tip="Choose whether the output from gnu size resembles output from System V size (using -A, or --format=sysv), or Berkeley size (using -B, or --format=berkeley). The default is the one-line format similar to Berkeley's."
valueType="enumerated">
<enumeratedOptionValue
command="--format=berkeley"
id="gnu.option.size.format.berkeley"
name="Berkeley">
</enumeratedOptionValue>
<enumeratedOptionValue
command="--format=sysv"
id="gnu.option.size.format.sysv"
name="SysV">
</enumeratedOptionValue>
<enablement
attribute="value"
type="CONTAINER_ATTRIBUTE"
value="gnu.option.size.format.berkeley">
</enablement>
</option>
<option
category="gnu.size.category.general"
command="-x"
defaultValue="false"
id="gnu.option.size.hex"
name="%Option.Gnu.Size.Print.Hex"
tip="The size of each section is given in hexadecimal."
valueType="boolean">
<enablement
type="ALL">
<checkOption
holderId="cdt.managedbuild.tool.gnu.size"
isRegex="false"
optionId="gnu.option.size.format"
value="gnu.option.size.format.berkeley">
</checkOption>
</enablement>
</option>
<option
category="gnu.size.category.general"
command="--totals"
defaultValue="false"
id="gnu.option.size.totals"
name="%Option.Gnu.Size.Show.Totals"
tip="Show totals of all objects listed (Berkeley format listing mode only). "
valueType="boolean">
</option>
<option
category="gnu.size.category.general"
id="gnu.option.size.other"
name="%Option.Gnu.Size.Flags"
valueType="string">
</option>
<option
id="cdt.managedbuild.gnu.size.InFileName"
resourceFilter="all"
value=""${BuildArtifactFileName}""
valueType="string">
</option>
</tool>
Extensions added in plugin.xml:<extension
point="org.eclipse.core.runtime.contentTypes">
<content-type
base-type="org.eclipse.core.runtime.text"
file-extensions="hex"
id="cdt.managedbuild.gnu.objcopy.content-type.hex"
name="FLASH Hex file"
priority="normal">
</content-type>
</extension>
<extension
point="org.eclipse.core.runtime.contentTypes">
<content-type
base-type="org.eclipse.core.runtime.text"
file-extensions="siz"
id="cdt.managedbuild.gnu.objcopy.content-type.siz"
name="Size file"
priority="normal">
</content-type>
</extension>
Tools added to toolchain in plugin.xml: <tool
id="cdt.managedbuild.tool.gnu.objcopy.base"
superClass="cdt.managedbuild.tool.gnu.objcopy">
<enablement
type="ALL">
<checkBuildProperty
property="org.eclipse.cdt.build.core.buildArtefactType"
value="org.eclipse.cdt.build.core.buildArtefactType.exe">
</checkBuildProperty>
</enablement>
</tool>
<tool
id="cdt.managedbuild.tool.gnu.size.base"
superClass="cdt.managedbuild.tool.gnu.size">
<enablement
type="ALL">
<checkBuildProperty
property="org.eclipse.cdt.build.core.buildArtefactType"
value="org.eclipse.cdt.build.core.buildArtefactType.exe">
</checkBuildProperty>
</enablement>
</tool>
Contents of generated makefile:################################################################################
# Automatically-generated file. Do not edit!
################################################################################
-include ../makefile.init
RM := rm -rf
# All of the sources participating in the build are defined here
-include sources.mk
-include System/Src/usb-lib/subdir.mk
-include System/Src/stm32f1xx/subdir.mk
-include System/Src/newlib/subdir.mk
-include System/Src/diag/subdir.mk
-include System/Src/cortexm/subdir.mk
-include System/Src/CMSIS/subdir.mk
-include Src/subdir.mk
-include subdir.mk
-include objects.mk
ifneq ($(MAKECMDGOALS),clean)
ifneq ($(strip $(C++_DEPS)),)
-include $(C++_DEPS)
endif
ifneq ($(strip $(CC_DEPS)),)
-include $(CC_DEPS)
endif
ifneq ($(strip $(CPP_DEPS)),)
-include $(CPP_DEPS)
endif
ifneq ($(strip $(C_DEPS)),)
-include $(C_DEPS)
endif
ifneq ($(strip $(CXX_DEPS)),)
-include $(CXX_DEPS)
endif
ifneq ($(strip $(C_UPPER_DEPS)),)
-include $(C_UPPER_DEPS)
endif
endif
-include ../makefile.defs
# Add inputs and outputs from these tool invocations to the build variables
SECONDARY_OBJCOPY += \
dale.hex \
SECONDARY_SIZE += \
dale.siz \
# All Target
all: dale.elf
# Tool invocations
dale.elf: $(OBJS) $(USER_OBJS)
@echo 'Building target: $@'
@echo 'Invoking: Cross G++ Linker'
arm-none-eabi-g++ -T mem.ld -T libs.ld -T sections.ld -nostartfiles -Xlinker --gc-sections -L../ldscripts -Wl,-Map,"dale.map" -mcpu=cortex-m3 -mthumb -o "dale.elf" $(OBJS) $(USER_OBJS) $(LIBS)
@echo 'Finished building target: $@'
@echo ' '
dale.hex: dale.elf
@echo 'Invoking: Cross GNU Create Flash Image'
arm-none-eabi-objcopy -O ihex "dale.elf" "dale.hex"
@echo 'Finished building: $@'
@echo ' '
dale.siz: dale.elf
@echo 'Invoking: Cross GNU Size'
arm-none-eabi-size --format=berkeley "dale.elf"
@echo 'Finished building: $@'
@echo ' '
# Other Targets
clean:
-$(RM) $(OBJS)$(SECONDARY_SIZE)$(C++_DEPS)$(EXECUTABLES)$(CC_DEPS)$(CPP_DEPS)$(C_DEPS)$(SECONDARY_OBJCOPY)$(CXX_DEPS)$(C_UPPER_DEPS) dale.elf
-@echo ' '
.PHONY: all clean dependents
.SECONDARY:
-include ../makefile.targets
How can I force the addition to the all: targets?
[Updated on: Tue, 02 February 2016 08:54] Report message to a moderator
|
|
|