diff options
| author | ruki <[email protected]> | 2021-06-19 00:44:07 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2021-06-19 00:44:07 +0800 |
| commit | e3e9c9a4cabe1fd164f5f8ad79e90d2e9e391437 (patch) | |
| tree | 28e59298a52a80149d1e80a4b8cc18371176c468 /tests | |
| parent | abcb36d06cf324c64968606950ec7c586dbafa61 (diff) | |
export c++ classes
Diffstat (limited to 'tests')
6 files changed, 41 insertions, 1 deletions
diff --git a/tests/projects/c++/shared_library_export_all/src/foo.cpp b/tests/projects/c++/shared_library_export_all/src/foo.cpp new file mode 100644 index 000000000..3ab50856c --- /dev/null +++ b/tests/projects/c++/shared_library_export_all/src/foo.cpp @@ -0,0 +1,6 @@ +#include "foo.h" + +int test::add(int a, int b) +{ + return a + b; +} diff --git a/tests/projects/c++/shared_library_export_all/src/foo.h b/tests/projects/c++/shared_library_export_all/src/foo.h new file mode 100644 index 000000000..f671c7d32 --- /dev/null +++ b/tests/projects/c++/shared_library_export_all/src/foo.h @@ -0,0 +1,5 @@ +class test +{ +public: + static int add(int a, int b); +}; diff --git a/tests/projects/c++/shared_library_export_all/src/main.cpp b/tests/projects/c++/shared_library_export_all/src/main.cpp new file mode 100644 index 000000000..e48f4730e --- /dev/null +++ b/tests/projects/c++/shared_library_export_all/src/main.cpp @@ -0,0 +1,10 @@ +#include "foo.h" +#include <iostream> + +using namespace std; + +int main(int argc, char** argv) +{ + cout << "add(1, 2) = " << test::add(1, 2) << endl; + return 0; +} diff --git a/tests/projects/c++/shared_library_export_all/test.lua b/tests/projects/c++/shared_library_export_all/test.lua new file mode 100644 index 000000000..b76241be2 --- /dev/null +++ b/tests/projects/c++/shared_library_export_all/test.lua @@ -0,0 +1,6 @@ +-- main entry +function main(t) + + -- build project + t:build() +end diff --git a/tests/projects/c++/shared_library_export_all/xmake.lua b/tests/projects/c++/shared_library_export_all/xmake.lua new file mode 100644 index 000000000..6bac1947f --- /dev/null +++ b/tests/projects/c++/shared_library_export_all/xmake.lua @@ -0,0 +1,13 @@ +add_rules("mode.debug", "mode.release") + +target("foo") + set_kind("shared") + add_files("src/foo.cpp") + add_rules("utils.symbols.export_all", {with_classes = true}) + +target("demo") + set_kind("binary") + add_deps("foo") + add_files("src/main.cpp") + + diff --git a/tests/projects/c/shared_library_export_all/xmake.lua b/tests/projects/c/shared_library_export_all/xmake.lua index 4e3d86ef5..6466a16fc 100644 --- a/tests/projects/c/shared_library_export_all/xmake.lua +++ b/tests/projects/c/shared_library_export_all/xmake.lua @@ -3,7 +3,7 @@ add_rules("mode.release", "mode.debug") target("foo") set_kind("shared") add_files("src/foo.c", "src/bar.cpp") - add_rules("utils.symbols.export_all") + add_rules("utils.symbols.export_all", {class = true}) target("test") set_kind("binary") |
