diff --git a/lib/mk/tuxmath_t4k.mk b/lib/mk/tuxmath_t4k.mk new file mode 100644 index 0000000..6441b22 --- /dev/null +++ b/lib/mk/tuxmath_t4k.mk @@ -0,0 +1,19 @@ +T4K_DIR := $(call select_from_ports,tuxmath)/src/app/tuxmath/t4k + +LIBS += libc sdl sdl_image sdl_mixer sdl_ttf sdl_net libiconv libxml2 + +INC_DIR += $(REP_DIR)/src/app/tuxmath/t4k \ + $(T4K_DIR)/src/linebreak + +CC_OPT += -DCOMMON_DATA_PREFIX=\"/data\" + +SRC_C := $(notdir $(wildcard $(T4K_DIR)/src/*.c) \ + $(wildcard $(T4K_DIR)/src/linebreak/unistr/*.c) \ + width.c linebreak.c) + +CC_WARN += -Wall -Wno-unused-function + +vpath %.c $(T4K_DIR)/src +vpath %.c $(T4K_DIR)/src/linebreak +vpath %.c $(T4K_DIR)/src/linebreak/unistr +vpath %.c $(T4K_DIR)/src/linebreak/uniwidth diff --git a/ports/tuxmath.hash b/ports/tuxmath.hash new file mode 100644 index 0000000..7c32043 --- /dev/null +++ b/ports/tuxmath.hash @@ -0,0 +1 @@ +ea0e7acf7c3f477de34e5e2d04a55102a6f9c3f5 diff --git a/ports/tuxmath.port b/ports/tuxmath.port new file mode 100644 index 0000000..c13006c --- /dev/null +++ b/ports/tuxmath.port @@ -0,0 +1,12 @@ +LICENSE := GPLv3 +VERSION := 2.0.1 +DOWNLOADS := t4k.archive tuxmath.archive + +URL(t4k) := http://downloads.sourceforge.net/project/tuxmath/t4k_common/t4k_common-0.1.1.tar.gz +SHA(t4k) := 626eddedee86059ccab593a226c8d98571018b46 +DIR(t4k) := src/app/tuxmath/t4k + +URL(tuxmath) := http://downloads.sourceforge.net/project/tuxmath/tuxmath-source/TuxMath%202.0.1%20-%20Source/tuxmath_w_fonts-2.0.1.tar.gz +SHA(tuxmath) := 7a73430c29e5f1fdb20d33dbce484ed1655044f6 +DIR(tuxmath) := src/app/tuxmath + diff --git a/run/tuxmath.run b/run/tuxmath.run new file mode 100644 index 0000000..9c88996 --- /dev/null +++ b/run/tuxmath.run @@ -0,0 +1,34 @@ +set build_components { app/tuxmath } + +set app_config { + + + + + + + + + + + } + +set boot_modules { + tuxmath + libc.lib.so + libm.lib.so + pthread.lib.so + libiconv.lib.so + jpeg.lib.so + freetype.lib.so + libpng.lib.so + sdl_mixer.lib.so + sdl_image.lib.so + sdl_net.lib.so + sdl_ttf.lib.so + sdl.lib.so + zlib.lib.so + tuxmath_data.tar +} + +source ${genode_dir}/repos/world/run/framebuffer_app.inc diff --git a/src/app/tuxmath/config.h b/src/app/tuxmath/config.h new file mode 100644 index 0000000..8556cb3 --- /dev/null +++ b/src/app/tuxmath/config.h @@ -0,0 +1,6 @@ +#define HAVE_STDINT_H 1 +#define HAVE_SCANDIR 1 +#define HAVE_LIBSDL_NET 1 + +#define PACKAGE "tuxmath" +#define VERSION "2.0.1" diff --git a/src/app/tuxmath/t4k/SDL_ttf.h b/src/app/tuxmath/t4k/SDL_ttf.h new file mode 100644 index 0000000..fb64cd6 --- /dev/null +++ b/src/app/tuxmath/t4k/SDL_ttf.h @@ -0,0 +1 @@ +#include diff --git a/src/app/tuxmath/t4k/config.h b/src/app/tuxmath/t4k/config.h new file mode 100644 index 0000000..18d1189 --- /dev/null +++ b/src/app/tuxmath/t4k/config.h @@ -0,0 +1,6 @@ +#include /* definition of PATH_MAX */ + +#define HAVE_STDINT_H 1 +#define HAVE_SCANDIR 1 + +#define PACKAGE_STRING "Tux4Kids-Common 0.1.1" diff --git a/src/app/tuxmath/target.mk b/src/app/tuxmath/target.mk new file mode 100644 index 0000000..4f73979 --- /dev/null +++ b/src/app/tuxmath/target.mk @@ -0,0 +1,37 @@ +TARGET := tuxmath + +TUXMATH_DIR := $(call select_from_ports,tuxmath)/src/app/tuxmath + +LIBS += libc libm sdl sdl_image sdl_mixer sdl_ttf sdl_net tuxmath_t4k + +INC_DIR += $(REP_DIR)/src/app/tuxmath \ + $(TUXMATH_DIR)/t4k/src + +CC_OPT += -DDATA_PREFIX=\"/data\" \ + -DLOCALEDIR=\"/locale\" + +SRC_C := tuxmath.c setup.c titlescreen.c menu.c menu_lan.c game.c \ + factoroids.c fileops_media.c options.c credits.c highscore.c \ + audio.c network.c mathcards.c campaign.c multiplayer.c fileops.c \ + SDL_rotozoom.c lessons.c server.c + +# +# Disable sound during the game because the current version of sdl_mixer is +# compiled w/o ogg/mod, which produces a stream of error messages. +# +CC_OPT_game := -DNOSOUND + +# suppress build noise caused by warnings in 3rd-party code +CC_WARN = -Wno-address + +vpath %.c $(TUXMATH_DIR)/src + +# supply custom getenv implementation (tuxmath asks for HOME) +SRC_CC += getenv.cc + +vpath getenv.cc $(REP_DIR)/src/app/numptyphysics + +$(TARGET): tuxmath_data.tar +tuxmath_data.tar: + $(VERBOSE)cd $(TUXMATH_DIR); tar cf $(PWD)/bin/$@ data + $(VERBOSE)cd $(TUXMATH_DIR)/t4k; tar rf $(PWD)/bin/$@ data