summaryrefslogtreecommitdiff
path: root/frotz
diff options
context:
space:
mode:
authorDavid Kühling <dvdkhlng@gmx.de>2010-09-18 20:47:21 +0200
committerDavid Kühling <dvdkhlng@gmx.de>2010-09-18 20:47:21 +0200
commit4bfce3b6e2ea095ea3d9f5d2d1018cc0a1e5ce09 (patch)
tree58590463ada82a27eca0889312c32450358249a8 /frotz
downloadqipackages-fork-4bfce3b6e2ea095ea3d9f5d2d1018cc0a1e5ce09.tar.gz
Major overhaul and cleanup. Support for .ubi image file installations.grafted
Only compile&install a minimum host Gforth for bootstrapping the target Gforth, removing strange emacs-dependencies that cropped up earlier. Image file can now be built on the nanonote using 'gforth-update-image' command. Also, Gforth is now run through a wrapper that calls 'gforth-update-image' automatically, if necessary. Also first attempts at supporting libcc C-interface libraries pre-compiled on the host. Tested to compile on amd64 and i386.
Diffstat (limited to 'frotz')
-rw-r--r--frotz/Makefile38
-rw-r--r--frotz/patches/001-change-strip-to-variable.patch49
-rw-r--r--frotz/patches/002-make-it-can-run-as-root.patch24
-rw-r--r--frotz/patches/003-openwrt-will-take-care-of-install.patch22
4 files changed, 133 insertions, 0 deletions
diff --git a/frotz/Makefile b/frotz/Makefile
new file mode 100644
index 0000000..7dc316e
--- /dev/null
+++ b/frotz/Makefile
@@ -0,0 +1,38 @@
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=frotz
+PKG_VERSION:=2.43
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=@SF/$(PKG_NAME)
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_INSTALL:=1
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/frotz
+ TITLE:=frotz
+ SECTION:=games
+ CATEGORY:=Games
+ DEPENDS:=+libncurses
+ URL:=http://frotz.sourceforge.net/
+endef
+
+MAKE_VARS +=CONFIG_DIR=/etc \
+ INCL=-I$(STAGING_DIR)/usr/include \
+ LIB=-L$(STAGING_DIR)/usr/lib \
+ SOUND_DEV=/dev/dsp \
+ SOUND_DEFS=-DOSS_SOUND \
+ CURSES=-lncurses \
+ CURSES_DEF=-DUSE_NCURSES_H
+
+define Package/frotz/description
+ A Portable Z-Machine Interpreter
+endef
+
+
+define Package/frotz/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/frotz $(1)/usr/bin/
+endef
+
+$(eval $(call BuildPackage,frotz))
diff --git a/frotz/patches/001-change-strip-to-variable.patch b/frotz/patches/001-change-strip-to-variable.patch
new file mode 100644
index 0000000..69fa55f
--- /dev/null
+++ b/frotz/patches/001-change-strip-to-variable.patch
@@ -0,0 +1,49 @@
+change the strip to $(STRIP).
+
+From: Xiangfu Liu <xiangfu@sharism.cc>
+
+when cross compile we need use cross comppile strip.
+
+Signed-off-by: Xiangfu Liu <xiangfu@sharism.cc>
+---
+ Makefile | 6 +++---
+ 1 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 3e1253a..aae3eaa 100644
+--- a/Makefile
++++ b/Makefile
+@@ -3,6 +3,7 @@
+ #
+ CC = gcc
+ #CC = cc
++STRIP = strip
+
+ # Define your optimization flags. Most compilers understand -O and -O2,
+ # Standard (note: Solaris on UltraSparc using gcc 2.8.x might not like this.)
+@@ -213,7 +214,7 @@ soundcard.h:
+ fi
+
+ install: $(NAME)
+- strip $(BINNAME)$(EXTENSION)
++ $(STRIP) $(BINNAME)$(EXTENSION)
+ install -d $(PREFIX)/bin
+ install -d $(MAN_PREFIX)/man/man6
+ install -c -m 755 $(BINNAME)$(EXTENSION) $(PREFIX)/bin
+@@ -226,7 +227,7 @@ uninstall:
+ deinstall: uninstall
+
+ install_dumb: d$(NAME)
+- strip d$(BINNAME)$(EXTENSION)
++ $(STRIP) d$(BINNAME)$(EXTENSION)
+ install -d $(PREFIX)/bin
+ install -d $(MAN_PREFIX)/man/man6
+ install -c -m 755 d$(BINNAME)$(EXTENSION) $(PREFIX)/bin
+@@ -264,7 +265,6 @@ distclean: clean
+ rm -f *core $(SRCDIR)/*core
+ -rm -rf $(distdir)
+ -rm -f $(distdir).tar $(distdir).tar.gz
+-
+ realclean: distclean
+
+ clobber: distclean
diff --git a/frotz/patches/002-make-it-can-run-as-root.patch b/frotz/patches/002-make-it-can-run-as-root.patch
new file mode 100644
index 0000000..703c32d
--- /dev/null
+++ b/frotz/patches/002-make-it-can-run-as-root.patch
@@ -0,0 +1,24 @@
+remove "root" check.
+
+From: Xiangfu Liu <xiangfu@sharism.cc>
+
+Signed-off-by: Xiangfu Liu <xiangfu@sharism.cc>
+---
+ src/curses/ux_init.c | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/curses/ux_init.c b/src/curses/ux_init.c
+index e9baff1..c8bbbd2 100644
+--- a/src/curses/ux_init.c
++++ b/src/curses/ux_init.c
+@@ -140,8 +140,8 @@ void os_process_arguments (int argc, char *argv[])
+ char configfile[FILENAME_MAX + 1];
+
+ if ((getuid() == 0) || (geteuid() == 0)) {
+- printf("I won't run as root!\n");
+- exit(1);
++ printf("be carefull, I am run as root!\n");
++ //exit(1);
+ }
+
+ if ((home = getenv("HOME")) == NULL) {
diff --git a/frotz/patches/003-openwrt-will-take-care-of-install.patch b/frotz/patches/003-openwrt-will-take-care-of-install.patch
new file mode 100644
index 0000000..e9da4ac
--- /dev/null
+++ b/frotz/patches/003-openwrt-will-take-care-of-install.patch
@@ -0,0 +1,22 @@
+openwrt will take care of install.
+
+From: Xiangfu Liu <xiangfu@sharism.cc>
+
+Signed-off-by: Xiangfu Liu <xiangfu@sharism.cc>
+---
+ Makefile | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index aae3eaa..3515b33 100644
+--- a/Makefile
++++ b/Makefile
+@@ -15,7 +15,7 @@ OPTS = -O2
+ #-malign-jumps=2
+
+ # Define where you want Frotz installed. Usually this is /usr/local
+-PREFIX = /usr/local
++PREFIX = $(DESTDIR)/usr/local
+
+ MAN_PREFIX = $(PREFIX)
+ #MAN_PREFIX = /usr/local/share