# guile-irrlicht --- GNU Guile bindings for Irrlicht Engine
#
-# Copyright (C) 2020 Javier Sancho <jsf@jsancho.org>
+# Copyright (C) 2021 Javier Sancho <jsf@jsancho.org>
#
# This file is part of guile-irrlicht.
#
# <http://www.gnu.org/licenses/>.
-# C++ code
ACLOCAL_AMFLAGS = -I m4
+
+# Swig wrapper
+
lib_LTLIBRARIES = libguile-irrlicht.la
-libguile_irrlicht_la_SOURCES = \
- src/animated-mesh.cpp \
- src/animated-mesh-md2.cpp \
- src/animated-mesh-scene-node.cpp \
- src/camera-scene-node.cpp \
- src/color.cpp \
- src/device.cpp \
- src/dimension2d.cpp \
- src/driver-types.cpp \
- src/file-archive.cpp \
- src/file-system.cpp \
- src/gui-element.cpp \
- src/gui-environment.cpp \
- src/gui-static-text.cpp \
- src/guile-irrlicht.cpp \
- src/material-flags.cpp \
- src/mesh.cpp \
- src/mesh-scene-node.cpp \
- src/misc.cpp \
- src/rect.cpp \
- src/reference-counted.cpp \
- src/scene-manager.cpp \
- src/scene-node.cpp \
- src/texture.cpp \
- src/vector3d.cpp \
- src/video-driver.cpp \
- src/wchar.cpp
-libguile_irrlicht_la_CPPFLAGS = @GUILE_CFLAGS@
-libguile_irrlicht_la_LDFLAGS = \
- -version-info 0:1 \
- @GUILE_LIBS@
+BUILT_SOURCES = $(builddir)/irrlicht_wrap.cxx
+SWIG_FLAGS = -guile -scmstub -Linkage passive -proxy -emitslotaccessors
+$(builddir)/irrlicht_wrap.cxx: irrlicht.i
+ $(SWIG) $(SWIG_FLAGS) $(IRRLICHT_CFLAGS) -o $@ $<
+libguile_irrlicht_la_SOURCES = $(builddir)/irrlicht_wrap.cxx irrlicht.i
+libguile_irrlicht_la_CPPFLAGS = @GUILE_CFLAGS@
+libguile_irrlicht_la_LDFLAGS = -version-info 0:1 @GUILE_LIBS@
# Guile code
+
GOBJECTS = $(SOURCES:%.scm=%.go)
nobase_mod_DATA = $(SOURCES)
moddir = @GUILE_SITE@
godir = @GUILE_SITE_CCACHE@
-SOURCES = irrlicht.scm
+SOURCES = irrlicht.scm \
+ irrlicht-primitive.scm \
+ Swig/common.scm
+
+nodist_noinst_SCRIPTS = pre-inst-env
+
+# Documentation
+
+# info_TEXINFOS = doc/irrlicht.texi
+
+# doc_guile_irrlicht_TEXINFOS = \
+# doc/fdl.texi \
+# doc/irrlicht.texi