mirror of
https://github.com/dougg3/mac-rom-simm-programmer.git
synced 2024-07-07 10:29:04 +00:00
Add initial CMake support
This sets up the ability to use CMake to build this project. A good first step toward being able to actually make use of the HAL. I also updated Eclipse's build process to match small changes I made while getting this ready for CMake.
This commit is contained in:
parent
82df6ea459
commit
b8eaf1eacf
70
.cproject
70
.cproject
@ -13,35 +13,29 @@
|
|||||||
</extensions>
|
</extensions>
|
||||||
</storageModule>
|
</storageModule>
|
||||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||||
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" description="" id="de.innot.avreclipse.configuration.app.debug.1674332705" name="Debug" parent="de.innot.avreclipse.configuration.app.debug">
|
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" description="" id="de.innot.avreclipse.configuration.app.debug.1674332705" name="Debug" optionalBuildProperties="" parent="de.innot.avreclipse.configuration.app.debug">
|
||||||
<folderInfo id="de.innot.avreclipse.configuration.app.debug.1674332705." name="/" resourcePath="">
|
<folderInfo id="de.innot.avreclipse.configuration.app.debug.1674332705." name="/" resourcePath="">
|
||||||
<toolChain id="de.innot.avreclipse.toolchain.winavr.app.debug.1454585760" name="AVR-GCC Toolchain" superClass="de.innot.avreclipse.toolchain.winavr.app.debug">
|
<toolChain id="de.innot.avreclipse.toolchain.winavr.app.debug.1454585760" name="AVR-GCC Toolchain" superClass="de.innot.avreclipse.toolchain.winavr.app.debug">
|
||||||
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug.511484921" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug"/>
|
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug.511484921" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug" useByScannerDiscovery="false"/>
|
||||||
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.debug.102499711" name="Generate HEX file for EEPROM" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.debug"/>
|
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.debug.102499711" name="Generate HEX file for EEPROM" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.debug" useByScannerDiscovery="false"/>
|
||||||
<option id="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.debug.1447923913" name="Generate Extended Listing (Source + generated Assembler)" superClass="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.debug"/>
|
<option id="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.debug.1447923913" name="Generate Extended Listing (Source + generated Assembler)" superClass="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.debug" useByScannerDiscovery="false"/>
|
||||||
<option id="de.innot.avreclipse.toolchain.options.toolchain.size.app.debug.839780790" name="Print Size" superClass="de.innot.avreclipse.toolchain.options.toolchain.size.app.debug"/>
|
<option id="de.innot.avreclipse.toolchain.options.toolchain.size.app.debug.839780790" name="Print Size" superClass="de.innot.avreclipse.toolchain.options.toolchain.size.app.debug" useByScannerDiscovery="false"/>
|
||||||
<option id="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.debug.1298864252" name="AVRDude" superClass="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.debug"/>
|
<option id="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.debug.1298864252" name="AVRDude" superClass="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.debug" useByScannerDiscovery="false"/>
|
||||||
<targetPlatform id="de.innot.avreclipse.targetplatform.winavr.app.debug.319856793" name="AVR Cross-Target" superClass="de.innot.avreclipse.targetplatform.winavr.app.debug"/>
|
<targetPlatform id="de.innot.avreclipse.targetplatform.winavr.app.debug.319856793" name="AVR Cross-Target" superClass="de.innot.avreclipse.targetplatform.winavr.app.debug"/>
|
||||||
<builder buildPath="${workspace_loc:/SIMMProgrammer/Debug}" id="de.innot.avreclipse.target.builder.winavr.app.debug.531166446" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="AVR GNU Make Builder" superClass="de.innot.avreclipse.target.builder.winavr.app.debug"/>
|
<builder buildPath="${workspace_loc:/SIMMProgrammer/Debug}" id="de.innot.avreclipse.target.builder.winavr.app.debug.531166446" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="AVR GNU Make Builder" superClass="de.innot.avreclipse.target.builder.winavr.app.debug"/>
|
||||||
<tool id="de.innot.avreclipse.tool.assembler.winavr.app.debug.1341917862" name="AVR Assembler" superClass="de.innot.avreclipse.tool.assembler.winavr.app.debug">
|
<tool id="de.innot.avreclipse.tool.assembler.winavr.app.debug.1341917862" name="AVR Assembler" superClass="de.innot.avreclipse.tool.assembler.winavr.app.debug">
|
||||||
<option id="de.innot.avreclipse.assembler.option.debug.level.990051736" name="Generate Debugging Info" superClass="de.innot.avreclipse.assembler.option.debug.level"/>
|
<option id="de.innot.avreclipse.assembler.option.debug.level.990051736" name="Generate Debugging Info" superClass="de.innot.avreclipse.assembler.option.debug.level" useByScannerDiscovery="false"/>
|
||||||
<inputType id="de.innot.avreclipse.tool.assembler.input.207805478" superClass="de.innot.avreclipse.tool.assembler.input"/>
|
<inputType id="de.innot.avreclipse.tool.assembler.input.207805478" superClass="de.innot.avreclipse.tool.assembler.input"/>
|
||||||
</tool>
|
</tool>
|
||||||
<tool id="de.innot.avreclipse.tool.compiler.winavr.app.debug.1123922496" name="AVR Compiler" superClass="de.innot.avreclipse.tool.compiler.winavr.app.debug">
|
<tool id="de.innot.avreclipse.tool.compiler.winavr.app.debug.1123922496" name="AVR Compiler" superClass="de.innot.avreclipse.tool.compiler.winavr.app.debug">
|
||||||
<option id="de.innot.avreclipse.compiler.option.debug.level.1719005254" name="Generate Debugging Info" superClass="de.innot.avreclipse.compiler.option.debug.level"/>
|
<option id="de.innot.avreclipse.compiler.option.debug.level.1719005254" name="Generate Debugging Info" superClass="de.innot.avreclipse.compiler.option.debug.level" useByScannerDiscovery="false"/>
|
||||||
<option id="de.innot.avreclipse.compiler.option.optimize.1096379855" name="Optimization Level" superClass="de.innot.avreclipse.compiler.option.optimize"/>
|
<option id="de.innot.avreclipse.compiler.option.optimize.1096379855" name="Optimization Level" superClass="de.innot.avreclipse.compiler.option.optimize" useByScannerDiscovery="false"/>
|
||||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.compiler.option.def.212979603" name="Define Syms (-D)" superClass="de.innot.avreclipse.compiler.option.def" valueType="definedSymbols">
|
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.compiler.option.def.212979603" name="Define Syms (-D)" superClass="de.innot.avreclipse.compiler.option.def" useByScannerDiscovery="false" valueType="definedSymbols">
|
||||||
<listOptionValue builtIn="false" value="USB_DEVICE_ONLY"/>
|
<listOptionValue builtIn="false" value="F_USB=16000000UL"/>
|
||||||
<listOptionValue builtIn="false" value="F_USB=16000000"/>
|
<listOptionValue builtIn="false" value="USE_LUFA_CONFIG_HEADER"/>
|
||||||
<listOptionValue builtIn="false" value="DEVICE_STATE_AS_GPIOR=0"/>
|
|
||||||
<listOptionValue builtIn="false" value="ORDERED_EP_CONFIG"/>
|
|
||||||
<listOptionValue builtIn="false" value="FIXED_CONTROL_ENDPOINT_SIZE=8"/>
|
|
||||||
<listOptionValue builtIn="false" value="FIXED_NUM_CONFIGURATIONS=1"/>
|
|
||||||
<listOptionValue builtIn="false" value="USE_FLASH_DESCRIPTORS"/>
|
|
||||||
<listOptionValue builtIn="false" value="USE_STATIC_OPTIONS="(USB_DEVICE_OPT_FULLSPEED | USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)""/>
|
|
||||||
</option>
|
</option>
|
||||||
<option id="de.innot.avreclipse.compiler.option.otherflags.1513967861" name="Other flags" superClass="de.innot.avreclipse.compiler.option.otherflags" value="-ffunction-sections -fdata-sections" valueType="string"/>
|
<option id="de.innot.avreclipse.compiler.option.otherflags.1513967861" name="Other flags" superClass="de.innot.avreclipse.compiler.option.otherflags" useByScannerDiscovery="false" value="" valueType="string"/>
|
||||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.compiler.option.incpath.173462079" superClass="de.innot.avreclipse.compiler.option.incpath" valueType="includePath">
|
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.compiler.option.incpath.173462079" name="Include Paths (-I)" superClass="de.innot.avreclipse.compiler.option.incpath" useByScannerDiscovery="false" valueType="includePath">
|
||||||
<listOptionValue builtIn="false" value=""${workspace_loc:/SIMMProgrammer/hal/at90usb646}""/>
|
<listOptionValue builtIn="false" value=""${workspace_loc:/SIMMProgrammer/hal/at90usb646}""/>
|
||||||
</option>
|
</option>
|
||||||
<inputType id="de.innot.avreclipse.compiler.winavr.input.1367172122" name="C Source Files" superClass="de.innot.avreclipse.compiler.winavr.input"/>
|
<inputType id="de.innot.avreclipse.compiler.winavr.input.1367172122" name="C Source Files" superClass="de.innot.avreclipse.compiler.winavr.input"/>
|
||||||
@ -51,7 +45,7 @@
|
|||||||
<option id="de.innot.avreclipse.cppcompiler.option.optimize.1022518531" name="Optimization Level" superClass="de.innot.avreclipse.cppcompiler.option.optimize"/>
|
<option id="de.innot.avreclipse.cppcompiler.option.optimize.1022518531" name="Optimization Level" superClass="de.innot.avreclipse.cppcompiler.option.optimize"/>
|
||||||
</tool>
|
</tool>
|
||||||
<tool id="de.innot.avreclipse.tool.linker.winavr.app.debug.806884166" name="AVR C Linker" superClass="de.innot.avreclipse.tool.linker.winavr.app.debug">
|
<tool id="de.innot.avreclipse.tool.linker.winavr.app.debug.806884166" name="AVR C Linker" superClass="de.innot.avreclipse.tool.linker.winavr.app.debug">
|
||||||
<option id="de.innot.avreclipse.linker.option.otherlinkargs.1714687929" name="Other Arguments" superClass="de.innot.avreclipse.linker.option.otherlinkargs" value="-Wl,--gc-sections" valueType="string"/>
|
<option id="de.innot.avreclipse.linker.option.otherlinkargs.1714687929" name="Other Arguments" superClass="de.innot.avreclipse.linker.option.otherlinkargs" useByScannerDiscovery="false" value="-Wl,--gc-sections" valueType="string"/>
|
||||||
<inputType id="de.innot.avreclipse.tool.linker.input.1020880987" name="OBJ Files" superClass="de.innot.avreclipse.tool.linker.input">
|
<inputType id="de.innot.avreclipse.tool.linker.input.1020880987" name="OBJ Files" superClass="de.innot.avreclipse.tool.linker.input">
|
||||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
||||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
||||||
@ -91,32 +85,26 @@
|
|||||||
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" description="" id="de.innot.avreclipse.configuration.app.release.1163010375" name="Release" optionalBuildProperties="org.eclipse.cdt.docker.launcher.containerbuild.property.selectedvolumes=,org.eclipse.cdt.docker.launcher.containerbuild.property.volumes=" parent="de.innot.avreclipse.configuration.app.release" postannouncebuildStep="Generate BIN file for firmware flashing" postbuildStep="avr-objcopy -R .eeprom -O binary ${BuildArtifactFileName} ${BuildArtifactFileBaseName}.bin">
|
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" description="" id="de.innot.avreclipse.configuration.app.release.1163010375" name="Release" optionalBuildProperties="org.eclipse.cdt.docker.launcher.containerbuild.property.selectedvolumes=,org.eclipse.cdt.docker.launcher.containerbuild.property.volumes=" parent="de.innot.avreclipse.configuration.app.release" postannouncebuildStep="Generate BIN file for firmware flashing" postbuildStep="avr-objcopy -R .eeprom -O binary ${BuildArtifactFileName} ${BuildArtifactFileBaseName}.bin">
|
||||||
<folderInfo id="de.innot.avreclipse.configuration.app.release.1163010375." name="/" resourcePath="">
|
<folderInfo id="de.innot.avreclipse.configuration.app.release.1163010375." name="/" resourcePath="">
|
||||||
<toolChain id="de.innot.avreclipse.toolchain.winavr.app.release.405615296" name="AVR-GCC Toolchain" superClass="de.innot.avreclipse.toolchain.winavr.app.release">
|
<toolChain id="de.innot.avreclipse.toolchain.winavr.app.release.405615296" name="AVR-GCC Toolchain" superClass="de.innot.avreclipse.toolchain.winavr.app.release">
|
||||||
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.release.1550189649" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.release"/>
|
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.release.1550189649" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.release" useByScannerDiscovery="false"/>
|
||||||
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.release.804255150" name="Generate HEX file for EEPROM" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.release"/>
|
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.release.804255150" name="Generate HEX file for EEPROM" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.release" useByScannerDiscovery="false"/>
|
||||||
<option id="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.release.498398371" name="Generate Extended Listing (Source + generated Assembler)" superClass="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.release"/>
|
<option id="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.release.498398371" name="Generate Extended Listing (Source + generated Assembler)" superClass="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.release" useByScannerDiscovery="false"/>
|
||||||
<option id="de.innot.avreclipse.toolchain.options.toolchain.size.app.release.544896205" name="Print Size" superClass="de.innot.avreclipse.toolchain.options.toolchain.size.app.release"/>
|
<option id="de.innot.avreclipse.toolchain.options.toolchain.size.app.release.544896205" name="Print Size" superClass="de.innot.avreclipse.toolchain.options.toolchain.size.app.release" useByScannerDiscovery="false"/>
|
||||||
<option id="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.release.1698397894" name="AVRDude" superClass="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.release"/>
|
<option id="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.release.1698397894" name="AVRDude" superClass="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.release" useByScannerDiscovery="false"/>
|
||||||
<targetPlatform id="de.innot.avreclipse.targetplatform.winavr.app.release.203303297" name="AVR Cross-Target" superClass="de.innot.avreclipse.targetplatform.winavr.app.release"/>
|
<targetPlatform id="de.innot.avreclipse.targetplatform.winavr.app.release.203303297" name="AVR Cross-Target" superClass="de.innot.avreclipse.targetplatform.winavr.app.release"/>
|
||||||
<builder buildPath="${workspace_loc:/SIMMProgrammer/Release}" id="de.innot.avreclipse.target.builder.winavr.app.release.596686773" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="AVR GNU Make Builder" superClass="de.innot.avreclipse.target.builder.winavr.app.release"/>
|
<builder buildPath="${workspace_loc:/SIMMProgrammer/Release}" id="de.innot.avreclipse.target.builder.winavr.app.release.596686773" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="AVR GNU Make Builder" superClass="de.innot.avreclipse.target.builder.winavr.app.release"/>
|
||||||
<tool id="de.innot.avreclipse.tool.assembler.winavr.app.release.1168333362" name="AVR Assembler" superClass="de.innot.avreclipse.tool.assembler.winavr.app.release">
|
<tool id="de.innot.avreclipse.tool.assembler.winavr.app.release.1168333362" name="AVR Assembler" superClass="de.innot.avreclipse.tool.assembler.winavr.app.release">
|
||||||
<option id="de.innot.avreclipse.assembler.option.debug.level.334865401" name="Generate Debugging Info" superClass="de.innot.avreclipse.assembler.option.debug.level" value="de.innot.avreclipse.assembler.option.debug.level.none" valueType="enumerated"/>
|
<option id="de.innot.avreclipse.assembler.option.debug.level.334865401" name="Generate Debugging Info" superClass="de.innot.avreclipse.assembler.option.debug.level" useByScannerDiscovery="false" value="de.innot.avreclipse.assembler.option.debug.level.none" valueType="enumerated"/>
|
||||||
<inputType id="de.innot.avreclipse.tool.assembler.input.1202935293" superClass="de.innot.avreclipse.tool.assembler.input"/>
|
<inputType id="de.innot.avreclipse.tool.assembler.input.1202935293" superClass="de.innot.avreclipse.tool.assembler.input"/>
|
||||||
</tool>
|
</tool>
|
||||||
<tool id="de.innot.avreclipse.tool.compiler.winavr.app.release.883804772" name="AVR Compiler" superClass="de.innot.avreclipse.tool.compiler.winavr.app.release">
|
<tool id="de.innot.avreclipse.tool.compiler.winavr.app.release.883804772" name="AVR Compiler" superClass="de.innot.avreclipse.tool.compiler.winavr.app.release">
|
||||||
<option id="de.innot.avreclipse.compiler.option.debug.level.369847490" name="Generate Debugging Info" superClass="de.innot.avreclipse.compiler.option.debug.level" value="de.innot.avreclipse.compiler.option.debug.level.none" valueType="enumerated"/>
|
<option id="de.innot.avreclipse.compiler.option.debug.level.369847490" name="Generate Debugging Info" superClass="de.innot.avreclipse.compiler.option.debug.level" useByScannerDiscovery="false" value="de.innot.avreclipse.compiler.option.debug.level.none" valueType="enumerated"/>
|
||||||
<option id="de.innot.avreclipse.compiler.option.optimize.471434010" name="Optimization Level" superClass="de.innot.avreclipse.compiler.option.optimize" value="de.innot.avreclipse.compiler.optimize.size" valueType="enumerated"/>
|
<option id="de.innot.avreclipse.compiler.option.optimize.471434010" name="Optimization Level" superClass="de.innot.avreclipse.compiler.option.optimize" useByScannerDiscovery="false" value="de.innot.avreclipse.compiler.optimize.size" valueType="enumerated"/>
|
||||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.compiler.option.def.1514251723" name="Define Syms (-D)" superClass="de.innot.avreclipse.compiler.option.def" valueType="definedSymbols">
|
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.compiler.option.def.1514251723" name="Define Syms (-D)" superClass="de.innot.avreclipse.compiler.option.def" useByScannerDiscovery="false" valueType="definedSymbols">
|
||||||
<listOptionValue builtIn="false" value="USB_DEVICE_ONLY"/>
|
<listOptionValue builtIn="false" value="F_USB=16000000UL"/>
|
||||||
<listOptionValue builtIn="false" value="F_USB=16000000"/>
|
<listOptionValue builtIn="false" value="USE_LUFA_CONFIG_HEADER"/>
|
||||||
<listOptionValue builtIn="false" value="DEVICE_STATE_AS_GPIOR=0"/>
|
|
||||||
<listOptionValue builtIn="false" value="ORDERED_EP_CONFIG"/>
|
|
||||||
<listOptionValue builtIn="false" value="FIXED_CONTROL_ENDPOINT_SIZE=8"/>
|
|
||||||
<listOptionValue builtIn="false" value="FIXED_NUM_CONFIGURATIONS=1"/>
|
|
||||||
<listOptionValue builtIn="false" value="USE_FLASH_DESCRIPTORS"/>
|
|
||||||
<listOptionValue builtIn="false" value="USE_STATIC_OPTIONS="(USB_DEVICE_OPT_FULLSPEED | USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)""/>
|
|
||||||
</option>
|
</option>
|
||||||
<option id="de.innot.avreclipse.compiler.option.otherflags.1566165436" name="Other flags" superClass="de.innot.avreclipse.compiler.option.otherflags" value="-ffunction-sections -fdata-sections" valueType="string"/>
|
<option id="de.innot.avreclipse.compiler.option.otherflags.1566165436" name="Other flags" superClass="de.innot.avreclipse.compiler.option.otherflags" useByScannerDiscovery="false" value="" valueType="string"/>
|
||||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.compiler.option.incpath.2119807530" superClass="de.innot.avreclipse.compiler.option.incpath" valueType="includePath">
|
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.compiler.option.incpath.2119807530" name="Include Paths (-I)" superClass="de.innot.avreclipse.compiler.option.incpath" useByScannerDiscovery="false" valueType="includePath">
|
||||||
<listOptionValue builtIn="false" value=""${workspace_loc:/SIMMProgrammer/hal/at90usb646}""/>
|
<listOptionValue builtIn="false" value=""${workspace_loc:/SIMMProgrammer/hal/at90usb646}""/>
|
||||||
</option>
|
</option>
|
||||||
<inputType id="de.innot.avreclipse.compiler.winavr.input.2084198580" name="C Source Files" superClass="de.innot.avreclipse.compiler.winavr.input"/>
|
<inputType id="de.innot.avreclipse.compiler.winavr.input.2084198580" name="C Source Files" superClass="de.innot.avreclipse.compiler.winavr.input"/>
|
||||||
@ -126,7 +114,7 @@
|
|||||||
<option id="de.innot.avreclipse.cppcompiler.option.optimize.1657124646" name="Optimization Level" superClass="de.innot.avreclipse.cppcompiler.option.optimize" value="de.innot.avreclipse.cppcompiler.optimize.size" valueType="enumerated"/>
|
<option id="de.innot.avreclipse.cppcompiler.option.optimize.1657124646" name="Optimization Level" superClass="de.innot.avreclipse.cppcompiler.option.optimize" value="de.innot.avreclipse.cppcompiler.optimize.size" valueType="enumerated"/>
|
||||||
</tool>
|
</tool>
|
||||||
<tool id="de.innot.avreclipse.tool.linker.winavr.app.release.381852607" name="AVR C Linker" superClass="de.innot.avreclipse.tool.linker.winavr.app.release">
|
<tool id="de.innot.avreclipse.tool.linker.winavr.app.release.381852607" name="AVR C Linker" superClass="de.innot.avreclipse.tool.linker.winavr.app.release">
|
||||||
<option id="de.innot.avreclipse.linker.option.otherlinkargs.270243458" name="Other Arguments" superClass="de.innot.avreclipse.linker.option.otherlinkargs" value="-Wl,--gc-sections" valueType="string"/>
|
<option id="de.innot.avreclipse.linker.option.otherlinkargs.270243458" name="Other Arguments" superClass="de.innot.avreclipse.linker.option.otherlinkargs" useByScannerDiscovery="false" value="-Wl,--gc-sections" valueType="string"/>
|
||||||
<inputType id="de.innot.avreclipse.tool.linker.input.567763029" name="OBJ Files" superClass="de.innot.avreclipse.tool.linker.input">
|
<inputType id="de.innot.avreclipse.tool.linker.input.567763029" name="OBJ Files" superClass="de.innot.avreclipse.tool.linker.input">
|
||||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
||||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
||||||
|
77
CMakeLists.txt
Normal file
77
CMakeLists.txt
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.13)
|
||||||
|
project(SIMMProgrammer)
|
||||||
|
|
||||||
|
# Create a list of all source files common to all architectures
|
||||||
|
set(SOURCES
|
||||||
|
drivers/mcp23s17.c
|
||||||
|
drivers/parallel_flash.c
|
||||||
|
tests/simm_electrical_test.c
|
||||||
|
main.c
|
||||||
|
simm_programmer.c
|
||||||
|
)
|
||||||
|
|
||||||
|
# Create a list of all source files specific to the AVR
|
||||||
|
set(AVRSOURCES
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Class/Device/CDCClassDevice.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/AVR8/Device_AVR8.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/AVR8/Endpoint_AVR8.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/AVR8/EndpointStream_AVR8.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/AVR8/Host_AVR8.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/AVR8/Pipe_AVR8.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/AVR8/PipeStream_AVR8.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/AVR8/USBInterrupt_AVR8.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/ConfigDescriptor.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/DeviceStandardReq.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/Events.c
|
||||||
|
hal/at90usb646/LUFA/Drivers/USB/Core/USBTask.c
|
||||||
|
hal/at90usb646/board.c
|
||||||
|
hal/at90usb646/cdc_device_definition.c
|
||||||
|
hal/at90usb646/Descriptors.c
|
||||||
|
hal/at90usb646/gpio.c
|
||||||
|
hal/at90usb646/parallel_bus.c
|
||||||
|
hal/at90usb646/spi.c
|
||||||
|
hal/at90usb646/usbcdc.c
|
||||||
|
)
|
||||||
|
|
||||||
|
add_executable(SIMMProgrammer.elf ${SOURCES} ${AVRSOURCES})
|
||||||
|
|
||||||
|
# Common compiler options
|
||||||
|
target_compile_options(SIMMProgrammer.elf PRIVATE
|
||||||
|
-Wall -Os -std=gnu99 -ffunction-sections -fdata-sections
|
||||||
|
)
|
||||||
|
|
||||||
|
# Common linker options
|
||||||
|
target_link_options(SIMMProgrammer.elf PRIVATE
|
||||||
|
-Wl,-Map,SIMMProgrammer.map -Wl,--gc-sections
|
||||||
|
)
|
||||||
|
|
||||||
|
# AVR-specific include paths
|
||||||
|
target_include_directories(SIMMProgrammer.elf PRIVATE
|
||||||
|
hal/at90usb646
|
||||||
|
)
|
||||||
|
|
||||||
|
# AVR-specific compiler definitions
|
||||||
|
target_compile_definitions(SIMMProgrammer.elf PRIVATE
|
||||||
|
F_CPU=16000000UL
|
||||||
|
F_USB=16000000UL
|
||||||
|
USE_LUFA_CONFIG_HEADER
|
||||||
|
)
|
||||||
|
|
||||||
|
# AVR-specific compiler options
|
||||||
|
target_compile_options(SIMMProgrammer.elf PRIVATE
|
||||||
|
-fpack-struct -fshort-enums -funsigned-char -funsigned-bitfields -mmcu=at90usb646
|
||||||
|
)
|
||||||
|
|
||||||
|
# AVR-specific linker options
|
||||||
|
target_link_options(SIMMProgrammer.elf PRIVATE
|
||||||
|
-mmcu=at90usb646
|
||||||
|
)
|
||||||
|
|
||||||
|
# AVR-specific command/target to generate .bin file from the ELF file. This program
|
||||||
|
# is flashed using a bootloader, so there's no need to generate a HEX file.
|
||||||
|
add_custom_command(OUTPUT SIMMProgrammer.bin
|
||||||
|
COMMAND ${CMAKE_OBJCOPY} -R .eeprom -O binary SIMMProgrammer.elf SIMMProgrammer.bin
|
||||||
|
DEPENDS SIMMProgrammer.elf
|
||||||
|
)
|
||||||
|
add_custom_target(SIMMProgrammer_bin ALL DEPENDS SIMMProgrammer.bin)
|
160
hal/at90usb646/LUFAConfig.h
Normal file
160
hal/at90usb646/LUFAConfig.h
Normal file
@ -0,0 +1,160 @@
|
|||||||
|
/*
|
||||||
|
LUFA Library
|
||||||
|
Copyright (C) Dean Camera, 2012.
|
||||||
|
|
||||||
|
dean [at] fourwalledcubicle [dot] com
|
||||||
|
www.lufa-lib.org
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
Copyright 2012 Dean Camera (dean [at] fourwalledcubicle [dot] com)
|
||||||
|
|
||||||
|
Permission to use, copy, modify, distribute, and sell this
|
||||||
|
software and its documentation for any purpose is hereby granted
|
||||||
|
without fee, provided that the above copyright notice appear in
|
||||||
|
all copies and that both that the copyright notice and this
|
||||||
|
permission notice and warranty disclaimer appear in supporting
|
||||||
|
documentation, and that the name of the author not be used in
|
||||||
|
advertising or publicity pertaining to distribution of the
|
||||||
|
software without specific, written prior permission.
|
||||||
|
|
||||||
|
The author disclaim all warranties with regard to this
|
||||||
|
software, including all implied warranties of merchantability
|
||||||
|
and fitness. In no event shall the author be liable for any
|
||||||
|
special, indirect or consequential damages or any damages
|
||||||
|
whatsoever resulting from loss of use, data or profits, whether
|
||||||
|
in an action of contract, negligence or other tortious action,
|
||||||
|
arising out of or in connection with the use or performance of
|
||||||
|
this software.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
This is a header file which can be used to configure LUFA's
|
||||||
|
compile time options, as an alternative to the compile time
|
||||||
|
constants supplied through a makefile. To use this configuration
|
||||||
|
header, copy this into your project's root directory and supply
|
||||||
|
the \c USE_LUFA_CONFIG_HEADER token to the compiler so that it is
|
||||||
|
defined in all compiled source files.
|
||||||
|
|
||||||
|
For information on what each token does, refer to the LUFA
|
||||||
|
manual section "Summary of Compile Tokens".
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __LUFA_CONFIG_H__
|
||||||
|
#define __LUFA_CONFIG_H__
|
||||||
|
|
||||||
|
#if (ARCH == ARCH_AVR8)
|
||||||
|
|
||||||
|
/* Non-USB Related Configuration Tokens: */
|
||||||
|
// #define DISABLE_TERMINAL_CODES
|
||||||
|
|
||||||
|
/* USB Class Driver Related Tokens: */
|
||||||
|
// #define HID_HOST_BOOT_PROTOCOL_ONLY
|
||||||
|
// #define HID_STATETABLE_STACK_DEPTH {Insert Value Here}
|
||||||
|
// #define HID_USAGE_STACK_DEPTH {Insert Value Here}
|
||||||
|
// #define HID_MAX_COLLECTIONS {Insert Value Here}
|
||||||
|
// #define HID_MAX_REPORTITEMS {Insert Value Here}
|
||||||
|
// #define HID_MAX_REPORT_IDS {Insert Value Here}
|
||||||
|
// #define NO_CLASS_DRIVER_AUTOFLUSH
|
||||||
|
|
||||||
|
/* General USB Driver Related Tokens: */
|
||||||
|
#define ORDERED_EP_CONFIG
|
||||||
|
#define USE_STATIC_OPTIONS (USB_DEVICE_OPT_FULLSPEED | USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)
|
||||||
|
#define USB_DEVICE_ONLY
|
||||||
|
// #define USB_HOST_ONLY
|
||||||
|
// #define USB_STREAM_TIMEOUT_MS {Insert Value Here}
|
||||||
|
// #define NO_LIMITED_CONTROLLER_CONNECT
|
||||||
|
// #define NO_SOF_EVENTS
|
||||||
|
|
||||||
|
/* USB Device Mode Driver Related Tokens: */
|
||||||
|
// #define USE_RAM_DESCRIPTORS
|
||||||
|
#define USE_FLASH_DESCRIPTORS
|
||||||
|
// #define USE_EEPROM_DESCRIPTORS
|
||||||
|
// #define NO_INTERNAL_SERIAL
|
||||||
|
#define FIXED_CONTROL_ENDPOINT_SIZE 8
|
||||||
|
#define DEVICE_STATE_AS_GPIOR 0
|
||||||
|
#define FIXED_NUM_CONFIGURATIONS 1
|
||||||
|
// #define CONTROL_ONLY_DEVICE
|
||||||
|
// #define INTERRUPT_CONTROL_ENDPOINT
|
||||||
|
// #define NO_DEVICE_REMOTE_WAKEUP
|
||||||
|
// #define NO_DEVICE_SELF_POWER
|
||||||
|
|
||||||
|
/* USB Host Mode Driver Related Tokens: */
|
||||||
|
// #define HOST_STATE_AS_GPIOR {Insert Value Here}
|
||||||
|
// #define USB_HOST_TIMEOUT_MS {Insert Value Here}
|
||||||
|
// #define HOST_DEVICE_SETTLE_DELAY_MS {Insert Value Here}
|
||||||
|
// #define NO_AUTO_VBUS_MANAGEMENT
|
||||||
|
// #define INVERTED_VBUS_ENABLE_LINE
|
||||||
|
|
||||||
|
#elif (ARCH == ARCH_XMEGA)
|
||||||
|
|
||||||
|
/* Non-USB Related Configuration Tokens: */
|
||||||
|
// #define DISABLE_TERMINAL_CODES
|
||||||
|
|
||||||
|
/* USB Class Driver Related Tokens: */
|
||||||
|
// #define HID_HOST_BOOT_PROTOCOL_ONLY
|
||||||
|
// #define HID_STATETABLE_STACK_DEPTH {Insert Value Here}
|
||||||
|
// #define HID_USAGE_STACK_DEPTH {Insert Value Here}
|
||||||
|
// #define HID_MAX_COLLECTIONS {Insert Value Here}
|
||||||
|
// #define HID_MAX_REPORTITEMS {Insert Value Here}
|
||||||
|
// #define HID_MAX_REPORT_IDS {Insert Value Here}
|
||||||
|
// #define NO_CLASS_DRIVER_AUTOFLUSH
|
||||||
|
|
||||||
|
/* General USB Driver Related Tokens: */
|
||||||
|
// #define USE_STATIC_OPTIONS {Insert Value Here}
|
||||||
|
// #define USB_STREAM_TIMEOUT_MS {Insert Value Here}
|
||||||
|
// #define NO_LIMITED_CONTROLLER_CONNECT
|
||||||
|
// #define NO_SOF_EVENTS
|
||||||
|
|
||||||
|
/* USB Device Mode Driver Related Tokens: */
|
||||||
|
// #define USE_RAM_DESCRIPTORS
|
||||||
|
// #define USE_FLASH_DESCRIPTORS
|
||||||
|
// #define USE_EEPROM_DESCRIPTORS
|
||||||
|
// #define NO_INTERNAL_SERIAL
|
||||||
|
// #define FIXED_CONTROL_ENDPOINT_SIZE {Insert Value Here}
|
||||||
|
// #define DEVICE_STATE_AS_GPIOR {Insert Value Here}
|
||||||
|
// #define FIXED_NUM_CONFIGURATIONS {Insert Value Here}
|
||||||
|
// #define CONTROL_ONLY_DEVICE
|
||||||
|
// #define NO_DEVICE_REMOTE_WAKEUP
|
||||||
|
// #define NO_DEVICE_SELF_POWER
|
||||||
|
|
||||||
|
#elif (ARCH == ARCH_UC3)
|
||||||
|
|
||||||
|
/* Non-USB Related Configuration Tokens: */
|
||||||
|
// #define DISABLE_TERMINAL_CODES
|
||||||
|
|
||||||
|
/* USB Class Driver Related Tokens: */
|
||||||
|
// #define HID_HOST_BOOT_PROTOCOL_ONLY
|
||||||
|
// #define HID_STATETABLE_STACK_DEPTH {Insert Value Here}
|
||||||
|
// #define HID_USAGE_STACK_DEPTH {Insert Value Here}
|
||||||
|
// #define HID_MAX_COLLECTIONS {Insert Value Here}
|
||||||
|
// #define HID_MAX_REPORTITEMS {Insert Value Here}
|
||||||
|
// #define HID_MAX_REPORT_IDS {Insert Value Here}
|
||||||
|
// #define NO_CLASS_DRIVER_AUTOFLUSH
|
||||||
|
|
||||||
|
/* General USB Driver Related Tokens: */
|
||||||
|
// #define ORDERED_EP_CONFIG
|
||||||
|
// #define USE_STATIC_OPTIONS {Insert Value Here}
|
||||||
|
// #define USB_DEVICE_ONLY
|
||||||
|
// #define USB_HOST_ONLY
|
||||||
|
// #define USB_STREAM_TIMEOUT_MS {Insert Value Here}
|
||||||
|
// #define NO_SOF_EVENTS
|
||||||
|
|
||||||
|
/* USB Device Mode Driver Related Tokens: */
|
||||||
|
// #define NO_INTERNAL_SERIAL
|
||||||
|
// #define FIXED_CONTROL_ENDPOINT_SIZE {Insert Value Here}
|
||||||
|
// #define FIXED_NUM_CONFIGURATIONS {Insert Value Here}
|
||||||
|
// #define CONTROL_ONLY_DEVICE
|
||||||
|
// #define INTERRUPT_CONTROL_ENDPOINT
|
||||||
|
// #define NO_DEVICE_REMOTE_WAKEUP
|
||||||
|
// #define NO_DEVICE_SELF_POWER
|
||||||
|
|
||||||
|
/* USB Host Mode Driver Related Tokens: */
|
||||||
|
// #define USB_HOST_TIMEOUT_MS {Insert Value Here}
|
||||||
|
// #define HOST_DEVICE_SETTLE_DELAY_MS {Insert Value Here}
|
||||||
|
// #define NO_AUTO_VBUS_MANAGEMENT
|
||||||
|
// #define INVERTED_VBUS_ENABLE_LINE
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
15
toolchain-avr.cmake
Normal file
15
toolchain-avr.cmake
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
# This will tell CMake that we are cross compiling
|
||||||
|
set(CMAKE_SYSTEM_NAME Generic)
|
||||||
|
set(CMAKE_SYSTEM_VERSION 1)
|
||||||
|
set(CMAKE_SYSTEM_PROCESSOR avr)
|
||||||
|
|
||||||
|
# Make sure it knows what binaries to use
|
||||||
|
set(CMAKE_AR avr-ar)
|
||||||
|
set(CMAKE_ASM_COMPILER avr-as)
|
||||||
|
set(CMAKE_C_COMPILER avr-gcc)
|
||||||
|
set(CMAKE_CXX_COMPILER avr-g++)
|
||||||
|
set(CMAKE_LINKER avr-ld)
|
||||||
|
set(CMAKE_OBJCOPY avr-objcopy)
|
||||||
|
set(CMAKE_RANLIB avr-ranlib)
|
||||||
|
set(CMAKE_SIZE avr-size)
|
||||||
|
set(CMAKE_STRIP avr-strip)
|
Loading…
Reference in New Issue
Block a user