Mxx_ru 1.6.10.1 → 1.6.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/NEWS +17 -0
- data/lib/mxx_ru/cpp.rb +3 -1
- data/lib/mxx_ru/cpp/ext_cmake_project.rb +473 -0
- data/lib/mxx_ru/cpp/obj_placement.rb +69 -1
- data/lib/mxx_ru/cpp/target.rb +8 -4
- data/lib/mxx_ru/cpp/toolset.rb +25 -1
- data/lib/mxx_ru/cpp/toolsets/clang_family.rb +17 -0
- data/lib/mxx_ru/cpp/toolsets/gcc_family.rb +17 -0
- data/lib/mxx_ru/cpp/toolsets/vc_family.rb +24 -0
- data/lib/mxx_ru/externals.rb +31 -17
- data/lib/mxx_ru/generators/ext-cmake-prj/g.rb +181 -0
- data/lib/mxx_ru/generators/ext-cmake-prj/template.erb +24 -0
- data/lib/mxx_ru/generators/externals/g.rb +172 -0
- data/lib/mxx_ru/generators/externals/template.erb +60 -0
- data/lib/mxx_ru/helpers.rb +46 -0
- data/lib/mxx_ru/version.rb +2 -2
- data/tests/cmake/build.rb +16 -0
- data/tests/cmake/hello_shared/CMakeLists.txt +18 -0
- data/tests/cmake/hello_shared/include/hello_shared.hpp +20 -0
- data/tests/cmake/hello_shared/src/hello_shared.cpp +10 -0
- data/tests/cmake/hello_shared_cmake_wrapper.rb +8 -0
- data/tests/cmake/hello_static/CMakeLists.txt +16 -0
- data/tests/cmake/hello_static/include/hello_static.hpp +9 -0
- data/tests/cmake/hello_static/src/hello_static.cpp +9 -0
- data/tests/cmake/hello_static_cmake_wrapper.rb +7 -0
- data/tests/cmake/main_app.cpp +9 -0
- data/tests/cmake/main_app.rb +15 -0
- data/tests/cmake/tc_cmake_build.rb +29 -0
- data/tests/mxx_ru/vc8/tc_default_manifest.rb +1 -1
- data/tests/mxx_ru/vc8/ts_vc8.rb +1 -1
- metadata +20 -2
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'mxx_ru/cpp'
|
2
|
+
|
3
|
+
MxxRu::Cpp::exe_target {
|
4
|
+
target 'main_app'
|
5
|
+
rtl_mode MxxRu::Cpp::RTL_SHARED
|
6
|
+
|
7
|
+
required_prj 'hello_static_cmake_wrapper.rb'
|
8
|
+
lib 'hello_static'
|
9
|
+
|
10
|
+
required_prj 'hello_shared_cmake_wrapper.rb'
|
11
|
+
lib 'hello_shared'
|
12
|
+
|
13
|
+
cpp_source 'main_app.cpp'
|
14
|
+
}
|
15
|
+
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
|
3
|
+
require File.expand_path( File.dirname( __FILE__ ) + '/../test_with_compilation' )
|
4
|
+
|
5
|
+
require File.expand_path( File.dirname( __FILE__ ) + '/../../lib/mxx_ru/externals.rb' )
|
6
|
+
|
7
|
+
probe = MxxRu::Helpers.external_tool_version_probe(
|
8
|
+
'cmake --version', /^cmake version\s(\S+)\s/ )
|
9
|
+
|
10
|
+
if probe
|
11
|
+
puts "CMake version #{probe}"
|
12
|
+
|
13
|
+
class TC_CMakeBuild < Test::Unit::TestCase
|
14
|
+
include TestWithCompilation
|
15
|
+
|
16
|
+
test_path 'tests/cmake'
|
17
|
+
|
18
|
+
test_case :successful_compile_and_link do
|
19
|
+
assert_nothing_raised {
|
20
|
+
build( 'build.rb' )
|
21
|
+
clean( 'build.rb' )
|
22
|
+
}
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
else
|
27
|
+
puts "CMake not found, test skipped #{__FILE__}"
|
28
|
+
end
|
29
|
+
|
@@ -5,7 +5,7 @@ require 'mxx_ru/cpp/toolsets/vc8'
|
|
5
5
|
|
6
6
|
class TC_DefaultManifest < Test::Unit::TestCase
|
7
7
|
def test_default
|
8
|
-
manifest_desc =
|
8
|
+
manifest_desc = MxxRu::Cpp::Toolsets::Vc8::default_manifest
|
9
9
|
|
10
10
|
assert_not_nil( manifest_desc )
|
11
11
|
assert_equal( manifest_desc.autogen, true )
|
data/tests/mxx_ru/vc8/ts_vc8.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: Mxx_ru
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.6.
|
4
|
+
version: 1.6.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- The Mxx_ru Project
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-04-
|
11
|
+
date: 2016-04-25 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Mxx_ru is a cross-platform build tool primarily focused to C/C++ projects
|
14
14
|
email: eao197@yahoo.com
|
@@ -81,6 +81,7 @@ files:
|
|
81
81
|
- lib/mxx_ru/cpp/analyzer.rb
|
82
82
|
- lib/mxx_ru/cpp/composite.rb
|
83
83
|
- lib/mxx_ru/cpp/detect_toolset.rb
|
84
|
+
- lib/mxx_ru/cpp/ext_cmake_project.rb
|
84
85
|
- lib/mxx_ru/cpp/lib_collection.rb
|
85
86
|
- lib/mxx_ru/cpp/mode.rb
|
86
87
|
- lib/mxx_ru/cpp/obj_placement.rb
|
@@ -130,13 +131,30 @@ files:
|
|
130
131
|
- lib/mxx_ru/generators/cpp-exe/g.rb
|
131
132
|
- lib/mxx_ru/generators/cpp-lib-collection/g.rb
|
132
133
|
- lib/mxx_ru/generators/cpp-lib/g.rb
|
134
|
+
- lib/mxx_ru/generators/ext-cmake-prj/g.rb
|
135
|
+
- lib/mxx_ru/generators/ext-cmake-prj/template.erb
|
136
|
+
- lib/mxx_ru/generators/externals/g.rb
|
137
|
+
- lib/mxx_ru/generators/externals/template.erb
|
133
138
|
- lib/mxx_ru/generators/impl/cpp/generation.rb
|
134
139
|
- lib/mxx_ru/generators/impl/cpp/template.erb
|
135
140
|
- lib/mxx_ru/generators/impl/std_receiver.rb
|
141
|
+
- lib/mxx_ru/helpers.rb
|
136
142
|
- lib/mxx_ru/makestyle_generator.rb
|
137
143
|
- lib/mxx_ru/textfile_unittest.rb
|
138
144
|
- lib/mxx_ru/util.rb
|
139
145
|
- lib/mxx_ru/version.rb
|
146
|
+
- tests/cmake/build.rb
|
147
|
+
- tests/cmake/hello_shared/CMakeLists.txt
|
148
|
+
- tests/cmake/hello_shared/include/hello_shared.hpp
|
149
|
+
- tests/cmake/hello_shared/src/hello_shared.cpp
|
150
|
+
- tests/cmake/hello_shared_cmake_wrapper.rb
|
151
|
+
- tests/cmake/hello_static/CMakeLists.txt
|
152
|
+
- tests/cmake/hello_static/include/hello_static.hpp
|
153
|
+
- tests/cmake/hello_static/src/hello_static.cpp
|
154
|
+
- tests/cmake/hello_static_cmake_wrapper.rb
|
155
|
+
- tests/cmake/main_app.cpp
|
156
|
+
- tests/cmake/main_app.rb
|
157
|
+
- tests/cmake/tc_cmake_build.rb
|
140
158
|
- tests/cpp/cpp_sources_glob/build.rb
|
141
159
|
- tests/cpp/cpp_sources_glob/some/module/1/f1.cpp
|
142
160
|
- tests/cpp/cpp_sources_glob/some/module/2/f2.cpp
|