Ravenports generated: 24 Mar 2023 18:36
[ravenports.git] / bucket_90 / lua52
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               lua52
4 VERSION=                5.2.4
5 KEYWORDS=               lang
6 VARIANTS=               standard
7 SDESC[standard]=        Light, powerful language for app. extension
8 HOMEPAGE=               http://www.lua.org/
9 CONTACT=                nobody
10
11 DOWNLOAD_GROUPS=        main
12 SITES[main]=            http://www.lua.org/ftp/
13 DISTFILE[1]=            lua-5.2.4.tar.gz:main
14 DF_INDEX=               1
15 SPKGS[standard]=        single
16
17 OPTIONS_AVAILABLE=      none
18 OPTIONS_STANDARD=       none
19
20 USES=                   cpe readline
21
22 DISTNAME=               lua-5.2.4
23
24 LICENSE=                MIT:single
25 LICENSE_FILE=           MIT:{{WRKDIR}}/LICENSE
26 LICENSE_SCHEME=         solo
27
28 CPE_PRODUCT=            lua
29 CPE_VENDOR=             lua
30 FPC_EQUIVALENT=         lang/lua52
31
32 BUILD_WRKSRC=           {{WRKSRC}}/src
33 MAKE_ARGS=              MYCFLAGS="{{CFLAGS}} {{CPPFLAGS}}"
34                         MYLDFLAGS="{{LDFLAGS}}"
35                         MYLIBS="-L{{LOCALBASE}}/lib -lreadline"
36                         CC="{{CC}}"
37                         LUA_T=lua52
38                         LUAC_T=luac52
39                         LUA_A=liblua-5.2.a
40                         LUALIB=liblua-5.2
41                         LUA_SO=liblua-5.2.{{LIBEXT}}
42                         LUA_SONAME=liblua-5.2.{{LIBEXT}}
43                         TO_BIN="lua52 luac52"
44                         TO_LIB="liblua-5.2.a liblua-5.2.{{LIBEXT}}"
45                         INSTALL_TOP={{STAGEDIR}}{{PREFIX}}
46                         INSTALL_INC={{STAGEDIR}}{{PREFIX}}/include/lua52
47                         INSTALL_EXEC="{{INSTALL_PROGRAM}}"
48 SINGLE_JOB=             yes
49
50 PLIST_SUB=              LUA_VER=5.2
51                         SUFFIX=52
52 SUB_FILES=              lua-5.2.pc
53 SUB_LIST=               version=5.2.4
54                         includedir={{PREFIX}}/include/lua52
55                         libdir={{PREFIX}}/lib
56                         soname=lua-5.2
57
58 CFLAGS=                 -fPIC
59 LDFLAGS=                -lm
60                         -pthread
61 VAR_OPSYS[freebsd]=     MAKEFILE_LINE=BUILD_TARGET=freebsd
62 VAR_OPSYS[sunos]=       MAKEFILE_LINE=BUILD_TARGET=solaris
63 VAR_OPSYS[linux]=       MAKEFILE_LINE=BUILD_TARGET=linux
64 VAR_OPSYS[darwin]=      MAKEFILE_LINE=BUILD_TARGET=macosx
65 VAR_OPSYS[netbsd]=      MAKEFILE_LINE=BUILD_TARGET=bsd
66 VAR_OPSYS[openbsd]=     MAKEFILE_LINE=BUILD_TARGET=bsd
67 VAR_OPSYS[dragonfly]=   MAKEFILE_LINE=BUILD_TARGET=bsd
68
69 post-patch:
70         ${REINPLACE_CMD} -e 's,rand *(,random(,g' ${WRKSRC}/src/lmathlib.c
71         ${REINPLACE_CMD} -e "/LUA_ROOT/s|/usr/local|${PREFIX}|" \
72                 ${WRKSRC}/src/luaconf.h ${WRKSRC}/src/lua.c
73         ${REINPLACE_CMD} -e 's|man/man1|share/man/man1|' ${WRKSRC}/Makefile
74
75 post-install:
76         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/liblua-5.2.${LIBEXT}
77         ${MV} ${STAGEDIR}${MANPREFIX}/man/man1/lua.1 \
78                 ${STAGEDIR}${MANPREFIX}/man/man1/lua52.1
79         ${MV} ${STAGEDIR}${MANPREFIX}/man/man1/luac.1 \
80                 ${STAGEDIR}${MANPREFIX}/man/man1/luac52.1
81         ${INSTALL_DATA} ${WRKDIR}/lua-5.2.pc \
82                 ${STAGEDIR}${PREFIX}/lib/pkgconfig
83
84 post-extract:
85         ${AWK} '/\/\*\*/ {start=1} /^$$/{start=0} {if (start) print}' \
86                 ${WRKSRC}/src/lua.h > ${WRKDIR}/LICENSE
87
88 [FILE:1209:descriptions/desc.single]
89 Lua is a programming language originally designed for extending
90 applications, but also frequently used as a general-purpose, stand-alone
91 language. Lua combines simple procedural syntax (similar to Pascal) with
92 powerful data description constructs based on associative arrays and
93 extensible semantics. Lua is dynamically typed, interpreted from bytecodes,
94 and has automatic memory management with garbage collection, making it
95 ideal for configuration, scripting, and rapid prototyping.
96
97 A fundamental concept in the design of Lua is to provide meta-mechanisms
98 for implementing features, instead of providing a host of features directly
99 in the language. For example, although Lua is not a pure object-oriented
100 language, it does provide meta-mechanisms for implementing classes and
101 inheritance. Lua's meta-mechanisms bring an economy of concepts and keep
102 the language small, while allowing the semantics to be extended in
103 unconventional ways. Extensible semantics is a distinguishing feature of
104 Lua.
105
106 Lua is implemented as a small library of C functions, written in ANSI C,
107 and compiles unmodified in all known platforms. The implementation goals
108 are simplicity, efficiency, portability, and low embedding cost.
109
110
111 [FILE:95:distinfo]
112 b9e2e4aad6789b3b63a056d442f7b39f0ecfca3ae0f1fc0ae4e9614401b69f4b       252651 lua-5.2.4.tar.gz
113
114
115 [FILE:299:manifests/plist.single]
116 bin/
117  lua%%SUFFIX%%
118  luac%%SUFFIX%%
119 include/lua%%SUFFIX%%/
120  lauxlib.h
121  lua.h
122  lua.hpp
123  luaconf.h
124  lualib.h
125 lib/
126  liblua-%%LUA_VER%%.a
127  liblua-%%LUA_VER%%.so
128 lib/pkgconfig/lua-%%LUA_VER%%.pc
129 share/man/man1/
130  lua%%SUFFIX%%.1.gz
131  luac%%SUFFIX%%.1.gz
132 @dir lib/lua/%%LUA_VER%%
133 @dir share/lua/%%LUA_VER%%
134
135
136 [FILE:1203:patches/patch-src_Makefile]
137 --- src/Makefile.orig   2013-11-11 11:45:49 UTC
138 +++ src/Makefile
139 @@ -6,12 +6,13 @@
140  # Your platform. See PLATS for possible values.
141  PLAT= none
142  
143 -CC= gcc
144 -CFLAGS= -O2 -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS)
145 +CC?= gcc
146 +CFLAGS= -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS)
147  LDFLAGS= $(SYSLDFLAGS) $(MYLDFLAGS)
148  LIBS= -lm $(SYSLIBS) $(MYLIBS)
149  
150 -AR= ar rcu
151 +AR= ar
152 +ARFLAGS= rcu
153  RANLIB= ranlib
154  RM= rm -f
155  
156 @@ -19,8 +20,8 @@ SYSCFLAGS=
157  SYSLDFLAGS=
158  SYSLIBS=
159  
160 -MYCFLAGS=
161 -MYLDFLAGS=
162 +MYCFLAGS?=
163 +MYLDFLAGS?=
164  MYLIBS=
165  MYOBJS=
166  
167 @@ -43,7 +44,7 @@ LUAC_T=       luac
168  LUAC_O=        luac.o
169  
170  ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O)
171 -ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
172 +ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO)
173  ALL_A= $(LUA_A)
174  
175  # Targets start here.
176 @@ -55,8 +56,14 @@ o:   $(ALL_O)
177  
178  a:     $(ALL_A)
179  
180 +$(LUALIB).so: $(CORE_O) $(LIB_O)
181 +       $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(MYLDFLAGS) -shared -Wl,-soname=$(LUA_SONAME) $?
182 +
183 +$(LUALIB).dylib: $(CORE_O) $(LIB_O)
184 +       $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(MYLDFLAGS) -dynamiclib -current_version 1.0 -install_name '$(PREFIX)/lib/$(LUA_SONAME)' $?
185 +
186  $(LUA_A): $(BASE_O)
187 -       $(AR) $@ $(BASE_O)
188 +       $(AR) $(ARFLAGS) $@ $(BASE_O)
189         $(RANLIB) $@
190  
191  $(LUA_T): $(LUA_O) $(LUA_A)
192
193
194 [FILE:253:patches/patch-src__liolib.c]
195 --- ./src/liolib.c.orig 2013-01-05 22:46:54.000000000 +0100
196 +++ ./src/liolib.c      2013-01-05 22:47:32.000000000 +0100
197 @@ -19,6 +19,7 @@
198  #include <stdio.h>
199  #include <stdlib.h>
200  #include <string.h>
201 +#include <unistd.h>
202  
203  #define liolib_c
204  #define LUA_LIB
205
206
207 [FILE:217:files/lua-5.2.pc.in]
208 version=%%version%%
209 libdir=%%libdir%%
210 includedir=%%includedir%%
211 soname=%%soname%%
212
213 Name: Lua
214 Description: An Extensible Extension Language
215 Version: ${version}
216 Libs: -L${libdir} -l${soname} -lm
217 Cflags: -I${includedir}
218