ritsu 0.7.0 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (89) hide show
  1. data/README.md +95 -95
  2. data/bin/define_cpp_string +54 -54
  3. data/bin/ritsu +31 -31
  4. data/lib/ritsu.rb +16 -16
  5. data/lib/ritsu/block.rb +258 -258
  6. data/lib/ritsu/ext/cuda.rb +5 -5
  7. data/lib/ritsu/ext/cuda/external_library.rb +15 -15
  8. data/lib/ritsu/ext/cuda/project.rb +31 -31
  9. data/lib/ritsu/ext/cuda/src_files/cu_file.rb +46 -46
  10. data/lib/ritsu/ext/cuda/src_files/target_cmake_lists.rb +110 -110
  11. data/lib/ritsu/ext/cuda/target.rb +16 -16
  12. data/lib/ritsu/ext/cuda/targets/library.rb +16 -16
  13. data/lib/ritsu/ext/fake_install.rb +2 -2
  14. data/lib/ritsu/ext/fake_install/project.rb +16 -16
  15. data/lib/ritsu/ext/fake_install/src_files/project_cmake_lists.rb +45 -45
  16. data/lib/ritsu/ext/glsl.rb +1 -1
  17. data/lib/ritsu/ext/glsl/src_files/frag_file.rb +70 -70
  18. data/lib/ritsu/ext/glsl/src_files/vert_file.rb +70 -70
  19. data/lib/ritsu/ext/qt.rb +4 -4
  20. data/lib/ritsu/ext/qt/project.rb +47 -47
  21. data/lib/ritsu/ext/qt/src_files/header_file.rb +60 -60
  22. data/lib/ritsu/ext/qt/src_files/target_cmake_lists.rb +106 -106
  23. data/lib/ritsu/ext/qt/src_files/ui_file.rb +46 -46
  24. data/lib/ritsu/ext/test_case.rb +19 -19
  25. data/lib/ritsu/external_library.rb +46 -46
  26. data/lib/ritsu/project.rb +93 -93
  27. data/lib/ritsu/project_generator.rb +33 -33
  28. data/lib/ritsu/project_generators/default_generator.rb +72 -72
  29. data/lib/ritsu/project_generators/default_generator_files/Thorfile.erb +8 -8
  30. data/lib/ritsu/project_generators/default_generator_files/meta/project.rb.erb +10 -10
  31. data/lib/ritsu/src_file.rb +79 -79
  32. data/lib/ritsu/src_files.rb +12 -12
  33. data/lib/ritsu/src_files/cpp_file.rb +43 -43
  34. data/lib/ritsu/src_files/executable_cmake_lists.rb +39 -39
  35. data/lib/ritsu/src_files/header_file.rb +60 -60
  36. data/lib/ritsu/src_files/project_cmake_lists.rb +133 -133
  37. data/lib/ritsu/src_files/project_config_header_file.rb +14 -14
  38. data/lib/ritsu/src_files/project_config_header_template_file.rb +44 -44
  39. data/lib/ritsu/src_files/shared_library_cmake_lists.rb +39 -39
  40. data/lib/ritsu/src_files/static_library_cmake_lists.rb +39 -39
  41. data/lib/ritsu/src_files/target_cmake_lists.rb +189 -189
  42. data/lib/ritsu/src_files/templated_src_file.rb +47 -47
  43. data/lib/ritsu/src_files/unit.rb +32 -32
  44. data/lib/ritsu/target.rb +154 -154
  45. data/lib/ritsu/targets.rb +3 -3
  46. data/lib/ritsu/targets/executable.rb +44 -44
  47. data/lib/ritsu/targets/library.rb +29 -29
  48. data/lib/ritsu/targets/shared_library.rb +38 -38
  49. data/lib/ritsu/targets/static_library.rb +32 -32
  50. data/lib/ritsu/template.rb +68 -68
  51. data/lib/ritsu/template_policies.rb +132 -132
  52. data/lib/ritsu/test_helpers.rb +123 -123
  53. data/lib/ritsu/thors/default_thor.rb +1 -1
  54. data/lib/ritsu/utility.rb +7 -7
  55. data/lib/ritsu/utility/accessors.rb +29 -29
  56. data/lib/ritsu/utility/check_upon_add_set.rb +34 -34
  57. data/lib/ritsu/utility/file_robot.rb +128 -128
  58. data/lib/ritsu/utility/files.rb +12 -12
  59. data/lib/ritsu/utility/instance_dependencies.rb +112 -112
  60. data/lib/ritsu/utility/instance_set.rb +28 -28
  61. data/lib/ritsu/utility/platform.rb +20 -20
  62. data/lib/ritsu/utility/simple_io.rb +64 -64
  63. data/lib/ritsu/utility/single_instance.rb +33 -33
  64. data/lib/ritsu/utility/strings.rb +40 -40
  65. data/test/ritsu/block_test.rb +196 -196
  66. data/test/ritsu/ext/cuda/src_files/cuda_static_library_cmake_lists_test.rb +63 -63
  67. data/test/ritsu/external_library_test.rb +41 -41
  68. data/test/ritsu/project_generators/default_generator_test.rb +34 -34
  69. data/test/ritsu/project_test.rb +127 -127
  70. data/test/ritsu/src_file_test.rb +69 -69
  71. data/test/ritsu/src_files/cpp_file_test.rb +42 -42
  72. data/test/ritsu/src_files/executable_cmake_lists_test.rb +92 -92
  73. data/test/ritsu/src_files/header_file_test.rb +57 -57
  74. data/test/ritsu/src_files/project_cmake_lists_test.rb +159 -159
  75. data/test/ritsu/src_files/shared_library_cmake_lists_test.rb +54 -54
  76. data/test/ritsu/src_files/static_library_cmake_lists_test.rb +54 -54
  77. data/test/ritsu/src_files/target_cmake_lists_test.rb +15 -15
  78. data/test/ritsu/target_test.rb +105 -105
  79. data/test/ritsu/targets/executable_test.rb +10 -10
  80. data/test/ritsu/targets/shared_library_test.rb +10 -10
  81. data/test/ritsu/targets/static_library_test.rb +10 -10
  82. data/test/ritsu/utility/accessors_test.rb +14 -14
  83. data/test/ritsu/utility/check_upon_add_set_test.rb +31 -31
  84. data/test/ritsu/utility/file_robot_test.rb +175 -175
  85. data/test/ritsu/utility/strings_test.rb +28 -28
  86. data/test/test_helpers.rb +3 -3
  87. metadata +72 -124
  88. data/Thorfile +0 -104
  89. data/VERSION +0 -1
