summaryrefslogtreecommitdiffstats
path: root/rules/pdksh.make
diff options
context:
space:
mode:
authorRobert Schwebel <r.schwebel@pengutronix.de>2003-06-25 12:41:00 +0000
committerRobert Schwebel <r.schwebel@pengutronix.de>2003-06-25 12:41:00 +0000
commit26d4d771e1523922c264c4c75d34c180f35688c6 (patch)
tree10f70f2a74a811f35024280e831088efa0822484 /rules/pdksh.make
parent568128d6dda067cfd9e8473abadc122a4192fa9a (diff)
downloadptxdist-26d4d771e1523922c264c4c75d34c180f35688c6.tar.gz
ptxdist-26d4d771e1523922c264c4c75d34c180f35688c6.tar.xz
added pdksh; patch by KUB
git-svn-id: https://svn.pengutronix.de/svn/ptxdist/trunk@38 33e552b5-05e3-0310-8538-816dae2090ed
Diffstat (limited to 'rules/pdksh.make')
-rw-r--r--rules/pdksh.make194
1 files changed, 194 insertions, 0 deletions
diff --git a/rules/pdksh.make b/rules/pdksh.make
new file mode 100644
index 000000000..7091931c6
--- /dev/null
+++ b/rules/pdksh.make
@@ -0,0 +1,194 @@
+# -*-makefile-*-
+# $Id: pdksh.make,v 1.1 2003/06/25 12:41:00 robert Exp $
+#
+# (c) 2003 by Auerswald GmbH & Co. KG, Schandelah, Germany
+# (c) 2003 by Pengutronix e.K., Hildesheim, Germany
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXDIST project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+ifeq (y, $(PTXCONF_PDKSH))
+PACKAGES += pdksh
+endif
+
+#
+# Paths and names
+#
+PDKSH = pdksh-5.2.14
+PDKSH_URL = ftp://ftp.cs.mun.ca/pub/pdksh/$(PDKSH).tar.gz
+PDKSH_SOURCE = $(SRCDIR)/$(PDKSH).tar.gz
+PDKSH_DIR = $(BUILDDIR)/$(PDKSH)
+PDKSH_EXTRACT = gzip -dc
+
+# ----------------------------------------------------------------------------
+# Get
+# ----------------------------------------------------------------------------
+
+pdksh_get: $(STATEDIR)/pdksh.get
+
+$(STATEDIR)/pdksh.get: $(PDKSH_SOURCE)
+ touch $@
+
+$(PDKSH_SOURCE):
+ @echo
+ @echo -----------------
+ @echo target: pdksh.get
+ @echo -----------------
+ @echo
+ wget -P $(SRCDIR) $(PASSIVEFTP) $(PDKSH_URL)
+
+# ----------------------------------------------------------------------------
+# Extract
+# ----------------------------------------------------------------------------
+
+pdksh_extract: $(STATEDIR)/pdksh.extract
+
+$(STATEDIR)/pdksh.extract: $(STATEDIR)/pdksh.get
+ @echo
+ @echo ---------------------
+ @echo target: pdksh.extract
+ @echo ---------------------
+ @echo
+ $(PDKSH_EXTRACT) $(PDKSH_SOURCE) | $(TAR) -C $(BUILDDIR) -xf -
+ touch $@
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+pdksh_prepare: $(STATEDIR)/pdksh.prepare
+
+PDKSH_AUTOCONF = --build=$(GNU_HOST)
+PDKSH_AUTOCONF += --host=$(PTXCONF_GNU_TARGET)
+PDKSH_AUTOCONF += --target=$(PTXCONF_GNU_TARGET)
+PDKSH_AUTOCONF += --disable-sanity-checks
+PDKSH_AUTOCONF += --prefix=$(ROOTDIR)
+PDKSH_ENVIRONMENT= PATH=$(PTXCONF_PREFIX)/$(AUTOCONF213)/bin:$(PTXCONF_PREFIX)/bin:$$PATH
+PDKSH_ENVIRONMENT+= ac_cv_func_setvbuf_reversed=no pdksh_cv_have_mbstate_t=yes
+PDKSH_MAKEVARS = AR=$(PTXCONF_GNU_TARGET)-ar
+PDKSH_MAKEVARS += RANLIB=$(PTXCONF_GNU_TARGET)-ranlib
+PDKSH_MAKEVARS += CC=$(PTXCONF_GNU_TARGET)-gcc
+
+ifeq (y, $(PTXCONF_PDKSH_SHLIKE))
+PDKSH_AUTOCONF += --enable-shell=sh
+else
+PDKSH_AUTOCONF += --enable-shell=ksh
+endif
+ifeq (y, $(PTXCONF_PDKSH_POSIX))
+PDKSH_AUTOCONF += --enable-posixly_correct
+else
+PDKSH_AUTOCONF += --disable-posixly_correct
+endif
+ifeq (y, $(PTXCONF_PDKSH_VI))
+PDKSH_AUTOCONF += --enable-vi
+else
+PDKSH_AUTOCONF += --disable-vi
+endif
+ifeq (y, $(PTXCONF_PDKSH_EMACS))
+PDKSH_AUTOCONF += --enable-emacs
+else
+PDKSH_AUTOCONF += --disable-emacs
+endif
+ifeq (y, $(PTXCONF_PDKSH_CMDHISTORY))
+PDKSH_AUTOCONF += --enable-history=simple
+else
+PDKSH_AUTOCONF += --disable-history
+endif
+ifeq (y, $(PTXCONF_PDKSH_JOBS))
+PDKSH_AUTOCONF += --enable-jobs
+else
+PDKSH_AUTOCONF += --disable-jobs
+endif
+ifeq (y, $(PTXCONF_PDKSH_BRACE_EXPAND))
+PDKSH_AUTOCONF += --enable-brace-expand
+else
+PDKSH_AUTOCONF += --disable-brace-expand
+endif
+
+#
+# dependencies
+#
+pdksh_prepare_deps = $(STATEDIR)/pdksh.extract
+ifeq (y,$(PTXCONF_BUILD_CROSSCHAIN))
+pdksh_prepare_deps += $(STATEDIR)/xchain-gccstage2.install
+endif
+
+
+$(STATEDIR)/pdksh.prepare: $(pdksh_prepare_deps)
+ @echo
+ @echo ---------------------
+ @echo target: pdksh.prepare
+ @echo ---------------------
+ @echo
+ mkdir -p $(BUILDDIR)/$(PDKSH)
+ cd $(BUILDDIR)/$(PDKSH) && \
+ $(PDKSH_ENVIRONMENT) \
+ $(PDKSH_DIR)/configure $(PDKSH_AUTOCONF)
+ touch $@
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+pdksh_compile_deps = $(STATEDIR)/pdksh.prepare
+ifeq (y, $(PTXCONF_GLIBC))
+pdksh_compile_deps += $(STATEDIR)/glibc.install
+endif
+ifeq (y, $(PTXCONF_UCLIBC))
+pdksh_compile_deps += $(STATEDIR)/uclibc.install
+endif
+
+pdksh_compile: $(STATEDIR)/pdksh.compile
+
+$(STATEDIR)/pdksh.compile: $(STATEDIR)/pdksh.prepare
+ @echo
+ @echo --------------------
+ @echo target: pdksh.compile
+ @echo --------------------
+ @echo
+ make -C $(PDKSH_DIR) $(PDKSH_MAKEVARS) $(MAKEPARMS)
+ touch $@
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+pdksh_install: $(STATEDIR)/pdksh.install
+
+$(STATEDIR)/pdksh.install: $(STATEDIR)/pdksh.compile
+ @echo
+ @echo --------------------
+ @echo target: pdksh.install
+ @echo --------------------
+ @echo
+ touch $@
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+pdksh_targetinstall: $(STATEDIR)/pdksh.targetinstall
+
+$(STATEDIR)/pdksh.targetinstall: $(STATEDIR)/pdksh.install
+ @echo
+ @echo --------------------------
+ @echo target: pdksh.targetinstall
+ @echo --------------------------
+ @echo
+ $(CROSSSTRIP) -S $(PDKSH_DIR)/ksh
+ cp $(PDKSH_DIR)/ksh $(ROOTDIR)/bin
+ touch $@
+
+# ----------------------------------------------------------------------------
+# Clean
+# ----------------------------------------------------------------------------
+
+pdksh_clean:
+ rm -rf $(STATEDIR)/pdksh.* $(PDKSH_DIR)
+
+# vim: syntax=make