diff options
-rw-r--r-- | rules/host-jimtcl.in | 6 | ||||
-rw-r--r-- | rules/host-jimtcl.make | 40 | ||||
-rw-r--r-- | rules/jimtcl.in | 51 | ||||
-rw-r--r-- | rules/jimtcl.make | 91 |
4 files changed, 188 insertions, 0 deletions
diff --git a/rules/host-jimtcl.in b/rules/host-jimtcl.in new file mode 100644 index 000000000..ccd2d23bd --- /dev/null +++ b/rules/host-jimtcl.in @@ -0,0 +1,6 @@ +## SECTION=hosttools_noprompt +## SECTION=hosttools_platform + +config HOST_JIMTCL + tristate + default ALLYES diff --git a/rules/host-jimtcl.make b/rules/host-jimtcl.make new file mode 100644 index 000000000..60738f752 --- /dev/null +++ b/rules/host-jimtcl.make @@ -0,0 +1,40 @@ +# -*-makefile-*- +# +# Copyright (C) 2018 by Ladislav Michl <ladis@linux-mips.org> +# +# 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 +# +HOST_PACKAGES-$(PTXCONF_HOST_JIMTCL) += host-jimtcl + +# +# Paths and names +# +HOST_JIMTCL := $(JIMTCL) +HOST_JIMTCL_DIR := $(HOST_BUILDDIR)/$(HOST_JIMTCL) + +# ---------------------------------------------------------------------------- +# Prepare +# ---------------------------------------------------------------------------- + +# +# Package is not using autoconf but autosetup which is enough compatible... +# +HOST_JIMTCL_CONF_TOOL := autoconf +# autosetup/cc.tcl tries to discover ccache on its own, so use 'CCACHE=none' +# to prevent that and leave PTXCONF_SETUP_CCACHE in charge. +HOST_JIMTCL_CONF_ENV := \ + $(HOST_ENV) \ + CCACHE=none +HOST_JIMTCL_CONF_OPT := \ + --prefix=/usr \ + --disable-lineedit \ + --disable-docs + +# vim: syntax=make diff --git a/rules/jimtcl.in b/rules/jimtcl.in new file mode 100644 index 000000000..ce9e4993c --- /dev/null +++ b/rules/jimtcl.in @@ -0,0 +1,51 @@ +## SECTION=scripting_languages + +menuconfig JIMTCL + tristate + prompt "jimtcl " + select HOST_JIMTCL + select LIBC_M if JIMTCL_MATH + select OPENSSL if JIMTCL_SSL + help + Jim provides a powerful Tcl language implemented in roughly + 10k lines of code making it suitable for deployment on + Embedded Systems. + +if JIMTCL + +config JIMTCL_SHELL + bool "install jimsh" + help + Install Tcl shell on the target + +config JIMTCL_SYMLINK + bool "install tclsh symlink" + depends on JIMTCL_SHELL + depends on !TCL + help + Make tclsh symlink to jimsh + +config JIMTCL_UTF8 + bool "support utf8" + +config JIMTCL_LINEEDIT + bool "line editing" + default y + +config JIMTCL_REFERENCES + bool "support references" + default y + +config JIMTCL_MATH + bool "support math functions" + +config JIMTCL_SSL + bool "ssl/tls support in the aio extension" + +config JIMTCL_POSIX_REGEX + bool "use POSIX regex instead the built-in (Tcl-compatible) regex" + +config JIMTCL_RANDOM_HASH + bool "randomise hash tables" + +endif diff --git a/rules/jimtcl.make b/rules/jimtcl.make new file mode 100644 index 000000000..ad8b3608b --- /dev/null +++ b/rules/jimtcl.make @@ -0,0 +1,91 @@ +# -*-makefile-*- +# +# Copyright (C) 2018 by Ladislav Michl <ladis@linux-mips.org> +# +# 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 +# +PACKAGES-$(PTXCONF_JIMTCL) += jimtcl + +# +# Paths and names +# +JIMTCL_VERSION := 0.78 +JIMTCL_MD5 := bde9021d78a77fe28e1bbc423142ab23 +JIMTCL := jimtcl-$(JIMTCL_VERSION) +JIMTCL_SUFFIX := tar.xz +JIMTCL_URL := http://repo.or.cz/jimtcl.git;tag=$(JIMTCL_VERSION) +JIMTCL_SOURCE := $(SRCDIR)/$(JIMTCL).$(JIMTCL_SUFFIX) +JIMTCL_DIR := $(BUILDDIR)/$(JIMTCL) +JIMTCL_LICENSE := BSD-2-Clause + +# ---------------------------------------------------------------------------- +# Prepare +# ---------------------------------------------------------------------------- + +# +# Package is not using autoconf but autosetup which is enough compatible... +# +JIMTCL_CONF_TOOL := autoconf +# autosetup/cc.tcl tries to discover ccache on its own, so use 'CCACHE=none' +# to prevent that and leave PTXCONF_SETUP_CCACHE in charge. +JIMTCL_CONF_ENV := \ + $(CROSS_ENV) \ + CCACHE=none \ + autosetup_tclsh=$(PTXCONF_SYSROOT_HOST)/usr/bin/jimsh +JIMTCL_CONF_OPT := \ + $(CROSS_AUTOCONF_USR) \ + $(call ptx/ifdef, PTXCONF_JIMTCL_UTF8,--utf8,) \ + $(call ptx/ifdef, PTXCONF_JIMTCL_LINEEDIT,,--disable-lineedit) \ + $(call ptx/ifdef, PTXCONF_JIMTCL_REFERENCES,,--disable-references) \ + $(call ptx/ifdef, PTXCONF_JIMTCL_MATH,--math,) \ + $(call ptx/ifdef, PTXCONF_JIMTCL_SSL,--ssl,) \ + $(call ptx/ifdef, PTXCONF_GLOBAL_IPV6,--ipv6,) \ + --shared \ + $(call ptx/ifdef, PTXCONF_JIMTCL_POSIX_REGEX,--disable-jim-regexp,) \ + --disable-docs \ + $(call ptx/ifdef, PTXCONF_JIMTCL_RANDOM_HASH,--random-hash,) + +# ---------------------------------------------------------------------------- +# Install +# ---------------------------------------------------------------------------- + +$(STATEDIR)/jimtcl.install: + @$(call targetinfo) + @$(call world/install, JIMTCL) + @ln -sf libjim.so.$(JIMTCL_VERSION) $(JIMTCL_PKGDIR)/usr/lib/libjim.so + @$(call touch) + +# ---------------------------------------------------------------------------- +# Target-Install +# ---------------------------------------------------------------------------- + +$(STATEDIR)/jimtcl.targetinstall: + @$(call targetinfo) + + @$(call install_init, jimtcl) + @$(call install_fixup, jimtcl, PRIORITY, optional) + @$(call install_fixup, jimtcl, SECTION, base) + @$(call install_fixup, jimtcl, AUTHOR, "Ladislav Michl <ladis@linux-mips.org>") + @$(call install_fixup, jimtcl, DESCRIPTION, \ + "A small footprint implementation of the Tcl programming language") + +ifdef PTXCONF_JIMTCL_SHELL + @$(call install_copy, jimtcl, 0, 0, 0755, -, /usr/bin/jimsh) +ifdef PTXCONF_JIMTCL_SYMLINK + @$(call install_link, jimtcl, jimsh, /usr/bin/tclsh) +endif +endif + @$(call install_lib, jimtcl, 0, 0, 0644, libjim) + + @$(call install_finish, jimtcl) + + @$(call touch) + +# vim: syntax=make |