@@ -1,160 +1,160 @@
1
- require File.dirname(__FILE__) + "/../../test_helpers"
2
-
3
- class ProjectCMakeListsTest < Test::Unit::TestCase
4
- include Ritsu::SetupProjectAndClearEverythingElse
5
- include Ritsu::TestCaseWithFileTestData
6
- include Ritsu::Utility
7
-
8
- def data_dir; File.expand_path(File.dirname(__FILE__) + "/" + File.basename(__FILE__, ".rb")) end
9
-
10
- def setup
11
- setup_project('mio')
12
- @project.project_dir = output_dir
13
- end
14
-
15
- must "be present in project" do
16
- assert @project.respond_to?(:cmake_lists)
17
- assert @project.cmake_lists.kind_of?(Ritsu::SrcFiles::ProjectCmakeLists)
18
- end
19
-
20
- must "src_path must be CMakeLists.txt" do
21
- cmakelists = @project.cmake_lists
22
- assert_equal "CMakeLists.txt", cmakelists.src_path
23
- end
24
-
25
- must "abs_path must be project_dir/src/CMakeLists.txt" do
26
- cmakelists = @project.cmake_lists
27
- assert_equal "#{@project.project_dir}/src/CMakeLists.txt",
28
- cmakelists.abs_path
29
- end
30
-
31
- file_test "create" do
32
- FileRobot.quietly do
33
- @project.cmake_lists.create
34
- end
35
- assert_file_exists(@project.cmake_lists.abs_path)
36
-
37
- expected_content = <<-TEXT
38
- ##<< ProjectCmakeLists -- Header
39
- PROJECT(mio)
40
- CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
41
- SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules" ${CMAKE_MODULE_PATH})
42
-
43
- IF(WIN32)
44
- OPTION(__WIN_PLATFORM__ "Windows Platform" ON)
45
- ELSE(WIN32)
46
- OPTION(__WIN_PLATFORM__ "Windows Platform" OFF)
47
- ENDIF(WIN32)
48
-
49
- IF(UNIX)
50
- IF(APPLE)
51
- OPTION(__MAC_PLATFORM__ "Apple Platform" ON)
52
- OPTION(__UNIX_PLATFORM__ "Unix Platform" OFF)
53
- ELSE(APPLE)
54
- OPTION(__MAC_PLATFORM__ "Apple Platform" OFF)
55
- OPTION(__UNIX_PLATFORM__ "Unix Platform" ON)
56
- ENDIF(APPLE)
57
- ELSE(UNIX)
58
- OPTION(__MAC_PLATFORM__ "Apple Platform" OFF)
59
- OPTION(__UNIX_PLATFORM__ "Unix Platform" OFF)
60
- ENDIF(UNIX)
61
- ##>> ProjectCmakeLists -- Header
62
-
63
- ##<< ProjectCmakeLists -- Custom Script
64
-
65
- ##>> ProjectCmakeLists -- Custom Script
66
-
67
- ##<< ProjectCmakeLists -- External Libraries
68
- ##>> ProjectCmakeLists -- External Libraries
69
-
70
- ##<< ProjectCmakeLists -- Directories
71
- ##>> ProjectCmakeLists -- Directories
72
-
73
- ##<< ProjectCmakeLists -- Configure File
74
- CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/config.h.in ${CMAKE_SOURCE_DIR}/config.h )
75
- ##>> ProjectCmakeLists -- Configure File
76
- TEXT
77
-
78
- assert_file_content(expected_content, @project.cmake_lists.abs_path)
79
- end
80
-
81
- file_test "create 2" do
82
- @project.add_external_library 'qt_core' do |e|
83
- e.cmake_name '${QT_LIBRARIES}'
84
- e.cmake_find_script <<-CMAKE
85
- FIND_PACKAGE(Qt4 REQUIRED)
86
- CMAKE
87
- e.cmake_depend_script <<-CMAKE
88
- INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR})
89
- SET(QT_DONT_USE_QTGUI TRUE)
90
- CMAKE
91
- end
92
-
93
- @project.add_external_library 'opengl' do |e|
94
- e.cmake_name '${OPENGL_LIBRARY}'
95
- e.cmake_find_script <<-CMAKE
96
- FIND_PACKAGE(OpenGL REQUIRED)
97
- CMAKE
98
- e.cmake_depend_script <<-CMAKE
99
- INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR})
100
- CMAKE
101
- end
102
-
103
- ghi = Ritsu::Targets::SharedLibrary.new("ghi", :project=>@project)
104
- abc = Ritsu::Targets::Executable.new("abc", :project=>@project)
105
- abc.dependency_targets << ghi
106
-
107
- FileRobot.quietly do
108
- @project.cmake_lists.create
109
- end
110
-
111
- expected_content = <<-TEXT
112
- ##<< ProjectCmakeLists -- Header
113
- PROJECT(mio)
114
- CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
115
- SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules" ${CMAKE_MODULE_PATH})
116
-
117
- IF(WIN32)
118
- OPTION(__WIN_PLATFORM__ "Windows Platform" ON)
119
- ELSE(WIN32)
120
- OPTION(__WIN_PLATFORM__ "Windows Platform" OFF)
121
- ENDIF(WIN32)
122
-
123
- IF(UNIX)
124
- IF(APPLE)
125
- OPTION(__MAC_PLATFORM__ "Apple Platform" ON)
126
- OPTION(__UNIX_PLATFORM__ "Unix Platform" OFF)
127
- ELSE(APPLE)
128
- OPTION(__MAC_PLATFORM__ "Apple Platform" OFF)
129
- OPTION(__UNIX_PLATFORM__ "Unix Platform" ON)
130
- ENDIF(APPLE)
131
- ELSE(UNIX)
132
- OPTION(__MAC_PLATFORM__ "Apple Platform" OFF)
133
- OPTION(__UNIX_PLATFORM__ "Unix Platform" OFF)
134
- ENDIF(UNIX)
135
- ##>> ProjectCmakeLists -- Header
136
-
137
- ##<< ProjectCmakeLists -- Custom Script
138
-
139
- ##>> ProjectCmakeLists -- Custom Script
140
-
141
- ##<< ProjectCmakeLists -- External Libraries
142
- FIND_PACKAGE(OpenGL REQUIRED)
143
-
144
- FIND_PACKAGE(Qt4 REQUIRED)
145
-
146
- ##>> ProjectCmakeLists -- External Libraries
147
-
148
- ##<< ProjectCmakeLists -- Directories
149
- ADD_SUBDIRECTORY(ghi)
150
- ADD_SUBDIRECTORY(abc)
151
- ##>> ProjectCmakeLists -- Directories
152
-
153
- ##<< ProjectCmakeLists -- Configure File
154
- CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/config.h.in ${CMAKE_SOURCE_DIR}/config.h )
155
- ##>> ProjectCmakeLists -- Configure File
156
- TEXT
157
-
158
- assert_file_content(expected_content, @project.cmake_lists.abs_path)
159
- end
1
+ require File.dirname(__FILE__) + "/../../test_helpers"
2
+
3
+ class ProjectCMakeListsTest < Test::Unit::TestCase
4
+ include Ritsu::SetupProjectAndClearEverythingElse
5
+ include Ritsu::TestCaseWithFileTestData
6
+ include Ritsu::Utility
7
+
8
+ def data_dir; File.expand_path(File.dirname(__FILE__) + "/" + File.basename(__FILE__, ".rb")) end
9
+
10
+ def setup
11
+ setup_project('mio')
12
+ @project.project_dir = output_dir
13
+ end
14
+
15
+ must "be present in project" do
16
+ assert @project.respond_to?(:cmake_lists)
17
+ assert @project.cmake_lists.kind_of?(Ritsu::SrcFiles::ProjectCmakeLists)
18
+ end
19
+
20
+ must "src_path must be CMakeLists.txt" do
21
+ cmakelists = @project.cmake_lists
22
+ assert_equal "CMakeLists.txt", cmakelists.src_path
23
+ end
24
+
25
+ must "abs_path must be project_dir/src/CMakeLists.txt" do
26
+ cmakelists = @project.cmake_lists
27
+ assert_equal "#{@project.project_dir}/src/CMakeLists.txt",
28
+ cmakelists.abs_path
29
+ end
30
+
31
+ file_test "create" do
32
+ FileRobot.quietly do
33
+ @project.cmake_lists.create
34
+ end
35
+ assert_file_exists(@project.cmake_lists.abs_path)
36
+
37
+ expected_content = <<-TEXT
38
+ ##<< ProjectCmakeLists -- Header
39
+ PROJECT(mio)
40
+ CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
41
+ SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules" ${CMAKE_MODULE_PATH})
42
+
43
+ IF(WIN32)
44
+ OPTION(__WIN_PLATFORM__ "Windows Platform" ON)
45
+ ELSE(WIN32)
46
+ OPTION(__WIN_PLATFORM__ "Windows Platform" OFF)
47
+ ENDIF(WIN32)
48
+
49
+ IF(UNIX)
50
+ IF(APPLE)
51
+ OPTION(__MAC_PLATFORM__ "Apple Platform" ON)
52
+ OPTION(__UNIX_PLATFORM__ "Unix Platform" OFF)
53
+ ELSE(APPLE)
54
+ OPTION(__MAC_PLATFORM__ "Apple Platform" OFF)
55
+ OPTION(__UNIX_PLATFORM__ "Unix Platform" ON)
56
+ ENDIF(APPLE)
57
+ ELSE(UNIX)
58
+ OPTION(__MAC_PLATFORM__ "Apple Platform" OFF)
59
+ OPTION(__UNIX_PLATFORM__ "Unix Platform" OFF)
60
+ ENDIF(UNIX)
61
+ ##>> ProjectCmakeLists -- Header
62
+
63
+ ##<< ProjectCmakeLists -- Custom Script
64
+
65
+ ##>> ProjectCmakeLists -- Custom Script
66
+
67
+ ##<< ProjectCmakeLists -- External Libraries
68
+ ##>> ProjectCmakeLists -- External Libraries
69
+
70
+ ##<< ProjectCmakeLists -- Directories
71
+ ##>> ProjectCmakeLists -- Directories
72
+
73
+ ##<< ProjectCmakeLists -- Configure File
74
+ CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/config.h.in ${CMAKE_SOURCE_DIR}/config.h )
75
+ ##>> ProjectCmakeLists -- Configure File
76
+ TEXT
77
+
78
+ assert_file_content(expected_content, @project.cmake_lists.abs_path)
79
+ end
80
+
81
+ file_test "create 2" do
82
+ @project.add_external_library 'qt_core' do |e|
83
+ e.cmake_name '${QT_LIBRARIES}'
84
+ e.cmake_find_script <<-CMAKE
85
+ FIND_PACKAGE(Qt4 REQUIRED)
86
+ CMAKE
87
+ e.cmake_depend_script <<-CMAKE
88
+ INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR})
89
+ SET(QT_DONT_USE_QTGUI TRUE)
90
+ CMAKE
91
+ end
92
+
93
+ @project.add_external_library 'opengl' do |e|
94
+ e.cmake_name '${OPENGL_LIBRARY}'
95
+ e.cmake_find_script <<-CMAKE
96
+ FIND_PACKAGE(OpenGL REQUIRED)
97
+ CMAKE
98
+ e.cmake_depend_script <<-CMAKE
99
+ INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR})
100
+ CMAKE
101
+ end
102
+
103
+ ghi = Ritsu::Targets::SharedLibrary.new("ghi", :project=>@project)
104
+ abc = Ritsu::Targets::Executable.new("abc", :project=>@project)
105
+ abc.dependency_targets << ghi
106
+
107
+ FileRobot.quietly do
108
+ @project.cmake_lists.create
109
+ end
110
+
111
+ expected_content = <<-TEXT
112
+ ##<< ProjectCmakeLists -- Header
113
+ PROJECT(mio)
114
+ CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
115
+ SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules" ${CMAKE_MODULE_PATH})
116
+
117
+ IF(WIN32)
118
+ OPTION(__WIN_PLATFORM__ "Windows Platform" ON)
119
+ ELSE(WIN32)
120
+ OPTION(__WIN_PLATFORM__ "Windows Platform" OFF)
121
+ ENDIF(WIN32)
122
+
123
+ IF(UNIX)
124
+ IF(APPLE)
125
+ OPTION(__MAC_PLATFORM__ "Apple Platform" ON)
126
+ OPTION(__UNIX_PLATFORM__ "Unix Platform" OFF)
127
+ ELSE(APPLE)
128
+ OPTION(__MAC_PLATFORM__ "Apple Platform" OFF)
129
+ OPTION(__UNIX_PLATFORM__ "Unix Platform" ON)
130
+ ENDIF(APPLE)
131
+ ELSE(UNIX)
132
+ OPTION(__MAC_PLATFORM__ "Apple Platform" OFF)
133
+ OPTION(__UNIX_PLATFORM__ "Unix Platform" OFF)
134
+ ENDIF(UNIX)
135
+ ##>> ProjectCmakeLists -- Header
136
+
137
+ ##<< ProjectCmakeLists -- Custom Script
138
+
139
+ ##>> ProjectCmakeLists -- Custom Script
140
+
141
+ ##<< ProjectCmakeLists -- External Libraries
142
+ FIND_PACKAGE(OpenGL REQUIRED)
143
+
144
+ FIND_PACKAGE(Qt4 REQUIRED)
145
+
146
+ ##>> ProjectCmakeLists -- External Libraries
147
+
148
+ ##<< ProjectCmakeLists -- Directories
149
+ ADD_SUBDIRECTORY(ghi)
150
+ ADD_SUBDIRECTORY(abc)
151
+ ##>> ProjectCmakeLists -- Directories
152
+
153
+ ##<< ProjectCmakeLists -- Configure File
154
+ CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/config.h.in ${CMAKE_SOURCE_DIR}/config.h )
155
+ ##>> ProjectCmakeLists -- Configure File
156
+ TEXT
157
+
158
+ assert_file_content(expected_content, @project.cmake_lists.abs_path)
159
+ end
160
160
  end
