|
|
@ -0,0 +1,176 @@ |
|
|
|
#
|
|
|
|
# Copyright (C) 2006-2011 Openwrt.org
|
|
|
|
# Copyright (C) 2011 SMBPhone Inc.
|
|
|
|
# Copyright (C) 2019 Jeffery To
|
|
|
|
#
|
|
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
|
|
# See /LICENSE for more information.
|
|
|
|
#
|
|
|
|
|
|
|
|
include $(TOPDIR)/rules.mk |
|
|
|
|
|
|
|
PKG_NAME:=slang |
|
|
|
PKG_VERSION:=2.3.2 |
|
|
|
PKG_RELEASE:=1 |
|
|
|
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 |
|
|
|
PKG_SOURCE_URL:=https://www.jedsoft.org/releases/slang \
|
|
|
|
https://www.jedsoft.org/releases/slang/old |
|
|
|
PKG_HASH:=fc9e3b0fc4f67c3c1f6d43c90c16a5c42d117b8e28457c5b46831b8b5d3ae31a |
|
|
|
|
|
|
|
PKG_LICENSE:=GPL-2.0+ |
|
|
|
PKG_LICENSE_FILES:=COPYING |
|
|
|
PKG_MAINTAINER:=Jeffery To <jeffery.to@gmail.com> |
|
|
|
|
|
|
|
PKG_BUILD_PARALLEL:=1 |
|
|
|
|
|
|
|
SLANG_MODULES:= base64 chksum csv fcntl fork histogram iconv json pcre png \
|
|
|
|
rand select slsmg socket stats sysconf termios varray zlib |
|
|
|
|
|
|
|
include $(INCLUDE_DIR)/package.mk |
|
|
|
|
|
|
|
define Package/libslang2/Default |
|
|
|
SECTION:=libs |
|
|
|
CATEGORY:=Libraries |
|
|
|
TITLE:=S-Lang Programmer's Library |
|
|
|
URL:=https://www.jedsoft.org/slang/ |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libslang2/Default/description |
|
|
|
Multi-platform programmer's library providing facilities for interactive |
|
|
|
applications. Includes such things as display/screen management, |
|
|
|
keyboard input, keymaps, etc. Includes the embeddable S-Lang interpreter. |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libslang2 |
|
|
|
$(call Package/libslang2/Default) |
|
|
|
DEPENDS:=+terminfo |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libslang2/description |
|
|
|
$(call Package/libslang2/Default/description) |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libslang2-modules |
|
|
|
$(call Package/libslang2/Default) |
|
|
|
TITLE+= (all modules) |
|
|
|
DEPENDS:=$(foreach mod,$(SLANG_MODULES),+libslang2-mod-$(mod)) |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libslang2-modules/description |
|
|
|
$(call Package/libslang2/Default/description) |
|
|
|
|
|
|
|
This installs all of S-Lang's bundled modules. |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libslang2-mod-pcre |
|
|
|
$(call Package/libslang2/Default) |
|
|
|
TITLE+= (pcre module) |
|
|
|
DEPENDS:=+libpcre |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libslang2-mod-png |
|
|
|
$(call Package/libslang2/Default) |
|
|
|
TITLE+= (png module) |
|
|
|
DEPENDS:=+libpng |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libslang2-mod-zlib |
|
|
|
$(call Package/libslang2/Default) |
|
|
|
TITLE+= (zlib module) |
|
|
|
DEPENDS:=+zlib |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/slsh |
|
|
|
SECTION:=lang |
|
|
|
CATEGORY:=Languages |
|
|
|
TITLE:=S-Lang shell |
|
|
|
URL:=https://www.jedsoft.org/slang/slsh.html |
|
|
|
DEPENDS:=+libslang2 +libslang2-modules |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/slsh/description |
|
|
|
This is a shell which is mostly just a wrapper around the S-Lang Interpreter, |
|
|
|
which is part of the S-Lang Library. |
|
|
|
endef |
|
|
|
|
|
|
|
TARGET_CFLAGS+= $(FPIC) |
|
|
|
|
|
|
|
CONFIGURE_ARGS+= \
|
|
|
|
--enable-largefile \
|
|
|
|
--enable-warnings \
|
|
|
|
--with-terminfo=default \
|
|
|
|
--with-readline=slang \
|
|
|
|
--with-pcre="$(STAGING_DIR)/usr" \
|
|
|
|
--with-png="$(STAGING_DIR)/usr" \
|
|
|
|
--with-z="$(STAGING_DIR)/usr" \
|
|
|
|
--without-onig \
|
|
|
|
--without-x |
|
|
|
|
|
|
|
define Build/Compile |
|
|
|
$(call Build/Compile/Default,) |
|
|
|
$(call Build/Compile/Default,static) |
|
|
|
endef |
|
|
|
|
|
|
|
# Default install last, so that the dynamic slsh is installed
|
|
|
|
define Build/Install |
|
|
|
$(call Build/Install/Default,install-static) |
|
|
|
$(call Build/Install/Default,) |
|
|
|
endef |
|
|
|
|
|
|
|
define Build/InstallDev |
|
|
|
$(INSTALL_DIR) $(1)/usr/include |
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/ |
|
|
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib |
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libslang.{a,so*} $(1)/usr/lib/ |
|
|
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig |
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/slang.pc $(1)/usr/lib/pkgconfig/ |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libslang2/install |
|
|
|
$(INSTALL_DIR) $(1)/usr/lib |
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libslang.so* $(1)/usr/lib/ |
|
|
|
endef |
|
|
|
|
|
|
|
Package/libslang2-modules/install:=: |
|
|
|
|
|
|
|
define Package/slsh/install |
|
|
|
$(INSTALL_DIR) $(1)/etc |
|
|
|
$(CP) $(PKG_INSTALL_DIR)/etc/slsh.rc $(1)/etc/ |
|
|
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/bin |
|
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/slsh $(1)/usr/bin/ |
|
|
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/share |
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/share/slsh/ $(1)/usr/share/ |
|
|
|
endef |
|
|
|
|
|
|
|
define BuildModule |
|
|
|
ifndef Package/libslang2-mod-$(1) |
|
|
|
define Package/libslang2-mod-$(1) |
|
|
|
$$(call Package/libslang2/Default) |
|
|
|
TITLE+= ($(1) module) |
|
|
|
endef |
|
|
|
endif |
|
|
|
|
|
|
|
define Package/libslang2-mod-$(1)/description |
|
|
|
$$(call Package/libslang2/Default/description) |
|
|
|
|
|
|
|
This contains the $(1) module. |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libslang2-mod-$(1)/install |
|
|
|
$$(INSTALL_DIR) $$(1)/usr/lib/slang/v2/modules |
|
|
|
$$(CP) $$(PKG_INSTALL_DIR)/usr/lib/slang/v2/modules/$(1)-module.so $$(1)/usr/lib/slang/v2/modules/ |
|
|
|
endef |
|
|
|
|
|
|
|
$$(eval $$(call BuildPackage,libslang2-mod-$(1))) |
|
|
|
endef |
|
|
|
|
|
|
|
$(foreach mod,$(SLANG_MODULES),$(eval $(call BuildModule,$(mod)))) |
|
|
|
|
|
|
|
$(eval $(call BuildPackage,libslang2)) |
|
|
|
$(eval $(call BuildPackage,libslang2-modules)) |
|
|
|
$(eval $(call BuildPackage,slsh)) |