From 4bfce3b6e2ea095ea3d9f5d2d1018cc0a1e5ce09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20K=C3=BChling?= Date: Sat, 18 Sep 2010 20:47:21 +0200 Subject: Major overhaul and cleanup. Support for .ubi image file installations. 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. --- frotz/Makefile | 38 +++++++++++++++++ frotz/patches/001-change-strip-to-variable.patch | 49 ++++++++++++++++++++++ frotz/patches/002-make-it-can-run-as-root.patch | 24 +++++++++++ .../003-openwrt-will-take-care-of-install.patch | 22 ++++++++++ 4 files changed, 133 insertions(+) create mode 100644 frotz/Makefile create mode 100644 frotz/patches/001-change-strip-to-variable.patch create mode 100644 frotz/patches/002-make-it-can-run-as-root.patch create mode 100644 frotz/patches/003-openwrt-will-take-care-of-install.patch (limited to 'frotz') 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 + +when cross compile we need use cross comppile strip. + +Signed-off-by: Xiangfu Liu +--- + 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 + +Signed-off-by: Xiangfu Liu +--- + 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 + +Signed-off-by: Xiangfu Liu +--- + 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 -- cgit v1.2.3