@@ -1,55 +1,55 @@
1
- require File.dirname(__FILE__) + "/../../test_helpers"
2
-
3
- class SharedLibraryCMakeListsTest < Test::Unit::TestCase
4
- include Ritsu::SetupProjectAndClearEverythingElse
5
- include Ritsu::TestCaseWithFileTestData
6
- include Ritsu::Utility
7
-
8
- def data_dir; File.dirname(__FILE__) + "/" + File.basename(__FILE__, ".rb") end
9
-
10
- def setup
11
- setup_project('mio')
12
- @project.project_dir = output_dir
13
- end
14
-
15
- file_test "must be present" do
16
- abc = Ritsu::Targets::SharedLibrary.new("abc", :project=>@project)
17
- assert abc.respond_to?(:cmake_lists)
18
- assert abc.cmake_lists.kind_of?(Ritsu::SrcFiles::SharedLibraryCmakeLists)
19
- assert_equal 1,
20
- abc.src_files.select {|x| x.kind_of?(Ritsu::SrcFiles::SharedLibraryCmakeLists)}.length
21
- end
22
-
23
- file_test "create" do
24
- abc = Ritsu::Targets::SharedLibrary.new("abc", :project=>@project)
25
- FileRobot.quietly do
26
- abc.cmake_lists.create
27
- end
28
- assert_file_exists(abc.cmake_lists.abs_path)
29
-
30
- expected_content = <<-CMAKE
31
- ##<< TargetCmakeLists -- abc -- Libraries
32
- ##>> TargetCmakeLists -- abc -- Libraries
33
-
34
- ##<< TargetCmakeLists -- abc -- Custom Commands
35
- ##>> TargetCmakeLists -- abc -- Custom Commands
36
-
37
- ##<< TargetCmakeLists -- abc -- Source Files
38
- SET(ABC_SRC_FILES
39
- )
40
- ##>> TargetCmakeLists -- abc -- Source Files
41
-
42
- ##<< SharedLibraryCmakeLists -- abc -- Shared Library
43
- ADD_LIBRARY(abc SHARED ${ABC_SRC_FILES})
44
- ##>> SharedLibraryCmakeLists -- abc -- Shared Library
45
-
46
- ##<< TargetCmakeLists -- abc -- Dependencies
47
- ##>> TargetCmakeLists -- abc -- Dependencies
48
-
49
- ##<< TargetCmakeLists -- abc -- Install
50
- ##>> TargetCmakeLists -- abc -- Install
51
- CMAKE
52
-
53
- assert_file_content(expected_content, abc.cmake_lists.abs_path)
54
- end
1
+ require File.dirname(__FILE__) + "/../../test_helpers"
2
+
3
+ class SharedLibraryCMakeListsTest < Test::Unit::TestCase
4
+ include Ritsu::SetupProjectAndClearEverythingElse
5
+ include Ritsu::TestCaseWithFileTestData
6
+ include Ritsu::Utility
7
+
8
+ def data_dir; File.dirname(__FILE__) + "/" + File.basename(__FILE__, ".rb") end
9
+
10
+ def setup
11
+ setup_project('mio')
12
+ @project.project_dir = output_dir
13
+ end
14
+
15
+ file_test "must be present" do
16
+ abc = Ritsu::Targets::SharedLibrary.new("abc", :project=>@project)
17
+ assert abc.respond_to?(:cmake_lists)
18
+ assert abc.cmake_lists.kind_of?(Ritsu::SrcFiles::SharedLibraryCmakeLists)
19
+ assert_equal 1,
20
+ abc.src_files.select {|x| x.kind_of?(Ritsu::SrcFiles::SharedLibraryCmakeLists)}.length
21
+ end
22
+
23
+ file_test "create" do
24
+ abc = Ritsu::Targets::SharedLibrary.new("abc", :project=>@project)
25
+ FileRobot.quietly do
26
+ abc.cmake_lists.create
27
+ end
28
+ assert_file_exists(abc.cmake_lists.abs_path)
29
+
30
+ expected_content = <<-CMAKE
31
+ ##<< TargetCmakeLists -- abc -- Libraries
32
+ ##>> TargetCmakeLists -- abc -- Libraries
33
+
34
+ ##<< TargetCmakeLists -- abc -- Custom Commands
35
+ ##>> TargetCmakeLists -- abc -- Custom Commands
36
+
37
+ ##<< TargetCmakeLists -- abc -- Source Files
38
+ SET(ABC_SRC_FILES
39
+ )
40
+ ##>> TargetCmakeLists -- abc -- Source Files
41
+
42
+ ##<< SharedLibraryCmakeLists -- abc -- Shared Library
43
+ ADD_LIBRARY(abc SHARED ${ABC_SRC_FILES})
44
+ ##>> SharedLibraryCmakeLists -- abc -- Shared Library
45
+
46
+ ##<< TargetCmakeLists -- abc -- Dependencies
47
+ ##>> TargetCmakeLists -- abc -- Dependencies
48
+
49
+ ##<< TargetCmakeLists -- abc -- Install
50
+ ##>> TargetCmakeLists -- abc -- Install
51
+ CMAKE
52
+
53
+ assert_file_content(expected_content, abc.cmake_lists.abs_path)
54
+ end
55
55
  end
