From 6387962e30c205246a5615b4d202a080601f93d0 Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Thu, 23 May 2002 19:21:23 +0000 Subject: [PATCH] Add some toys for people to play with --- make/links.mk | 41 +++++++++++++++++++++++ make/ncurses.mk | 87 +++++++++++++++++++++++++++++++++++++++++++++++++ make/newt.mk | 57 ++++++++++++++++++++++++++++++++ make/slang.mk | 48 +++++++++++++++++++++++++++ make/stlport.mk | 60 ++++++++++++++++++++++++++++++++++ make/strace.mk | 49 ++++++++++++++++++++++++++++ make/udhcp.mk | 56 +++++++++++++++++++++++++++++++ 7 files changed, 398 insertions(+) create mode 100644 make/links.mk create mode 100644 make/ncurses.mk create mode 100644 make/newt.mk create mode 100644 make/slang.mk create mode 100644 make/stlport.mk create mode 100644 make/strace.mk create mode 100644 make/udhcp.mk diff --git a/make/links.mk b/make/links.mk new file mode 100644 index 0000000000..a5f25b353f --- /dev/null +++ b/make/links.mk @@ -0,0 +1,41 @@ +############################################################# +# +# links (text based web browser) +# +############################################################# +LINKS_SITE:=http://artax.karlin.mff.cuni.cz/~mikulas/vyplody/links/download/no-ssl +LINKS_SOURCE:=links-0.97pre9-no-ssl.tar.gz +LINKS_DIR:=$(BUILD_DIR)/links-0.97pre9-no-ssl + +$(DL_DIR)/$(LINKS_SOURCE): + wget -P $(DL_DIR) --passive-ftp $(LINKS_SITE)/$(LINKS_SOURCE) + +links-source: $(DL_DIR)/$(LINKS_SOURCE) + +$(LINKS_DIR)/.unpacked: $(DL_DIR)/$(LINKS_SOURCE) + zcat $(DL_DIR)/$(LINKS_SOURCE) | tar -C $(BUILD_DIR) -xvf - + touch $(LINKS_DIR)/.unpacked + +$(LINKS_DIR)/.configured: $(LINKS_DIR)/.unpacked + (cd $(LINKS_DIR); rm -rf config.cache; CC=$(TARGET_CC1) \ + ./configure --prefix=/usr \ + --libexecdir=/usr/lib --sysconfdir=/etc \ + --localstatedir=/tmp --libdir=/etc \ + --disable-nls); + touch $(LINKS_DIR)/.configured + +$(LINKS_DIR)/links: $(LINKS_DIR)/.configured + make CC=$(TARGET_CC1) -C $(LINKS_DIR) + $(STRIP) $(LINKS_DIR)/links + +$(TARGET_DIR)/usr/bin/links: $(LINKS_DIR)/links + install -c $(LINKS_DIR)/links $(TARGET_DIR)/usr/bin/links + +links-clean: + make -C $(LINKS_DIR) clean + +links-dirclean: + rm -rf $(LINKS_DIR) + +links: uclibc $(TARGET_DIR)/usr/bin/links + diff --git a/make/ncurses.mk b/make/ncurses.mk new file mode 100644 index 0000000000..6f564bbd3e --- /dev/null +++ b/make/ncurses.mk @@ -0,0 +1,87 @@ +############################################################# +# +# ncurses +# this installs only a few vital termcap entries +# +############################################################# +# Copyright (C) 2002 by Ken Restivo +# $Id: ncurses.mk,v 1.1 2002/05/23 19:21:23 andersen Exp $ +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. +# +# You should have received a copy of the GNU Library General Public +# License along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +# USA + +# TARGETS +NCURSES_SITE:=ftp://ftp.gnu.org/pub/gnu/ncurses +NCURSES_DIR:=$(BUILD_DIR)/ncurses-5.2 +NCURSES_SOURCE:=ncurses-5.2.tar.gz + +$(DL_DIR)/$(NCURSES_SOURCE): + @echo "==============downloading ncurses...." + wget -P $(DL_DIR) --passive-ftp $(NCURSES_SITE)/$(NCURSES_SOURCE) + +$(NCURSES_DIR)/.dist: $(DL_DIR)/$(NCURSES_SOURCE) + @echo "==============untarring and patching ncurses...." + gunzip -c $(DL_DIR)/$(NCURSES_SOURCE) | tar -C $(BUILD_DIR) -xvf - + #use the local tic and not whatever the build system was going to find. + perl -i -p -e 's~\$$srcdir/shlib tic\$$suffix~/usr/bin/tic~' \ + $(NCURSES_DIR)/misc/run_tic.in + touch $(NCURSES_DIR)/.dist + +$(NCURSES_DIR)/Makefile: $(NCURSES_DIR)/.dist + @echo "==============configuring ncurses...." + (cd ${NCURSES_DIR}; \ + export PATH="${TARGET_PATH}"; \ + ./configure --with-shared --prefix=/usr --target=arm-linux \ + --enable-warnings --without-cxx --without-cxx-binding \ + --exec_prefix=${STAGING_DIR}/usr/bin \ + --libdir=${STAGING_DIR}/lib --includedir=${STAGING_DIR}/include) + + +$(NCURSES_DIR)/lib/libncurses.so: $(NCURSES_DIR)/Makefile + @echo "==============making ncurses...." + make -C $(NCURSES_DIR) DESTDIR=$(STAGING_DIR) \ + CC="${TARGET_CC}" LD="${TARGET_LD}" AS="${TARGET_AS}" \ + BUILD_CC=/usr/bin/gcc + +$(STAGING_DIR)/lib/libncurses.so: $(NCURSES_DIR)/lib/libncurses.so + @echo "==============installing ncurses into staging...." + make -C $(NCURSES_DIR) install DESTDIR=$(STAGING_DIR) + +$(TARGET_DIR)/lib/libncurses.so: $(STAGING_DIR)/lib/libncurses.so + @echo "==============installing ncurses into root dir...." + cp -a $(STAGING_DIR)/lib/libncurses.so* $(TARGET_DIR)/lib/ + cp -a $(STAGING_DIR)/usr/share/tabset $(TARGET_DIR)/usr/share/ + cp -a $(STAGING_DIR)/usr/lib/terminfo $(TARGET_DIR)/usr/lib/ + for i in x/xterm x/xterm-color x/xterm-xfree86 v/vt100 v/vt200 a/ansi l/linux; do \ + cd $(STAGING_DIR)/usr/share/; \ + tar -cf - terminfo/$${i} | \ + tar -C $(TARGET_DIR)/usr/share/ -xf - ; \ + done + +ncurses-clean: + @echo "==============cleaning ncurses...." + rm -f $(STAGING_DIR)/lib/libncurses.so* $(TARGET_DIR)/lib/libncurses.so* + rm -f $(STAGING_DIR)/usr/share/tabset $(TARGET_DIR)/usr/share/tabset + rm -f $(STAGING_DIR)/usr/share/terminfo $(TARGET_DIR)/usr/share/terminfo + make -C $(NCURSES_DIR) clean + +ncurses-dirclean: + @echo "==============cleaning ncurses...." + rm -rf $(NCURSES_DIR) + +ncurses: $(TARGET_DIR)/lib/libncurses.so + +#EOF + diff --git a/make/newt.mk b/make/newt.mk new file mode 100644 index 0000000000..3075dd8b25 --- /dev/null +++ b/make/newt.mk @@ -0,0 +1,57 @@ +############################################################# +# +# newt +# +############################################################# +NEWT_SOURCE=newt_0.50.17.orig.tar.gz +NEWT_SITE=http://ftp.debian.org/debian/pool/main/n/newt +NEWT_DIR=$(BUILD_DIR)/newt-0.50.17 +NEWT_PATCH=$(SOURCE_DIR)/newt.patch +ifeq ($(strip $(BUILD_WITH_LARGEFILE)),true) +NEWT_CFLAGS="-Os -g -fPIC -D_FILE_OFFSET_BITS=64 -D__USE_FILE_OFFSET64" +else +NEWT_CFLAGS="-Os -g -fPIC" +endif + +$(DL_DIR)/$(NEWT_SOURCE): + wget -P $(DL_DIR) $(NEWT_SITE)/$(NEWT_SOURCE) + +$(NEWT_DIR)/.source: $(DL_DIR)/$(NEWT_SOURCE) $(NEWT_PATCH) + zcat $(DL_DIR)/$(NEWT_SOURCE) | tar -C $(BUILD_DIR) -xvf - + cat $(NEWT_PATCH) | patch -p1 -d $(NEWT_DIR) + (cd $(NEWT_DIR); autoconf); + touch $(NEWT_DIR)/.source; + +$(NEWT_DIR)/.configured: $(NEWT_DIR)/.source + (cd $(NEWT_DIR); rm -rf config.cache; CC=$(TARGET_CC1) \ + ./configure --shared --prefix=/usr --exec_prefix=$(STAGING_DIR)/usr/bin \ + --libdir=$(STAGING_DIR)/lib --includedir=$(STAGING_DIR)/include \ + --host=$(ARCH)-pc-linux-gnu); + touch $(NEWT_DIR)/.configured; + +$(NEWT_DIR)/libnewt.so.0.50.17: $(NEWT_DIR)/.configured + $(MAKE) CFLAGS=$(NEWT_CFLAGS) CC=$(TARGET_CC1) -C $(NEWT_DIR) + touch -c $(NEWT_DIR)/libnewt.so.0.50.17 + +$(STAGING_DIR)/lib/libnewt.so.0.50.17: $(NEWT_DIR)/libnewt.so.0.50.17 + cp -a $(NEWT_DIR)/libnewt.a $(STAGING_DIR)/lib; + cp -a $(NEWT_DIR)/newt.h $(STAGING_DIR)/include; + cp -a $(NEWT_DIR)/libnewt.so* $(STAGING_DIR)/lib; + (cd $(STAGING_DIR)/lib; ln -fs libnewt.so.0.50.17 libnewt.so); + (cd $(STAGING_DIR)/lib; ln -fs libnewt.so.0.50.17 libnewt.so.0.50); + touch -c $(STAGING_DIR)/lib/libnewt.so.0.50.17 + +$(TARGET_DIR)/lib/libnewt.so.0.50.17: $(STAGING_DIR)/lib/libnewt.so.0.50.17 + cp -a $(STAGING_DIR)/lib/libnewt.so* $(TARGET_DIR)/lib; + -$(STRIP) --strip-unneeded $(TARGET_DIR)/lib/libnewt.so* + touch -c $(TARGET_DIR)/lib/libnewt.so.0.50.17 + +newt: uclibc slang $(TARGET_DIR)/lib/libnewt.so.0.50.17 + +newt-clean: + rm -f $(TARGET_DIR)/lib/libnewt.so* + -make -C $(NEWT_DIR) clean + +newt-dirclean: slang-dirclean + rm -rf $(NEWT_DIR) + diff --git a/make/slang.mk b/make/slang.mk new file mode 100644 index 0000000000..5eafe16c7b --- /dev/null +++ b/make/slang.mk @@ -0,0 +1,48 @@ +############################################################# +# +# slang +# +############################################################# +SLANG_SOURCE=minislang.tar.gz +SLANG_SITE:=ftp://busybox.net/ +SLANG_DIR=$(BUILD_DIR)/minislang +ifeq ($(strip $(BUILD_WITH_LARGEFILE)),true) +SLANG_CFLAGS="-Os -g -fPIC -D_FILE_OFFSET_BITS=64 -D__USE_FILE_OFFSET64" +else +SLANG_CFLAGS="-Os -g -fPIC" +endif + +$(DL_DIR)/$(SLANG_SOURCE): + wget -P $(DL_DIR) $(SLANG_SITE)/$(SLANG_SOURCE) + +$(SLANG_DIR): $(DL_DIR)/$(SLANG_SOURCE) + zcat $(DL_DIR)/$(SLANG_SOURCE) | tar -C $(BUILD_DIR) -xvf - + +$(SLANG_DIR)/libslang.so: $(SLANG_DIR) + $(MAKE) CFLAGS=$(SLANG_CFLAGS) CC=$(TARGET_CC1) -C $(SLANG_DIR) + touch -c $(SLANG_DIR)/libslang.so; + +$(STAGING_DIR)/lib/libslang.so.1: $(SLANG_DIR)/libslang.so + cp -a $(SLANG_DIR)/libslang.a $(STAGING_DIR)/lib; + cp -a $(SLANG_DIR)/libslang.so $(STAGING_DIR)/lib; + cp -a $(SLANG_DIR)/slang.h $(STAGING_DIR)/include; + (cd $(STAGING_DIR)/lib; ln -fs libslang.so libslang.so.1); + touch -c $(STAGING_DIR)/lib/libslang.so.1 + +$(TARGET_DIR)/lib/libslang.so.1: $(STAGING_DIR)/lib/libslang.so.1 + cp -a $(STAGING_DIR)/lib/libslang.so* $(TARGET_DIR)/lib; + -$(STRIP) --strip-unneeded $(TARGET_DIR)/lib/libslang.so* + touch -c $(TARGET_DIR)/lib/libslang.so.1 + +slang: uclibc $(TARGET_DIR)/lib/libslang.so.1 + +slang-source: $(DL_DIR)/$(SLANG_SOURCE) + +slang-clean: + rm -f $(TARGET_DIR)/lib/libslang.so* + -make -C $(SLANG_DIR) clean + +slang-dirclean: + rm -rf $(SLANG_DIR) + + diff --git a/make/stlport.mk b/make/stlport.mk new file mode 100644 index 0000000000..c0cd134aab --- /dev/null +++ b/make/stlport.mk @@ -0,0 +1,60 @@ +############################################################# +# +# STLport standard C++ library +# +############################################################# +# Copyright (C) 2002 by Erik Andersen +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. +# +# You should have received a copy of the GNU Library General Public +# License along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +# USA + + +# FYI -- to make things compile with this, you will need to +# compile client applications by adding the following flags: +# CFLAGS+=-I$(STAGING_DIR)/include/g++-3 -D_STLP_USE_UCLIBC -D_STLP_NO_WCHAR_T +# LDFLAGS+=-lstdc++ + + +STLPORT_DIR=$(BUILD_DIR)/STLport-4.5.3 +STLPORT_SITE=http://www.stlport.org/archive +STLPORT_SOURCE=STLport-4.5.3.tar.gz +STLPORT_PATCH=$(SOURCE_DIR)/STLport-4.5.3.patch + +$(DL_DIR)/$(STLPORT_SOURCE): + wget -P $(DL_DIR) --passive-ftp $(STLPORT_SITE)/$(STLPORT_SOURCE) + +stlport-source: $(DL_DIR)/$(STLPORT_SOURCE) $(STLPORT_PATCH) + +$(STLPORT_DIR)/Makefile: $(DL_DIR)/$(STLPORT_SOURCE) $(STLPORT_PATCH) + zcat $(DL_DIR)/$(STLPORT_SOURCE) | tar -C $(BUILD_DIR) -xvf - + cat $(STLPORT_PATCH) | patch -d $(STLPORT_DIR) -p1 + +$(STLPORT_DIR)/lib/libstdc++.so.4.5: $(STLPORT_DIR)/Makefile + $(MAKE) ARCH=$(ARCH) CROSS=$(TARGET_CROSS) -C $(STLPORT_DIR) + +$(STAGING_DIR)/lib/libstdc++.so.4.5: $(STLPORT_DIR)/lib/libstdc++.so.4.5 + $(MAKE) ARCH=$(ARCH) CROSS=$(TARGET_CROSS) PREFIX=$(STAGING_DIR) -C $(STLPORT_DIR) install + +$(TARGET_DIR)/lib/libstdc++.so.4.5: $(STAGING_DIR)/lib/libstdc++.so.4.5 + cp -a $(STAGING_DIR)/lib/libstdc++.so* $(TARGET_DIR)/lib/ + +stlport: linux $(TARGET_DIR)/lib/libstdc++.so.4.5 + +stlport-clean: + rm -f $(TARGET_DIR)/lib/libstdc++* + -make -C $(STLPORT_DIR) clean + +stlport-dirclean: + rm -rf $(STLPORT_DIR) diff --git a/make/strace.mk b/make/strace.mk new file mode 100644 index 0000000000..68a37fe3d2 --- /dev/null +++ b/make/strace.mk @@ -0,0 +1,49 @@ +############################################################# +# +# strace +# +# Maintainer: Ken Restivo +# +############################################################# +#$Id: strace.mk,v 1.1 2002/05/23 19:21:23 andersen Exp $ + +# TARGETS +STRACE_SITE:=http://prdownloads.sourceforge.net/strace +STRACE_SOURCE:=strace_4.4-1.tar.gz +STRACE_DIR:=$(BUILD_DIR)/strace-4.4 + +$(DL_DIR)/$(STRACE_SOURCE): + wget -P $(DL_DIR) --passive-ftp $(STRACE_SITE)/$(STRACE_SOURCE) + +strace-source: $(DL_DIR)/$(STRACE_SOURCE) + +$(STRACE_DIR)/.dist: $(DL_DIR)/$(STRACE_SOURCE) + zcat $(DL_DIR)/$(STRACE_SOURCE) | tar -C $(BUILD_DIR) -xvf - + touch $(STRACE_DIR)/.dist + +$(STRACE_DIR)/Makefile: $(STRACE_DIR)/.dist + (cd ${STRACE_DIR}; \ + export PATH="${TARGET_PATH}"; \ + ./configure --with-shared --prefix=$(STAGING_DIR)/usr --target=arm-linux \ + --host=arm-linux ) + +$(STRACE_DIR)/strace: $(STRACE_DIR)/Makefile + make -C $(STRACE_DIR) CC="${TARGET_CC}" LD="${TARGET_LD}"\ + AS="${TARGET_AS}" + +$(STAGING_DIR)/usr/bin/strace: $(STRACE_DIR)/strace + -mkdir -p $(STAGING_DIR)/usr/man/man1 + make -C $(STRACE_DIR) install + rm -rf $(STAGING_DIR)/usr/man/man1 + +$(TARGET_DIR)/usr/bin/strace: $(STAGING_DIR)/usr/bin/strace + install -c $(STAGING_DIR)/usr/bin/strace $(TARGET_DIR)/usr/bin/strace + +strace-clean: + make -C $(STRACE_DIR) clean + +strace-dirclean: + rm -rf $(STRACE_DIR) + +strace: uclibc $(TARGET_DIR)/usr/bin/strace + diff --git a/make/udhcp.mk b/make/udhcp.mk new file mode 100644 index 0000000000..cd5ab2fd9e --- /dev/null +++ b/make/udhcp.mk @@ -0,0 +1,56 @@ +############################################################# +# +# uchdp DHCP client and/or server +# +############################################################# +# Copyright (C) 2001, 2002 by Erik Andersen +# Copyright (C) 2002 by Tim Riker +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. +# +# You should have received a copy of the GNU Library General Public +# License along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +# USA +UDHCP_DIR:=$(BUILD_DIR)/udhcp +#UDHCP_SOURCE:=udhcp-0.9.6.tar.gz +#UDHCP_SITE:=http://udhcp.busybox.net/downloads/ + +#$(DL_DIR)/$(UDHCP_SOURCE): +# wget -P $(DL_DIR) $(UDHCP_SITE)/$(UDHCP_SOURCE) + +#udhcp-source: $(DL_DIR)/$(UDHCP_SOURCE) + +#$(UDHCP_DIR)/Makefile: $(DL_DIR)/$(UDHCP_SOURCE) +# zcat $(DL_DIR)/$(UDHCP_SOURCE) | tar -C $(BUILD_DIR) -xvf - +# touch $(UDHCP_DIR)/Makefile + +$(UDHCP_DIR)/Makefile: + (cd $(BUILD_DIR); \ + cvs -z3 -d:pserver:anonymous@busybox.net:/var/cvs co udhcp ) + +$(UDHCP_DIR)/udhcpc: $(UDHCP_DIR)/Makefile + make CROSS_COMPILE="$(TARGET_CROSS)" prefix="$(TARGET_DIR)" -C $(UDHCP_DIR) + +$(TARGET_DIR)/sbin/udhcpc: $(UDHCP_DIR)/udhcpc + perl -i -p -e 's/pump/udhcpc/' $(TARGET_DIR)/etc/pcmcia/network* + perl -i -p -e 's/PUMP/UDHCPC/' $(TARGET_DIR)/etc/pcmcia/network* + perl -i -p -e 's/DHCP="n"/DHCP="y"/' $(TARGET_DIR)/etc/pcmcia/network* + cp $(UDHCP_DIR)/udhcpc $(TARGET_DIR)/sbin/ + +udhcp: uclibc pcmcia $(TARGET_DIR)/sbin/udhcpc + +udhcp-clean: + rm -f $(TARGET_DIR)/sbin/udhcpc + -make -C $(UDHCP_DIR) clean + +udhcp-dirclean: + rm -rf $(UDHCP_DIR) -- 2.30.2