diff --git a/Examples/python/import_packages/split_wrapper/Makefile b/Examples/python/import_packages/split_wrapper/Makefile new file mode 100644 index 000000000..09d5c4cf2 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/Makefile @@ -0,0 +1,25 @@ +TOP = ../../.. +LIBS = + +subdirs = builtin vanilla builtin_split vanilla_split + +check: build + for s in $(subdirs); do \ + (cd $$s && $(MAKE) check); \ + done + +build: + for s in $(subdirs); do \ + (cd $$s && $(MAKE) SWIGOPT='$(SWIGOPT)' LIBS='$(LIBS)' build); \ + done + +static: + for s in $(subdirs); do \ + (cd $$s && $(MAKE) SWIGOPT='$(SWIGOPT)' LIBS='$(LIBS)' static); \ + done + +clean: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' python_clean + for s in $(subdirs); do \ + (cd $$s && $(MAKE) clean); \ + done diff --git a/Examples/python/import_packages/split_wrapper/README b/Examples/python/import_packages/split_wrapper/README new file mode 100644 index 000000000..ac945cfa3 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/README @@ -0,0 +1,14 @@ + These examples/tests are for when the swig generated wrapper module is split +between two packages. Specifically the pure python part is part of a package +and the C/C++ part is not in any package at all. Historically swig has +supported this sort of thing. + + + The -builtin option is tested as well because additional import code +is generated by swig when it is used. The builtin tests are for this +additional code in the python wrappers. + +vanilla # "plane Jane" module both halves in pkg1 +vanilla_split # python 1/2 in pkg1 C 1/2 in global namespace +builtin # both halves in pkg1 (-builtin passed to swig) +builtin # python 1/2 in pkg1 C 1/2 in global namespace (with -builtin) diff --git a/Examples/python/import_packages/split_wrapper/builtin/Makefile b/Examples/python/import_packages/split_wrapper/builtin/Makefile new file mode 100644 index 000000000..b679d60a0 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/builtin/Makefile @@ -0,0 +1,18 @@ +TOP = ../../../.. +SWIGEXE = $(TOP)/../swig +SWIG_LIB_DIR = $(TOP)/../$(TOP_BUILDDIR_TO_TOP_SRCDIR)Lib +SWIGOPT = +LIBS = + +check: build + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' python_run + +build: + cd pkg1 && $(MAKE) build + +static: + cd pkg1 && $(MAKE) static + +clean: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' TARGET='foo' python_clean + cd pkg1 && $(MAKE) -f $(TOP)/../Makefile SRCDIR='$(SRCDIR)' TARGET='foo' python_clean diff --git a/Examples/python/import_packages/split_wrapper/builtin/pkg1/Makefile b/Examples/python/import_packages/split_wrapper/builtin/pkg1/Makefile new file mode 100644 index 000000000..02692dfab --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/builtin/pkg1/Makefile @@ -0,0 +1,19 @@ +TOP = ../../../../.. +SWIGEXE = $(TOP)/../swig +SWIG_LIB_DIR = $(TOP)/../$(TOP_BUILDDIR_TO_TOP_SRCDIR)Lib +SWIGOPT = -builtin +LIBS = + +build: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' \ + SWIG_LIB_DIR='$(SWIG_LIB_DIR)' SWIGEXE='$(SWIGEXE)' \ + SWIGOPT='$(SWIGOPT)' LIBS='$(LIBS)' TARGET='foo' INTERFACE='foo.i' python_cpp + +static: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' \ + SWIG_LIB_DIR='$(SWIG_LIB_DIR)' SWIGEXE='$(SWIGEXE)' \ + SWIGOPT='$(SWIGOPT)' LIBS='$(LIBS)' TARGET='foo' INTERFACE='foo.i' python_cpp_static + +clean: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' TARGET='foo' python_clean + diff --git a/Examples/python/import_packages/split_wrapper/builtin/pkg1/README b/Examples/python/import_packages/split_wrapper/builtin/pkg1/README new file mode 100644 index 000000000..e69de29bb diff --git a/Examples/python/import_packages/split_wrapper/builtin/pkg1/__init__.py b/Examples/python/import_packages/split_wrapper/builtin/pkg1/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/Examples/python/import_packages/split_wrapper/builtin/pkg1/foo.i b/Examples/python/import_packages/split_wrapper/builtin/pkg1/foo.i new file mode 100644 index 000000000..00df2d009 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/builtin/pkg1/foo.i @@ -0,0 +1,10 @@ +%module(package="pkg1") foo +%{ +static unsigned count(void) + { + return 3; + } +%} + +unsigned count(void); + diff --git a/Examples/python/import_packages/split_wrapper/builtin/runme.py b/Examples/python/import_packages/split_wrapper/builtin/runme.py new file mode 100644 index 000000000..8a6055bf1 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/builtin/runme.py @@ -0,0 +1,3 @@ +import pkg1.foo + +assert(pkg1.foo.count() == 3) diff --git a/Examples/python/import_packages/split_wrapper/builtin_split/Makefile b/Examples/python/import_packages/split_wrapper/builtin_split/Makefile new file mode 100644 index 000000000..5fe9271c4 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/builtin_split/Makefile @@ -0,0 +1,22 @@ +TOP = ../../../.. +SWIGEXE = $(TOP)/../swig +SWIG_LIB_DIR = $(TOP)/../$(TOP_BUILDDIR_TO_TOP_SRCDIR)Lib +SWIGOPT = -builtin -outdir pkg1 +LIBS = + +check: build + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' python_run + +build: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' \ + SWIG_LIB_DIR='$(SWIG_LIB_DIR)' SWIGEXE='$(SWIGEXE)' \ + SWIGOPT='$(SWIGOPT)' LIBS='$(LIBS)' TARGET='foo' INTERFACE='foo.i' python_cpp + +static: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' \ + SWIG_LIB_DIR='$(SWIG_LIB_DIR)' SWIGEXE='$(SWIGEXE)' \ + SWIGOPT='$(SWIGOPT)' LIBS='$(LIBS)' TARGET='foo' INTERFACE='foo.i' python_cpp_static + +clean: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' TARGET='foo' python_clean + cd pkg1 && $(MAKE) -f $(TOP)/../Makefile SRCDIR='$(SRCDIR)' TARGET='foo' python_clean diff --git a/Examples/python/import_packages/split_wrapper/builtin_split/foo.i b/Examples/python/import_packages/split_wrapper/builtin_split/foo.i new file mode 100644 index 000000000..00df2d009 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/builtin_split/foo.i @@ -0,0 +1,10 @@ +%module(package="pkg1") foo +%{ +static unsigned count(void) + { + return 3; + } +%} + +unsigned count(void); + diff --git a/Examples/python/import_packages/split_wrapper/builtin_split/pkg1/README b/Examples/python/import_packages/split_wrapper/builtin_split/pkg1/README new file mode 100644 index 000000000..e69de29bb diff --git a/Examples/python/import_packages/split_wrapper/builtin_split/pkg1/__init__.py b/Examples/python/import_packages/split_wrapper/builtin_split/pkg1/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/Examples/python/import_packages/split_wrapper/builtin_split/runme.py b/Examples/python/import_packages/split_wrapper/builtin_split/runme.py new file mode 100644 index 000000000..8a6055bf1 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/builtin_split/runme.py @@ -0,0 +1,3 @@ +import pkg1.foo + +assert(pkg1.foo.count() == 3) diff --git a/Examples/python/import_packages/split_wrapper/vanilla/Makefile b/Examples/python/import_packages/split_wrapper/vanilla/Makefile new file mode 100644 index 000000000..b679d60a0 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/vanilla/Makefile @@ -0,0 +1,18 @@ +TOP = ../../../.. +SWIGEXE = $(TOP)/../swig +SWIG_LIB_DIR = $(TOP)/../$(TOP_BUILDDIR_TO_TOP_SRCDIR)Lib +SWIGOPT = +LIBS = + +check: build + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' python_run + +build: + cd pkg1 && $(MAKE) build + +static: + cd pkg1 && $(MAKE) static + +clean: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' TARGET='foo' python_clean + cd pkg1 && $(MAKE) -f $(TOP)/../Makefile SRCDIR='$(SRCDIR)' TARGET='foo' python_clean diff --git a/Examples/python/import_packages/split_wrapper/vanilla/pkg1/Makefile b/Examples/python/import_packages/split_wrapper/vanilla/pkg1/Makefile new file mode 100644 index 000000000..921bb9951 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/vanilla/pkg1/Makefile @@ -0,0 +1,18 @@ +TOP = ../../../../.. +SWIGEXE = $(TOP)/../swig +SWIG_LIB_DIR = $(TOP)/../$(TOP_BUILDDIR_TO_TOP_SRCDIR)Lib +SWIGOPT = +LIBS = + +build: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' \ + SWIG_LIB_DIR='$(SWIG_LIB_DIR)' SWIGEXE='$(SWIGEXE)' \ + SWIGOPT='$(SWIGOPT)' LIBS='$(LIBS)' TARGET='foo' INTERFACE='foo.i' python_cpp + +static: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' \ + SWIG_LIB_DIR='$(SWIG_LIB_DIR)' SWIGEXE='$(SWIGEXE)' \ + SWIGOPT='$(SWIGOPT)' LIBS='$(LIBS)' TARGET='foo' INTERFACE='foo.i' python_cpp_static + +clean: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' TARGET='foo' python_clean diff --git a/Examples/python/import_packages/split_wrapper/vanilla/pkg1/README b/Examples/python/import_packages/split_wrapper/vanilla/pkg1/README new file mode 100644 index 000000000..e69de29bb diff --git a/Examples/python/import_packages/split_wrapper/vanilla/pkg1/__init__.py b/Examples/python/import_packages/split_wrapper/vanilla/pkg1/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/Examples/python/import_packages/split_wrapper/vanilla/pkg1/foo.i b/Examples/python/import_packages/split_wrapper/vanilla/pkg1/foo.i new file mode 100644 index 000000000..00df2d009 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/vanilla/pkg1/foo.i @@ -0,0 +1,10 @@ +%module(package="pkg1") foo +%{ +static unsigned count(void) + { + return 3; + } +%} + +unsigned count(void); + diff --git a/Examples/python/import_packages/split_wrapper/vanilla/runme.py b/Examples/python/import_packages/split_wrapper/vanilla/runme.py new file mode 100644 index 000000000..8a6055bf1 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/vanilla/runme.py @@ -0,0 +1,3 @@ +import pkg1.foo + +assert(pkg1.foo.count() == 3) diff --git a/Examples/python/import_packages/split_wrapper/vanilla_split/Makefile b/Examples/python/import_packages/split_wrapper/vanilla_split/Makefile new file mode 100644 index 000000000..c322b5aec --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/vanilla_split/Makefile @@ -0,0 +1,22 @@ +TOP = ../../../.. +SWIGEXE = $(TOP)/../swig +SWIG_LIB_DIR = $(TOP)/../$(TOP_BUILDDIR_TO_TOP_SRCDIR)Lib +SWIGOPT = -outdir pkg1 +LIBS = + +check: build + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' python_run + +build: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' \ + SWIG_LIB_DIR='$(SWIG_LIB_DIR)' SWIGEXE='$(SWIGEXE)' \ + SWIGOPT='$(SWIGOPT)' LIBS='$(LIBS)' TARGET='foo' INTERFACE='foo.i' python_cpp + +static: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' \ + SWIG_LIB_DIR='$(SWIG_LIB_DIR)' SWIGEXE='$(SWIGEXE)' \ + SWIGOPT='$(SWIGOPT)' LIBS='$(LIBS)' TARGET='foo' INTERFACE='foo.i' python_cpp_static + +clean: + $(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' TARGET='foo' python_clean + cd pkg1 && $(MAKE) -f $(TOP)/../Makefile SRCDIR='$(SRCDIR)' TARGET='foo' python_clean diff --git a/Examples/python/import_packages/split_wrapper/vanilla_split/foo.i b/Examples/python/import_packages/split_wrapper/vanilla_split/foo.i new file mode 100644 index 000000000..00df2d009 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/vanilla_split/foo.i @@ -0,0 +1,10 @@ +%module(package="pkg1") foo +%{ +static unsigned count(void) + { + return 3; + } +%} + +unsigned count(void); + diff --git a/Examples/python/import_packages/split_wrapper/vanilla_split/pkg1/README b/Examples/python/import_packages/split_wrapper/vanilla_split/pkg1/README new file mode 100644 index 000000000..e69de29bb diff --git a/Examples/python/import_packages/split_wrapper/vanilla_split/pkg1/__init__.py b/Examples/python/import_packages/split_wrapper/vanilla_split/pkg1/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/Examples/python/import_packages/split_wrapper/vanilla_split/runme.py b/Examples/python/import_packages/split_wrapper/vanilla_split/runme.py new file mode 100644 index 000000000..8a6055bf1 --- /dev/null +++ b/Examples/python/import_packages/split_wrapper/vanilla_split/runme.py @@ -0,0 +1,3 @@ +import pkg1.foo + +assert(pkg1.foo.count() == 3)