@@ -1,55 +1,55 @@
1
- require File.dirname(__FILE__) + "/../../test_helpers"
2
-
3
- class StaticLibraryCMakeListsTest < Test::Unit::TestCase
4
- include Ritsu::SetupProjectAndClearEverythingElse
5
- include Ritsu::TestCaseWithFileTestData
6
- include Ritsu::Utility
7
-
8
- def data_dir; File.dirname(__FILE__) + "/" + File.basename(__FILE__, ".rb") end
9
-
10
- def setup
11
- setup_project('mio')
12
- @project.project_dir = output_dir
13
- end
14
-
15
- file_test "must be present" do
16
- abc = Ritsu::Targets::StaticLibrary.new("abc", :project=>@project)
17
- assert abc.respond_to?(:cmake_lists)
18
- assert abc.cmake_lists.kind_of?(Ritsu::SrcFiles::StaticLibraryCmakeLists)
19
- assert_equal 1,
20
- abc.src_files.select {|x| x.kind_of?(Ritsu::SrcFiles::StaticLibraryCmakeLists)}.length
21
- end
22
-
23
- file_test "create" do
24
- abc = Ritsu::Targets::StaticLibrary.new("abc", :project=>@project)
25
- FileRobot.quietly do
26
- abc.cmake_lists.create
27
- end
28
- assert_file_exists(abc.cmake_lists.abs_path)
29
-
30
- expected_content = <<-CMAKE
31
- ##<< TargetCmakeLists -- abc -- Libraries
32
- ##>> TargetCmakeLists -- abc -- Libraries
33
-
34
- ##<< TargetCmakeLists -- abc -- Custom Commands
35
- ##>> TargetCmakeLists -- abc -- Custom Commands
36
-
37
- ##<< TargetCmakeLists -- abc -- Source Files
38
- SET(ABC_SRC_FILES
39
- )
40
- ##>> TargetCmakeLists -- abc -- Source Files
41
-
42
- ##<< StaticLibraryCmakeLists -- abc -- Static Library
43
- ADD_LIBRARY(abc STATIC ${ABC_SRC_FILES})
44
- ##>> StaticLibraryCmakeLists -- abc -- Static Library
45
-
46
- ##<< TargetCmakeLists -- abc -- Dependencies
47
- ##>> TargetCmakeLists -- abc -- Dependencies
48
-
49
- ##<< TargetCmakeLists -- abc -- Install
50
- ##>> TargetCmakeLists -- abc -- Install
51
- CMAKE
52
-
53
- assert_file_content(expected_content, abc.cmake_lists.abs_path)
54
- end
1
+ require File.dirname(__FILE__) + "/../../test_helpers"
2
+
3
+ class StaticLibraryCMakeListsTest < Test::Unit::TestCase
4
+ include Ritsu::SetupProjectAndClearEverythingElse
5
+ include Ritsu::TestCaseWithFileTestData
6
+ include Ritsu::Utility
7
+
8
+ def data_dir; File.dirname(__FILE__) + "/" + File.basename(__FILE__, ".rb") end
9
+
10
+ def setup
11
+ setup_project('mio')
12
+ @project.project_dir = output_dir
13
+ end
14
+
15
+ file_test "must be present" do
16
+ abc = Ritsu::Targets::StaticLibrary.new("abc", :project=>@project)
17
+ assert abc.respond_to?(:cmake_lists)
18
+ assert abc.cmake_lists.kind_of?(Ritsu::SrcFiles::StaticLibraryCmakeLists)
19
+ assert_equal 1,
20
+ abc.src_files.select {|x| x.kind_of?(Ritsu::SrcFiles::StaticLibraryCmakeLists)}.length
21
+ end
22
+
23
+ file_test "create" do
24
+ abc = Ritsu::Targets::StaticLibrary.new("abc", :project=>@project)
25
+ FileRobot.quietly do
26
+ abc.cmake_lists.create
27
+ end
28
+ assert_file_exists(abc.cmake_lists.abs_path)
29
+
30
+ expected_content = <<-CMAKE
31
+ ##<< TargetCmakeLists -- abc -- Libraries
32
+ ##>> TargetCmakeLists -- abc -- Libraries
33
+
34
+ ##<< TargetCmakeLists -- abc -- Custom Commands
35
+ ##>> TargetCmakeLists -- abc -- Custom Commands
36
+
37
+ ##<< TargetCmakeLists -- abc -- Source Files
38
+ SET(ABC_SRC_FILES
39
+ )
40
+ ##>> TargetCmakeLists -- abc -- Source Files
41
+
42
+ ##<< StaticLibraryCmakeLists -- abc -- Static Library
43
+ ADD_LIBRARY(abc STATIC ${ABC_SRC_FILES})
44
+ ##>> StaticLibraryCmakeLists -- abc -- Static Library
45
+
46
+ ##<< TargetCmakeLists -- abc -- Dependencies
47
+ ##>> TargetCmakeLists -- abc -- Dependencies
48
+
49
+ ##<< TargetCmakeLists -- abc -- Install
50
+ ##>> TargetCmakeLists -- abc -- Install
51
+ CMAKE
52
+
53
+ assert_file_content(expected_content, abc.cmake_lists.abs_path)
54
+ end
55
55
  end