Ravenports generated: 03 Sep 2023 19:45
[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 VAR_OPSYS[midnightbsd]= MAKEFILE_LINE=BUILD_TARGET=bsd
69
70 post-patch:
71         ${REINPLACE_CMD} -e 's,rand *(,random(,g' ${WRKSRC}/src/lmathlib.c
72         ${REINPLACE_CMD} -e "/LUA_ROOT/s|/usr/local|${PREFIX}|" \
73                 ${WRKSRC}/src/luaconf.h ${WRKSRC}/src/lua.c
74         ${REINPLACE_CMD} -e 's|man/man1|share/man/man1|' ${WRKSRC}/Makefile
75
76 post-install:
77         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/liblua-5.2.${LIBEXT}
78         ${MV} ${STAGEDIR}${MANPREFIX}/man/man1/lua.1 \
79                 ${STAGEDIR}${MANPREFIX}/man/man1/lua52.1
80         ${MV} ${STAGEDIR}${MANPREFIX}/man/man1/luac.1 \
81                 ${STAGEDIR}${MANPREFIX}/man/man1/luac52.1
82         ${INSTALL_DATA} ${WRKDIR}/lua-5.2.pc \
83                 ${STAGEDIR}${PREFIX}/lib/pkgconfig
84
85 post-extract:
86         ${AWK} '/\/\*\*/ {start=1} /^$$/{start=0} {if (start) print}' \
87                 ${WRKSRC}/src/lua.h > ${WRKDIR}/LICENSE
88
89 [FILE:1209:descriptions/desc.single]
90 Lua is a programming language originally designed for extending
91 applications, but also frequently used as a general-purpose, stand-alone
92 language. Lua combines simple procedural syntax (similar to Pascal) with
93 powerful data description constructs based on associative arrays and
94 extensible semantics. Lua is dynamically typed, interpreted from bytecodes,
95 and has automatic memory management with garbage collection, making it
96 ideal for configuration, scripting, and rapid prototyping.
97
98 A fundamental concept in the design of Lua is to provide meta-mechanisms
99 for implementing features, instead of providing a host of features directly
100 in the language. For example, although Lua is not a pure object-oriented
101 language, it does provide meta-mechanisms for implementing classes and
102 inheritance. Lua's meta-mechanisms bring an economy of concepts and keep
103 the language small, while allowing the semantics to be extended in
104 unconventional ways. Extensible semantics is a distinguishing feature of
105 Lua.
106
107 Lua is implemented as a small library of C functions, written in ANSI C,
108 and compiles unmodified in all known platforms. The implementation goals
109 are simplicity, efficiency, portability, and low embedding cost.
110
111
112 [FILE:95:distinfo]
113 b9e2e4aad6789b3b63a056d442f7b39f0ecfca3ae0f1fc0ae4e9614401b69f4b       252651 lua-5.2.4.tar.gz
114
115
116 [FILE:299:manifests/plist.single]
117 bin/
118  lua%%SUFFIX%%
119  luac%%SUFFIX%%
120 include/lua%%SUFFIX%%/
121  lauxlib.h
122  lua.h
123  lua.hpp
124  luaconf.h
125  lualib.h
126 lib/
127  liblua-%%LUA_VER%%.a
128  liblua-%%LUA_VER%%.so
129 lib/pkgconfig/lua-%%LUA_VER%%.pc
130 share/man/man1/
131  lua%%SUFFIX%%.1.gz
132  luac%%SUFFIX%%.1.gz
133 @dir lib/lua/%%LUA_VER%%
134 @dir share/lua/%%LUA_VER%%
135
136
137 [FILE:1203:patches/patch-src_Makefile]
138 --- src/Makefile.orig   2013-11-11 11:45:49 UTC
139 +++ src/Makefile
140 @@ -6,12 +6,13 @@
141  # Your platform. See PLATS for possible values.
142  PLAT= none
143  
144 -CC= gcc
145 -CFLAGS= -O2 -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS)
146 +CC?= gcc
147 +CFLAGS= -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS)
148  LDFLAGS= $(SYSLDFLAGS) $(MYLDFLAGS)
149  LIBS= -lm $(SYSLIBS) $(MYLIBS)
150  
151 -AR= ar rcu
152 +AR= ar
153 +ARFLAGS= rcu
154  RANLIB= ranlib
155  RM= rm -f
156  
157 @@ -19,8 +20,8 @@ SYSCFLAGS=
158  SYSLDFLAGS=
159  SYSLIBS=
160  
161 -MYCFLAGS=
162 -MYLDFLAGS=
163 +MYCFLAGS?=
164 +MYLDFLAGS?=
165  MYLIBS=
166  MYOBJS=
167  
168 @@ -43,7 +44,7 @@ LUAC_T=       luac
169  LUAC_O=        luac.o
170  
171  ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O)
172 -ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
173 +ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO)
174  ALL_A= $(LUA_A)
175  
176  # Targets start here.
177 @@ -55,8 +56,14 @@ o:   $(ALL_O)
178  
179  a:     $(ALL_A)
180  
181 +$(LUALIB).so: $(CORE_O) $(LIB_O)
182 +       $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(MYLDFLAGS) -shared -Wl,-soname=$(LUA_SONAME) $?
183 +
184 +$(LUALIB).dylib: $(CORE_O) $(LIB_O)
185 +       $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(MYLDFLAGS) -dynamiclib -current_version 1.0 -install_name '$(PREFIX)/lib/$(LUA_SONAME)' $?
186 +
187  $(LUA_A): $(BASE_O)
188 -       $(AR) $@ $(BASE_O)
189 +       $(AR) $(ARFLAGS) $@ $(BASE_O)
190         $(RANLIB) $@
191  
192  $(LUA_T): $(LUA_O) $(LUA_A)
193
194
195 [FILE:253:patches/patch-src__liolib.c]
196 --- ./src/liolib.c.orig 2013-01-05 22:46:54.000000000 +0100
197 +++ ./src/liolib.c      2013-01-05 22:47:32.000000000 +0100
198 @@ -19,6 +19,7 @@
199  #include <stdio.h>
200  #include <stdlib.h>
201  #include <string.h>
202 +#include <unistd.h>
203  
204  #define liolib_c
205  #define LUA_LIB
206
207
208 [FILE:217:files/lua-5.2.pc.in]
209 version=%%version%%
210 libdir=%%libdir%%
211 includedir=%%includedir%%
212 soname=%%soname%%
213
214 Name: Lua
215 Description: An Extensible Extension Language
216 Version: ${version}
217 Libs: -L${libdir} -l${soname} -lm
218 Cflags: -I${includedir}
219