diff --git a/Makefile.am b/Makefile.am index fc57c6e..1972104 100644 --- a/Makefile.am +++ b/Makefile.am @@ -37,8 +37,9 @@ localedir = @datadir@/locale # # ############################################################ -# swig implementation and proxy files generation for Python: -%_wrap.cc %.py : %.i +# swig implementation wrapper files generation for Python: +%_wrap.cc : %.i + test -d "$(@D)" || mkdir -p -- "$(@D)" $(SWIG) $(SWIG_PYTHON_OPT) -o $@ $< # ############################################################ @@ -91,11 +92,11 @@ sgpem2uman_TEXINFOS = $(licenses) doc/vers-uman.texi sgpem2dman_TEXINFOS = $(licenses) doc/vers-dman.texi apidox : + test -d 'doc/API' || mkdir -p -- 'doc/API' if HAVE_DOXYGEN doxygen config/Doxyfile else @echo "** Doxygen not installed. Skipping generating API docs." - test ! -d 'doc/API' && mkdir 'doc/API' endif dist-hook : apidox @@ -106,55 +107,39 @@ distclean-local : # ############################################################ # -# source : main executable +# source : libpyloader.la # # ############################################################ -# Program & library names -bin_PROGRAMS = sgpemv2 +pkglib_LTLIBRARIES = src/backend/pyloader/libpyloader.la -sgpemv2_CPPFLAGS = \ +src_backend_pyloader_libpyloader_la_CPPFLAGS = \ -I@top_srcdir@ \ -DPYCDIR="\"$(pycdir)\"" \ -DMODDIR="\"$(moddir)\"" \ -DLOCALEDIR="\"$(localedir)\"" \ - $(CAIRO_CFLAGS) \ - $(GTKMM_CFLAGS) \ $(PYTHON_CPPFLAGS) \ - $(GTHREAD_CFLAGS) -sgpemv2_LDFLAGS = \ - -L@builddir@/src/backend \ - $(LT_LDFLAGS) -sgpemv2_LDADD = \ - src/backend/libbackend.la \ - $(CAIRO_LIBS) \ - $(GTKMM_LIBS) \ - $(GTHREAD_LIBS) + $(GLIBMM_CFLAGS) +src_backend_pyloader_libpyloader_la_LIBADD = \ + $(PYTHON_LDFLAGS) \ + $(PYTHON_EXTRA_LIBS) \ + $(GLIBMM_LIBS) +src_backend_pyloader_libpyloader_la_LDFLAGS = \ + $(PYTHON_EXTRA_LDFLAGS) \ + $(LT_LDFLAGS) # Please keep this in sorted order: -sgpemv2_SOURCES = \ - src/graphical_terminal_io.cc \ - src/main.cc \ - src/main_window.cc \ - src/observer.cc \ - src/parse_opts.cc \ - src/simulation.cc \ - src/standard_io.cc \ - src/start_gui.cc \ - src/text_simulation.cc +src_backend_pyloader_libpyloader_la_SOURCES = \ + src/backend/pyloader/python_policy.cc \ + src/backend/pyloader/python_policy_manager.cc noinst_HEADERS = \ - src/graphical_simulation.hh \ - src/graphical_terminal_io.hh \ - src/io_manager.hh \ - src/main.hh \ - src/main_window.hh \ - src/observer.hh \ - src/parse_opts.hh \ - src/simulation.hh \ - src/standard_io.hh \ - src/start_gui.hh \ - src/text_simulation.hh + src/backend/pyloader/python_policy.hh \ + src/backend/pyloader/python_policy_manager.hh + +mod_PYTHON = \ + src/backend/pyloader/Abstract.py \ + src/backend/pyloader/Policy.py # ############################################################ # @@ -163,7 +148,7 @@ noinst_HEADERS = \ # ############################################################ # Program & library names -pkglib_LTLIBRARIES = src/backend/libbackend.la +pkglib_LTLIBRARIES += src/backend/libbackend.la src_backend_libbackend_la_CPPFLAGS = \ -I@top_srcdir@ \ @@ -174,9 +159,9 @@ src_backend_libbackend_la_CPPFLAGS = \ $(GLIBMM_CFLAGS) src_backend_libbackend_la_LIBADD = \ src/backend/pyloader/libpyloader.la -src_backend_libbackend_la_LDFLAGS = $(GLIBMM_LDFLAGS) \ - $(LT_LDFLAGS) \ - -L@builddir@/src/backend/pyloader +src_backend_libbackend_la_LDFLAGS = \ + $(GLIBMM_LDFLAGS) \ + $(LT_LDFLAGS) # Please keep this in sorted order: src_backend_libbackend_la_SOURCES = \ @@ -207,6 +192,55 @@ noinst_HEADERS += \ src/backend/slice.hh \ src/backend/string_utils.hh +# ############################################################ +# +# source : main executable +# +# ############################################################ + +# Program & library names +bin_PROGRAMS = sgpemv2 + +sgpemv2_CPPFLAGS = \ + -I@top_srcdir@ \ + -DPYCDIR="\"$(pycdir)\"" \ + -DMODDIR="\"$(moddir)\"" \ + -DLOCALEDIR="\"$(localedir)\"" \ + $(CAIRO_CFLAGS) \ + $(GTKMM_CFLAGS) \ + $(PYTHON_CPPFLAGS) \ + $(GTHREAD_CFLAGS) +sgpemv2_LDFLAGS = $(LT_LDFLAGS) +sgpemv2_LDADD = \ + src/backend/libbackend.la \ + $(CAIRO_LIBS) \ + $(GTKMM_LIBS) \ + $(GTHREAD_LIBS) + +# Please keep this in sorted order: +sgpemv2_SOURCES = \ + src/graphical_terminal_io.cc \ + src/main.cc \ + src/main_window.cc \ + src/observer.cc \ + src/parse_opts.cc \ + src/simulation.cc \ + src/standard_io.cc \ + src/start_gui.cc \ + src/text_simulation.cc + +noinst_HEADERS += \ + src/graphical_simulation.hh \ + src/graphical_terminal_io.hh \ + src/io_manager.hh \ + src/main.hh \ + src/main_window.hh \ + src/observer.hh \ + src/parse_opts.hh \ + src/simulation.hh \ + src/standard_io.hh \ + src/start_gui.hh \ + src/text_simulation.hh # ############################################################ # @@ -218,59 +252,25 @@ proxies = src/backend/sgpem.py wrappers = src/backend/sgpem_wrap.cc mod_LTLIBRARIES = _sgpem.la -mod_PYTHON = $(proxies) +mod_PYTHON += $(proxies) -_sgpem_la_INTERFACES = sgpem.i +# static pattern rule +$(proxies): %.py : %.i + +_sgpem_la_INTERFACES = src/backend/sgpem.i _sgpem_la_CPPFLAGS = \ -I@top_srcdir@ \ -I@top_srcdir@/src/backend \ $(SWIG_PYTHON_CPPFLAGS) \ $(GLIBMM_CFLAGS) -_sgpem_la_LDFLAGS = -module $(GLIBMM_LDFLAGS) \ - -L@top_builddir@/src/backend +_sgpem_la_LDFLAGS = -module $(GLIBMM_LDFLAGS) _sgpem_la_LIBADD = src/backend/libbackend.la _sgpem_la_SOURCES = $(wrappers) - + EXTRA_DIST += $(_sgpem_la_INTERFACES) MOSTLYCLEANFILES = $(proxies) $(wrappers) -# ############################################################ -# -# source : libpyloader.la -# -# ############################################################ - -pkglib_LTLIBRARIES += src/backend/pyloader/libpyloader.la - -src_backend_pyloader_libpyloader_la_CPPFLAGS = \ - -I@top_srcdir@ \ - -DPYCDIR="\"$(pycdir)\"" \ - -DMODDIR="\"$(moddir)\"" \ - -DLOCALEDIR="\"$(localedir)\"" \ - $(PYTHON_CPPFLAGS) \ - $(GLIBMM_CFLAGS) -src_backend_pyloader_libpyloader_la_LIBADD = \ - $(PYTHON_LDFLAGS) \ - $(PYTHON_EXTRA_LIBS) \ - $(GLIBMM_LIBS) -src_backend_pyloader_libpyloader_la_LDFLAGS = \ - $(PYTHON_EXTRA_LDFLAGS) \ - $(LT_LDFLAGS) - -# Please keep this in sorted order: -src_backend_pyloader_libpyloader_la_SOURCES = \ - src/backend/pyloader/python_policy.cc \ - src/backend/pyloader/python_policy_manager.cc - -noinst_HEADERS += \ - src/backend/pyloader/python_policy.hh \ - src/backend/pyloader/python_policy_manager.hh - -mod_PYTHON += \ - src/backend/pyloader/Abstract.py \ - src/backend/pyloader/Policy.py - # ############################################################ # # source : templates @@ -301,3 +301,4 @@ pyc_PYTHON = # fcfs.py rr.py rr-p.py ... # ############################################################ # DEJATOOL = src/testsuite/example-test.exp + diff --git a/config/Doxyfile.in b/config/Doxyfile.in index e9b3e2b..7abe7e8 100644 --- a/config/Doxyfile.in +++ b/config/Doxyfile.in @@ -30,7 +30,7 @@ PROJECT_NUMBER = @PACKAGE_VERSION@ # If a relative path is entered, it will be relative to the location # where doxygen was started. If left blank the current directory will be used. -OUTPUT_DIRECTORY = @abs_top_builddir@/doc/API/ +OUTPUT_DIRECTORY = doc/API/ # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create # 4096 sub-directories (in 2 levels) under the output directory of each output