2 # Copyright (C) 2020-2021 Jo-Philipp Wich <jo@mein.io>
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
14 PKG_SOURCE_URL
=https
://github.com
/jow-
/ucode.git
15 PKG_SOURCE_DATE
:=2021-07-30
16 PKG_SOURCE_VERSION
:=929c8627cf077c3e348fb12b02553d4a444c5e48
18 PKG_MAINTAINER
:=Jo-Philipp Wich
<jo@mein.io
>
21 PKG_ABI_VERSION
:=20210730
23 include $(INCLUDE_DIR
)/package.mk
24 include $(INCLUDE_DIR
)/cmake.mk
26 CMAKE_OPTIONS
+= -DSOVERSION
=$(PKG_ABI_VERSION
)
28 define Package
/ucode
/default
31 TITLE
:=ucode
- Tiny scripting and templating language
35 $(Package
/ucode
/default
)
39 define Package
/ucode
/description
40 ucode is a tiny script interpreter featuring an ECMAScript oriented
41 script language and Jinja-inspired templating.
45 define Package
/libucode
46 $(Package
/ucode
/default
)
47 TITLE
+= - runtime library
48 ABI_VERSION
:=$(PKG_ABI_VERSION
)
52 define Package
/libucode
/description
53 The libucode package provides the shared runtime library for the ucode interpreter.
57 define Package
/ucode-mod-fs
58 $(Package
/ucode
/default
)
59 TITLE
+= (filesystem module
)
63 define Package
/ucode-mod-fs
/description
64 The filesystem plugin module allows interaction with the local file system.
68 define Package
/ucode-mod-math
69 $(Package
/ucode
/default
)
74 define Package
/ucode-mod-math
/description
75 The math plugin provides access to various
<math.h
> procedures.
79 define Package
/ucode-mod-ubus
80 $(Package
/ucode
/default
)
82 DEPENDS
:=ucode
+libubus
+libblobmsg-json
85 define Package
/ucode-mod-ubus
/description
86 The ubus module allows ucode template scripts to enumerate and invoke ubus
91 define Package
/ucode-mod-uci
92 $(Package
/ucode
/default
)
94 DEPENDS
:=ucode
+libuci
97 define Package
/ucode-mod-uci
/description
98 The uci module allows templates to read and modify uci configuration.
102 define Build
/InstallDev
103 $(INSTALL_DIR
) $(1)/usr
/lib
$(1)/usr
/include/ucode
104 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/ucode
/*.h
$(1)/usr
/include/ucode
/
105 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libucode.so
* $(1)/usr
/lib
/
109 define Package
/ucode
/install
110 $(INSTALL_DIR
) $(1)/usr
/bin
111 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/ucode
$(1)/usr
/bin
/ucode
114 define Package
/libucode
/install
115 $(INSTALL_DIR
) $(1)/usr
/lib
116 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libucode.so.
* $(1)/usr
/lib
/
119 define Package
/ucode-mod-fs
/install
120 $(INSTALL_DIR
) $(1)/usr
/lib
/ucode
121 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/ucode
/fs.so
$(1)/usr
/lib
/ucode
/
124 define Package
/ucode-mod-math
/install
125 $(INSTALL_DIR
) $(1)/usr
/lib
/ucode
126 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/ucode
/math.so
$(1)/usr
/lib
/ucode
/
129 define Package
/ucode-mod-ubus
/install
130 $(INSTALL_DIR
) $(1)/usr
/lib
/ucode
131 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/ucode
/ubus.so
$(1)/usr
/lib
/ucode
/
134 define Package
/ucode-mod-uci
/install
135 $(INSTALL_DIR
) $(1)/usr
/lib
/ucode
136 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/ucode
/uci.so
$(1)/usr
/lib
/ucode
/
140 $(eval
$(call BuildPackage
,ucode
))
141 $(eval
$(call BuildPackage
,libucode
))
142 $(eval
$(call BuildPackage
,ucode-mod-fs
))
143 $(eval
$(call BuildPackage
,ucode-mod-math
))
144 $(eval
$(call BuildPackage
,ucode-mod-ubus
))
145 $(eval
$(call BuildPackage
,ucode-mod-uci
))