mirror of https://github.com/swig/swig
Add a "diamond" pattern to multi-impmort test
This tests whether multiple modules can correctly import the same common module. ``` a -> d -> b -> c -> d* ```
This commit is contained in:
parent
c2c3f968df
commit
fc2b90acd1
|
@ -67,7 +67,7 @@ multi_import.multicpptest:
|
|||
if ! test -d gopath/multi_import/src/swigtests; then \
|
||||
(cd gopath/multi_import/src && ln -s . swigtests); \
|
||||
fi
|
||||
for f in multi_import_b multi_import_a; do \
|
||||
for f in multi_import_d multi_import_b multi_import_a; do \
|
||||
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile SRCDIR='$(SRCDIR)' CXXSRCS='$(CXXSRCS)' \
|
||||
SWIG_LIB_DIR='$(SWIG_LIB_DIR)' SWIGEXE='$(SWIGEXE)' \
|
||||
LIBS='$(LIBS)' INCLUDES='$(INCLUDES)' SWIGOPT='$(SWIGOPT)' NOLINK=true \
|
||||
|
@ -181,6 +181,7 @@ clean:
|
|||
rm -f mod_a.go mod_a.gox mod_b.go mod_b.gox
|
||||
rm -f multi_import_a.go multi_import_a.gox
|
||||
rm -f multi_import_b.go multi_import_b.gox
|
||||
rm -f multi_import_d.go multi_import_d.gox
|
||||
rm -f packageoption_a.go packageoption_a.gox
|
||||
rm -f packageoption_b.go packageoption_b.gox
|
||||
rm -f packageoption_c.go packageoption_c.gox
|
||||
|
|
|
@ -134,7 +134,7 @@ clean:
|
|||
rm -f imports_a$${ext} imports_b$${ext}; \
|
||||
rm -f import_stl_a$${ext} import_stl_b$${ext}; \
|
||||
rm -f mod_a$${ext} mod_b$${ext}; \
|
||||
rm -f multi_import_a$${ext} multi_import_b$${ext}; \
|
||||
rm -f multi_import_a$${ext} multi_import_b$${ext} multi_import_d$${ext}; \
|
||||
rm -f packageoption_a$${ext} packageoption_b$${ext} packageoption_c$${ext}; \
|
||||
rm -f template_typedef_cplx2$${ext}; \
|
||||
done
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
multi_import_a
|
||||
multi_import_d
|
||||
multi_import_b
|
||||
multi_import_a
|
||||
|
|
|
@ -2,7 +2,8 @@
|
|||
|
||||
%module multi_import_a
|
||||
|
||||
%import multi_import_b.i
|
||||
%import multi_import_d.i
|
||||
%import "multi_import_b.i"
|
||||
|
||||
%{
|
||||
#include "multi_import.h"
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
%import "multi_import_d.i"
|
||||
|
||||
class XXX
|
||||
{
|
||||
public:
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
%module multi_import_d
|
||||
|
||||
%constant int myval = 1234;
|
|
@ -106,6 +106,6 @@ clean:
|
|||
rm -f import_stl_a.ml import_stl_b.ml
|
||||
rm -f imports_a.ml imports_b.ml
|
||||
rm -f mod_a.ml mod_b.ml
|
||||
rm -f multi_import_a.ml multi_import_b.ml
|
||||
rm -f multi_import_a.ml multi_import_b.ml multi_import_d.ml
|
||||
rm -f packageoption_a.ml packageoption_b.ml packageoption_c.ml
|
||||
rm -f template_typedef_cplx2.ml
|
||||
|
|
|
@ -86,6 +86,6 @@ clean:
|
|||
rm -f import_stl_a.php import_stl_b.php php_import_stl_a.h php_import_stl_b.h
|
||||
rm -f imports_a.php imports_b.php php_imports_a.h php_imports_b.h
|
||||
rm -f mod_a.php mod_b.php php_mod_a.h php_mod_b.h
|
||||
rm -f multi_import_a.php multi_import_b.php php_multi_import_a.h php_multi_import_b.h
|
||||
rm -f multi_import_a.php multi_import_b.php multi_import_d.php php_multi_import_a.h php_multi_import_b.h php_multi_import_d.h
|
||||
rm -f packageoption_a.php packageoption_b.php packageoption_c.php php_packageoption_a.h php_packageoption_b.h php_packageoption_c.h
|
||||
rm -f template_typedef_cplx2.php php_template_typedef_cplx2.h
|
||||
|
|
|
@ -146,7 +146,7 @@ clean:
|
|||
rm -f clientdata_prop_a.py clientdata_prop_b.py import_stl_a.py import_stl_b.py
|
||||
rm -f hugemod.h hugemod_a.i hugemod_b.i hugemod_a.py hugemod_b.py hugemod_runme.py
|
||||
rm -f imports_a.py imports_b.py mod_a.py mod_b.py multi_import_a.py
|
||||
rm -f multi_import_b.py packageoption_a.py packageoption_b.py packageoption_c.py
|
||||
rm -f multi_import_b.py multi_import_d.py packageoption_a.py packageoption_b.py packageoption_c.py
|
||||
rm -f template_typedef_cplx2.py
|
||||
|
||||
hugemod_runme = hugemod$(SCRIPTPREFIX)
|
||||
|
|
|
@ -113,6 +113,8 @@ namespace vfncs {
|
|||
#ifndef SWIG
|
||||
|
||||
// Initialize these static class members
|
||||
// XXX Since this is a header file, the following creates the symbols in *each* SWIG _wrap.cxx file. Linking the resulting SWIG modules together may result in
|
||||
// duplicate symbol link errors.
|
||||
|
||||
const char* const arith_traits< double, double >::arg_type = "double";
|
||||
const char* const arith_traits< double, double >::res_type = "double";
|
||||
|
|
Loading…
Reference in New Issue