aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rockspecs/luasocket-3.0rc1-2.rockspec108
1 files changed, 108 insertions, 0 deletions
diff --git a/rockspecs/luasocket-3.0rc1-2.rockspec b/rockspecs/luasocket-3.0rc1-2.rockspec
new file mode 100644
index 0000000..3cb6524
--- /dev/null
+++ b/rockspecs/luasocket-3.0rc1-2.rockspec
@@ -0,0 +1,108 @@
1package = "LuaSocket"
2version = "3.0rc1-2"
3source = {
4 url = "https://github.com/diegonehab/luasocket/archive/v3.0-rc1.zip",
5 dir = "luasocket-3.0-rc1",
6}
7description = {
8 summary = "Network support for the Lua language",
9 detailed = [[
10 LuaSocket is a Lua extension library that is composed by two parts: a C core
11 that provides support for the TCP and UDP transport layers, and a set of Lua
12 modules that add support for functionality commonly needed by applications
13 that deal with the Internet.
14 ]],
15 homepage = "http://luaforge.net/projects/luasocket/",
16 license = "MIT"
17}
18dependencies = {
19 "lua >= 5.1"
20}
21
22local function make_plat(plat)
23 local defines = {
24 unix = {
25 "LUA_COMPAT_APIINTCASTS",
26 "LUASOCKET_DEBUG",
27 "LUASOCKET_API=__attribute__((visibility(\"default\")))",
28 "UNIX_API=__attribute__((visibility(\"default\")))",
29 "MIME_API=__attribute__((visibility(\"default\")))"
30 },
31 macosx = {
32 "LUA_COMPAT_APIINTCASTS",
33 "LUASOCKET_DEBUG",
34 "UNIX_HAS_SUN_LEN",
35 "LUASOCKET_API=__attribute__((visibility(\"default\")))",
36 "UNIX_API=__attribute__((visibility(\"default\")))",
37 "MIME_API=__attribute__((visibility(\"default\")))"
38 },
39 win32 = {
40 "LUA_COMPAT_APIINTCASTS",
41 "LUASOCKET_DEBUG",
42 "NDEBUG",
43 "LUASOCKET_API=__declspec(dllexport)",
44 "MIME_API=__declspec(dllexport)"
45 },
46 mingw32 = {
47 "LUA_COMPAT_APIINTCASTS",
48 "LUASOCKET_DEBUG",
49 "LUASOCKET_INET_PTON",
50 "WINVER=0x0501",
51 "LUASOCKET_API=__declspec(dllexport)",
52 "MIME_API=__declspec(dllexport)"
53 }
54 }
55 local modules = {
56 ["socket.core"] = {
57 sources = { "src/luasocket.c", "src/timeout.c", "src/buffer.c", "src/io.c", "src/auxiliar.c",
58 "src/options.c", "src/inet.c", "src/except.c", "src/select.c", "src/tcp.c", "src/udp.c" },
59 defines = defines[plat],
60 incdir = "src"
61 },
62 ["mime.core"] = {
63 sources = { "src/mime.c" },
64 defines = defines[plat],
65 incdir = "src"
66 },
67 ["socket.http"] = "src/http.lua",
68 ["socket.url"] = "src/url.lua",
69 ["socket.tp"] = "src/tp.lua",
70 ["socket.ftp"] = "src/ftp.lua",
71 ["socket.headers"] = "src/headers.lua",
72 ["socket.smtp"] = "src/smtp.lua",
73 ltn12 = "src/ltn12.lua",
74 socket = "src/socket.lua",
75 mime = "src/mime.lua"
76 }
77 if plat == "unix" or plat == "macosx" then
78 modules["socket.core"].sources[#modules["socket.core"].sources+1] = "src/usocket.c"
79 modules["socket.unix"] = {
80 sources = { "src/buffer.c", "src/auxiliar.c", "src/options.c", "src/timeout.c", "src/io.c",
81 "src/usocket.c", "src/unix.c" },
82 defines = defines[plat],
83 incdir = "/src"
84 }
85 modules["socket.serial"] = {
86 sources = { "src/buffer.c", "src/auxiliar.c", "src/options.c", "src/timeout.c",
87 "src/io.c", "src/usocket.c", "src/serial.c" },
88 defines = defines[plat],
89 incdir = "/src"
90 }
91 end
92 if plat == "win32" or plat == "mingw32" then
93 modules["socket.core"].sources[#modules["socket.core"].sources+1] = "src/wsocket.c"
94 modules["socket.core"].libraries = { "ws2_32" }
95 end
96 return { modules = modules }
97end
98
99build = {
100 type = "builtin",
101 platforms = {
102 unix = make_plat("unix"),
103 macosx = make_plat("macosx"),
104 win32 = make_plat("win32"),
105 mingw32 = make_plat("mingw32")
106 },
107 copy_directories = { "doc", "samples", "etc", "test" }
108}