[gnome-sudoku] Split off backend files into libsudoku
- From: Michael Catanzaro <mcatanzaro src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-sudoku] Split off backend files into libsudoku
- Date: Sun, 29 Jun 2014 22:51:09 +0000 (UTC)
commit 8513bb5a5edafabaaf7297812a62c14d5f2b1910
Author: Michael Catanzaro <mcatanzaro gnome org>
Date: Sun Jun 29 17:19:41 2014 -0500
Split off backend files into libsudoku
Let's prohibit these files from using any of the GUI-related code.
https://bugzilla.gnome.org/show_bug.cgi?id=579836
Makefile.am | 7 ++++-
configure.ac | 14 +++++++++++++
lib/Makefile.am | 38 ++++++++++++++++++++++++++++++++++++
{src => lib}/sudoku-board.vala | 0
{src => lib}/sudoku-game.vala | 0
{src => lib}/sudoku-generator.vala | 0
{src => lib}/sudoku-saver.vala | 0
{src => lib}/sudoku-solver.vala | 2 +-
src/Makefile.am | 15 +++++--------
9 files changed, 64 insertions(+), 12 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index cadee0c..0e1da46 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,7 +1,10 @@
-SUBDIRS = data help po src
+SUBDIRS = data lib src help po
+
+ACLOCAL_AMFLAGS = -I m4
MAINTAINERCLEANFILES = \
$(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \
- $(GITIGNORE_MAINTAINERCLEANFILES_MAKEFILE_IN)
+ $(GITIGNORE_MAINTAINERCLEANFILES_MAKEFILE_IN) \
+ $(GITIGNORE_MAINTAINERCLEANFILES_M4_LIBTOOL)
-include $(top_srcdir)/git.mk
diff --git a/configure.ac b/configure.ac
index a59690c..b3c8e58 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,8 +9,13 @@ GNOME_MAINTAINER_MODE_DEFINES
AM_PROG_VALAC([0.24.0])
AM_PROG_CC_C_O
+LT_PREREQ([2.4])
+LT_INIT
+
GLIB_GSETTINGS
+AC_CONFIG_MACRO_DIR([m4])
+
dnl ###########################################################################
dnl Dependencies
dnl ###########################################################################
@@ -23,12 +28,20 @@ PKG_CHECK_MODULES(GNOME_SUDOKU, [
gio-2.0 >= $GLIB_REQUIRED
gtk+-3.0 >= $GTK_REQUIRED
gee-0.8
+])
+
+PKG_CHECK_MODULES(LIBSUDOKU, [
+ glib-2.0 >= $GLIB_REQUIRED
+ gio-2.0 >= $GLIB_REQUIRED
+ gee-0.8
json-glib-1.0
])
AC_PATH_PROG([APPDATA_VALIDATE], [appdata-validate], [/bin/true])
AC_PATH_PROG([DESKTOP_FILE_VALIDATE], [desktop-file-validate], [/bin/true])
+AC_CHECK_LIB([m],[floor])
+
dnl ###########################################################################
dnl GResources
dnl ###########################################################################
@@ -59,6 +72,7 @@ data/Makefile
data/icons/Makefile
data/icons/hicolor/Makefile
data/icons/HighContrast/Makefile
+lib/Makefile
help/Makefile
src/Makefile
src/gnome-sudoku.gresource.xml
diff --git a/lib/Makefile.am b/lib/Makefile.am
new file mode 100644
index 0000000..c8a14d4
--- /dev/null
+++ b/lib/Makefile.am
@@ -0,0 +1,38 @@
+noinst_LTLIBRARIES = libsudoku.la
+
+libsudoku_la_SOURCES = \
+ sudoku-board.vala \
+ sudoku-game.vala \
+ sudoku-generator.vala \
+ sudoku-saver.vala \
+ sudoku-solver.vala
+
+libsudoku_la_CFLAGS = -w
+
+libsudoku_la_CPPFLAGS = \
+ -DPKGDATADIR=\"@datadir@/gnome-sudoku\" \
+ -DLOCALEDIR=\"@localedir \" \
+ -DGETTEXT_PACKAGE=\"$(GETTEXT_PACKAGE)\" \
+ $(LIBSUDOKU_CFLAGS)
+
+libsudoku_la_LIBADD = \
+ $(LIBSUDOKU_LIBS)
+
+libsudoku_la_VALAFLAGS = \
+ --pkg gee-0.8 \
+ --pkg glib-2.0 \
+ --pkg gio-2.0 \
+ --pkg json-glib-1.0 \
+ --pkg posix \
+ --header=libsudoku.h \
+ --vapi=libsudoku.vapi
+
+EXTRA_DIST = \
+ libsudoku.h \
+ libsudoku.vapi
+
+MAINTAINERCLEANFILES = \
+ libsudoku.h \
+ libsudoku.vapi
+
+-include $(top_srcdir)/git.mk
diff --git a/src/sudoku-board.vala b/lib/sudoku-board.vala
similarity index 100%
rename from src/sudoku-board.vala
rename to lib/sudoku-board.vala
diff --git a/src/sudoku-game.vala b/lib/sudoku-game.vala
similarity index 100%
rename from src/sudoku-game.vala
rename to lib/sudoku-game.vala
diff --git a/src/sudoku-generator.vala b/lib/sudoku-generator.vala
similarity index 100%
rename from src/sudoku-generator.vala
rename to lib/sudoku-generator.vala
diff --git a/src/sudoku-saver.vala b/lib/sudoku-saver.vala
similarity index 100%
rename from src/sudoku-saver.vala
rename to lib/sudoku-saver.vala
diff --git a/src/sudoku-solver.vala b/lib/sudoku-solver.vala
similarity index 99%
rename from src/sudoku-solver.vala
rename to lib/sudoku-solver.vala
index 6931db6..1a33cef 100644
--- a/src/sudoku-solver.vala
+++ b/lib/sudoku-solver.vala
@@ -486,7 +486,7 @@ public class SudokuSolver : Object
}
}
-class SudokuRater : SudokuSolver {
+public class SudokuRater : SudokuSolver {
private bool guessing;
private bool fake_add;
diff --git a/src/Makefile.am b/src/Makefile.am
index 7f1fd7f..ba8cba3 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -5,34 +5,31 @@ BUILT_SOURCES = gnome-sudoku-resources.c
gnome_sudoku_SOURCES = \
config.vapi \
gnome-sudoku.vala \
- sudoku-board.vala \
- sudoku-game.vala \
- sudoku-generator.vala \
sudoku-store.vala \
- sudoku-solver.vala \
sudoku-view.vala \
number-picker.vala \
sudoku-printer.vala \
- sudoku-saver.vala \
$(BUILT_SOURCES)
-gnome_sudoku_CFLAGS = \
+gnome_sudoku_CFLAGS = -w
+
+gnome_sudoku_CPPFLAGS = \
-DPKGDATADIR=\"@datadir@/gnome-sudoku\" \
-DLOCALEDIR=\"@localedir \" \
-DGETTEXT_PACKAGE=\"$(GETTEXT_PACKAGE)\" \
- -w \
+ -I$(top_srcdir)/lib \
$(GNOME_SUDOKU_CFLAGS)
gnome_sudoku_LDADD = \
$(GNOME_SUDOKU_LIBS) \
- -lm
+ $(top_builddir)/lib/libsudoku.la
gnome_sudoku_VALAFLAGS = \
--pkg posix \
--pkg gio-2.0 \
--pkg gtk+-3.0 \
--pkg gee-0.8 \
- --pkg json-glib-1.0
+ $(top_builddir)/lib/libsudoku.vapi
gnome-sudoku-resources.c: gnome-sudoku.gresource.xml $(shell $(GLIB_COMPILE_RESOURCES)
--generate-dependencies gnome-sudoku.gresource.xml)
$(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate-source $<
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]