diff options
| author | ruki <[email protected]> | 2021-12-23 22:37:46 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2021-12-23 22:37:46 +0800 |
| commit | 95b63301dd11e16b5039aa9c10cda77e8ddc1036 (patch) | |
| tree | 369d853039549d1548b577dcec1155bcdda1c69d /tests/projects/swig/python_c_with_soabi | |
| parent | 65e93fa30d57ad5823cbfbb7b70df621a5cce4fa (diff) | |
add soabi for swig.python
Diffstat (limited to 'tests/projects/swig/python_c_with_soabi')
| -rw-r--r-- | tests/projects/swig/python_c_with_soabi/src/example.c | 14 | ||||
| -rw-r--r-- | tests/projects/swig/python_c_with_soabi/src/example.i | 11 | ||||
| -rw-r--r-- | tests/projects/swig/python_c_with_soabi/xmake.lua | 8 |
3 files changed, 33 insertions, 0 deletions
diff --git a/tests/projects/swig/python_c_with_soabi/src/example.c b/tests/projects/swig/python_c_with_soabi/src/example.c new file mode 100644 index 000000000..b0ddc9c26 --- /dev/null +++ b/tests/projects/swig/python_c_with_soabi/src/example.c @@ -0,0 +1,14 @@ +double My_variable = 3.0; + +/* Compute factorial of n */ +int fact(int n) { + if (n <= 1) + return 1; + else + return n*fact(n-1); +} + +/* Compute n mod m */ +int my_mod(int n, int m) { + return(n % m); +} diff --git a/tests/projects/swig/python_c_with_soabi/src/example.i b/tests/projects/swig/python_c_with_soabi/src/example.i new file mode 100644 index 000000000..34193edc7 --- /dev/null +++ b/tests/projects/swig/python_c_with_soabi/src/example.i @@ -0,0 +1,11 @@ +%module example +%{ +/* Put headers and other declarations here */ +extern double My_variable; +extern int fact(int); +extern int my_mod(int n, int m); +%} + +extern double My_variable; +extern int fact(int); +extern int my_mod(int n, int m); diff --git a/tests/projects/swig/python_c_with_soabi/xmake.lua b/tests/projects/swig/python_c_with_soabi/xmake.lua new file mode 100644 index 000000000..81dd49926 --- /dev/null +++ b/tests/projects/swig/python_c_with_soabi/xmake.lua @@ -0,0 +1,8 @@ +add_rules("mode.release", "mode.debug") +add_requires("python 3.x") + +target("example") + add_rules("swig.c", {moduletype = "python", soabi = true}) + add_files("src/example.i", {scriptdir = "share"}) + add_files("src/example.c") + add_packages("python") |
