| SWIG = ../../../preinst-swig |
| |
| all: single multi |
| |
| # This creates an egg which contains only the single module. Any additional implementation files |
| # that implement the interface being wrapped should also be added to this egg |
| single: single_wrap.cxx |
| mkdir -p eggs |
| tar czf eggs/single.egg single.setup single.scm single_wrap.cxx |
| rm -f single.scm single_wrap.cxx |
| |
| # complie the single module with -nounit |
| single_wrap.cxx: single.i |
| $(SWIG) -chicken -c++ -proxy -nounit single.i |
| |
| # Now build both mod1 and mod2 into a single egg |
| multi: mod1_wrap.cxx mod2_wrap.cxx |
| mkdir -p eggs |
| tar czf eggs/multi.egg multi.setup multi_init.scm mod1.scm mod1_wrap.cxx mod2.scm mod2_wrap.cxx |
| rm -f mod1.scm mod1_wrap.cxx mod2.scm mod2_wrap.cxx |
| |
| mod1_wrap.cxx: mod1.i |
| $(SWIG) -chicken -c++ -proxy mod1.i |
| |
| mod2_wrap.cxx: mod2.i |
| $(SWIG) -chicken -c++ -proxy mod2.i |
| |
| clean: |
| rm -rf eggs |
| |
| # this part is for testing... |
| setup: |
| cd eggs && \ |
| mkdir -p install && \ |
| chicken-setup -repository `pwd`/install single.egg && \ |
| chicken-setup -repository `pwd`/install multi.egg |
| |
| check: |
| cd eggs/install && csi ../../test.scm |