annotate LoadFile/CMakeLists.txt @ 412:e7a3be42ae1e

Debug code for interconnect cable debugging
author Jacob Alexander <haata@kiibohd.com>
date Sat, 20 Feb 2016 13:27:49 -0800
parents 3d21ecd24e31
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
129
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
1 ###| CMAKE teensy-loader-cli |###
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
2 #
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
3 # Jacob Alexander 2014
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
4 # Written to replace the pjrc's kludey Makefiles
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
5 # (that require hand edits for different platforms)
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
6 #
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
7 # Released into the Public Domain
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
8 #
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
9 ###
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
10
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
11 #| Windows / Cygwin Compatibility options
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
12 set( CMAKE_LEGACY_CYGWIN_WIN32 0 )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
13 set( CMAKE_USE_RELATIVE_PATHS 1 )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
14
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
15
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
16
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
17 ###
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
18 # Project Description
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
19 #
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
20
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
21 #| Project
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
22 project( teensy-loader-cli )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
23
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
24 #| Target Name (output name)
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
25 set( TARGET teensy-loader-cli )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
26
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
27 #| General Settings
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
28 cmake_minimum_required( VERSION 2.8 )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
29
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
30
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
31
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
32 ###
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
33 # Source Defines
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
34 #
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
35
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
36 #| Sources
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
37 set( SRCS
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
38 teensy_loader_cli.c
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
39 )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
40
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
41
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
42
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
43 ###
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
44 # Platform Setup
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
45 #
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
46 list( APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR} ) # Use local find scripts
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
47
145
3d21ecd24e31 Windows is now working with libusb1.0 for the teensy-loader-cli.
Jacob Alexander <haata@kiibohd.com>
parents: 144
diff changeset
48 #| Linux/Windows - libusb
3d21ecd24e31 Windows is now working with libusb1.0 for the teensy-loader-cli.
Jacob Alexander <haata@kiibohd.com>
parents: 144
diff changeset
49 if( CMAKE_SYSTEM_NAME MATCHES "Linux" OR CMAKE_SYSTEM_NAME MATCHES "CYGWIN" )
129
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
50 # Find libusb (not 1.0)
144
35acc12e98d3 Porting teensy-loader-cli to use libusb-1.0 (from 0.1).
Jacob Alexander <haata@kiibohd.com>
parents: 143
diff changeset
51 find_package( LibUSB-1.0 REQUIRED )
129
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
52
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
53 # Defines
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
54 set( DEFINES -s -DUSE_LIBUSB )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
55
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
56 # Include directories
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
57 set( INCLUDE_DIRS ${LIBUSB_INCLUDE_DIRS} )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
58
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
59 # Libraries
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
60 set( LIBS ${LIBUSB_LIBRARIES} )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
61
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
62 #| Mac OS X
143
f2e4dd42bdab More Windows compatibility build fixes
Jacob Alexander <haata@kiibohd.com>
parents: 129
diff changeset
63 elseif( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
129
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
64 message( AUTHOR_WARNING "Not Tested...")
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
65
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
66 # Defines - XXX What is SDK?
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
67 set( DEFINES -DUSE_APPLE_IOKIT -isysroot ${SDK} -Wl,-syslibroot,${SDK} -framework IOKit -framework CoreFoundation )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
68
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
69 #| BSD - NetBSD and OpenBSD
143
f2e4dd42bdab More Windows compatibility build fixes
Jacob Alexander <haata@kiibohd.com>
parents: 129
diff changeset
70 elseif( CMAKE_SYSTEM_NAME MATCHES "BSD" )
129
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
71 message( AUTHOR_WARNING "Not Tested...")
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
72
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
73 # Defines
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
74 set( DEFINES -s -DUSE_UHID )
143
f2e4dd42bdab More Windows compatibility build fixes
Jacob Alexander <haata@kiibohd.com>
parents: 129
diff changeset
75 #| Unregonized OS
f2e4dd42bdab More Windows compatibility build fixes
Jacob Alexander <haata@kiibohd.com>
parents: 129
diff changeset
76 else()
f2e4dd42bdab More Windows compatibility build fixes
Jacob Alexander <haata@kiibohd.com>
parents: 129
diff changeset
77 message( FATAL_ERROR "${CMAKE_SYSTEM_NAME}: OS Not Recognized..." )
129
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
78 endif()
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
79
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
80
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
81
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
82 ###
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
83 # Defines
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
84 #
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
85
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
86 #| Default CFLAGS
144
35acc12e98d3 Porting teensy-loader-cli to use libusb-1.0 (from 0.1).
Jacob Alexander <haata@kiibohd.com>
parents: 143
diff changeset
87 set( CFLAGS -O2 -Wall -std=gnu99 )
129
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
88
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
89 add_definitions( ${CFLAGS} ${DEFINES} )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
90
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
91
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
92
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
93 ###
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
94 # Includes
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
95 #
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
96
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
97 #| Linux
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
98 include_directories( ${INCLUDE_DIRS} )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
99
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
100
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
101
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
102 ###
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
103 # Build Targets
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
104 #
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
105
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
106 #| Create the executable
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
107 add_executable( ${TARGET} ${SRCS} )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
108
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
109 #| Link executable
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
110 target_link_libraries( ${TARGET} ${LIBS} )
0bad1499ec19 Adding teensy-loader-cli so it's not required.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
111