Thu Mar 5 13:39:20 2015 UTC ()
Fix build and enable dymamic module.

* Add -no-undefined to libtool for fixing undefined reference errors
  under Cygwin.
* Use bsd build target for Cygwin to enable dynamic module loading.
* Disable Lua module version check under Cygwin.
  This workaround should be investigated deeper.


(ryoon)
diff -r1.6 -r1.7 pkgsrc/lang/lua52/Makefile
diff -r1.4 -r1.5 pkgsrc/lang/lua52/distinfo
diff -r1.2 -r1.3 pkgsrc/lang/lua52/patches/patch-ab
diff -r0 -r1.1 pkgsrc/lang/lua52/patches/patch-src_lua.c

cvs diff -r1.6 -r1.7 pkgsrc/lang/lua52/Makefile (expand / switch to unified diff)

--- pkgsrc/lang/lua52/Makefile 2014/10/09 14:06:38 1.6
+++ pkgsrc/lang/lua52/Makefile 2015/03/05 13:39:20 1.7
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: Makefile,v 1.6 2014/10/09 14:06:38 wiz Exp $ 1# $NetBSD: Makefile,v 1.7 2015/03/05 13:39:20 ryoon Exp $
2 2
3DISTNAME= lua-${LUA_VERSION} 3DISTNAME= lua-${LUA_VERSION}
4PKGNAME= lua52-${LUA_VERSION} 4PKGNAME= lua52-${LUA_VERSION}
5PKGREVISION= 1 5PKGREVISION= 1
6CATEGORIES= lang 6CATEGORIES= lang
7MASTER_SITES= http://www.lua.org/ftp/ \ 7MASTER_SITES= http://www.lua.org/ftp/ \
8 http://www.tecgraf.puc-rio.br/lua/ftp/ 8 http://www.tecgraf.puc-rio.br/lua/ftp/
9 9
10MAINTAINER= pkgsrc-users@NetBSD.org 10MAINTAINER= pkgsrc-users@NetBSD.org
11HOMEPAGE= http://www.lua.org/ 11HOMEPAGE= http://www.lua.org/
12COMMENT= Powerful light-weight language for extending applications 12COMMENT= Powerful light-weight language for extending applications
13LICENSE= mit 13LICENSE= mit
14 14
@@ -21,26 +21,28 @@ CONFLICTS+= lua-[0-9]* @@ -21,26 +21,28 @@ CONFLICTS+= lua-[0-9]*
21USE_LIBTOOL= yes 21USE_LIBTOOL= yes
22USE_TOOLS+= gmake 22USE_TOOLS+= gmake
23MAKE_ENV+= DLLIB=${BUILDLINK_LDADD.dl:Q} 23MAKE_ENV+= DLLIB=${BUILDLINK_LDADD.dl:Q}
24MAKE_ENV+= INSTALL_DATA=${INSTALL_DATA:Q} 24MAKE_ENV+= INSTALL_DATA=${INSTALL_DATA:Q}
25CFLAGS+= -DLUA_ROOT=\"${PREFIX}/\" 25CFLAGS+= -DLUA_ROOT=\"${PREFIX}/\"
26 26
27PKGCONFIG_OVERRIDE= ${WRKSRC}/lua.pc 27PKGCONFIG_OVERRIDE= ${WRKSRC}/lua.pc
28INSTALLATION_DIRS+= lib/pkgconfig share/doc/lua-5.2 28INSTALLATION_DIRS+= lib/pkgconfig share/doc/lua-5.2
29 29
30.if ${OPSYS} == "FreeBSD" 30.if ${OPSYS} == "FreeBSD"
31BUILD_TARGET= freebsd 31BUILD_TARGET= freebsd
32.elif !empty(OPSYS:M*BSD*) || ${OPSYS} == "DragonFly" 32.elif !empty(OPSYS:M*BSD*) || ${OPSYS} == "DragonFly"
33BUILD_TARGET= bsd 33BUILD_TARGET= bsd
 34.elif ${OPSYS} == "Cygwin"
 35BUILD_TARGET= bsd
34.elif ${OPSYS} == "Linux" 36.elif ${OPSYS} == "Linux"
35BUILD_TARGET= linux 37BUILD_TARGET= linux
36.elif ${OPSYS} == "Darwin" 38.elif ${OPSYS} == "Darwin"
37BUILD_TARGET= macosx 39BUILD_TARGET= macosx
38.elif ${OPSYS} == "SunOS" 40.elif ${OPSYS} == "SunOS"
39BUILD_TARGET= solaris 41BUILD_TARGET= solaris
40.elif ${OPSYS} == "AIX" 42.elif ${OPSYS} == "AIX"
41BUILD_TARGET= aix 43BUILD_TARGET= aix
42.else 44.else
43BUILD_TARGET= generic 45BUILD_TARGET= generic
44.endif 46.endif
45 47
46DOCDIR= ${PREFIX}/share/doc/lua-5.2 48DOCDIR= ${PREFIX}/share/doc/lua-5.2

cvs diff -r1.4 -r1.5 pkgsrc/lang/lua52/distinfo (expand / switch to unified diff)

--- pkgsrc/lang/lua52/distinfo 2015/01/02 15:50:43 1.4
+++ pkgsrc/lang/lua52/distinfo 2015/03/05 13:39:20 1.5
@@ -1,9 +1,10 @@ @@ -1,9 +1,10 @@
1$NetBSD: distinfo,v 1.4 2015/01/02 15:50:43 alnsn Exp $ 1$NetBSD: distinfo,v 1.5 2015/03/05 13:39:20 ryoon Exp $
2 2
3SHA1 (lua-5.2.3.tar.gz) = 926b7907bc8d274e063d42804666b40a3f3c124c 3SHA1 (lua-5.2.3.tar.gz) = 926b7907bc8d274e063d42804666b40a3f3c124c
4RMD160 (lua-5.2.3.tar.gz) = b8714669c8c0f8272104effd8a9675921ddb2fa5 4RMD160 (lua-5.2.3.tar.gz) = b8714669c8c0f8272104effd8a9675921ddb2fa5
5Size (lua-5.2.3.tar.gz) = 251195 bytes 5Size (lua-5.2.3.tar.gz) = 251195 bytes
6SHA1 (patch-aa) = ce0763ed1515f670b8a5d543af3753320cf06309 6SHA1 (patch-aa) = ce0763ed1515f670b8a5d543af3753320cf06309
7SHA1 (patch-ab) = 92f711427090021d89b8fcb1d3633ca6300c830d 7SHA1 (patch-ab) = 498dac3f444ccf6f6dff22c4644b8123865f3a9d
8SHA1 (patch-ac) = b8b9c0068210795e5eb22512767ac2e98bca8cbc 8SHA1 (patch-ac) = b8b9c0068210795e5eb22512767ac2e98bca8cbc
9SHA1 (patch-src_liolib.c) = e85afa1ab7060be2c027ecd619fd9c9fd721a8b5 9SHA1 (patch-src_liolib.c) = e85afa1ab7060be2c027ecd619fd9c9fd721a8b5
 10SHA1 (patch-src_lua.c) = 393ef8161b28e201abd5b27d7c4c92b19de4601e

cvs diff -r1.2 -r1.3 pkgsrc/lang/lua52/patches/patch-ab (expand / switch to unified diff)

--- pkgsrc/lang/lua52/patches/patch-ab 2014/05/03 13:00:45 1.2
+++ pkgsrc/lang/lua52/patches/patch-ab 2015/03/05 13:39:20 1.3
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1$NetBSD: patch-ab,v 1.2 2014/05/03 13:00:45 alnsn Exp $ 1$NetBSD: patch-ab,v 1.3 2015/03/05 13:39:20 ryoon Exp $
2 2
3--- src/Makefile.orig 2013-11-11 11:45:49.000000000 +0000 3--- src/Makefile.orig 2013-11-11 11:45:49.000000000 +0000
4+++ src/Makefile 4+++ src/Makefile
5@@ -6,8 +6,7 @@ 5@@ -6,8 +6,7 @@
6 # Your platform. See PLATS for possible values. 6 # Your platform. See PLATS for possible values.
7 PLAT= none 7 PLAT= none
8  8
9-CC= gcc 9-CC= gcc
10-CFLAGS= -O2 -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS) 10-CFLAGS= -O2 -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS)
11+CFLAGS+= -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS) 11+CFLAGS+= -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS)
12 LDFLAGS= $(SYSLDFLAGS) $(MYLDFLAGS) 12 LDFLAGS= $(SYSLDFLAGS) $(MYLDFLAGS)
13 LIBS= -lm $(SYSLIBS) $(MYLIBS) 13 LIBS= -lm $(SYSLIBS) $(MYLIBS)
14  14
@@ -43,27 +43,27 @@ $NetBSD: patch-ab,v 1.2 2014/05/03 13:00 @@ -43,27 +43,27 @@ $NetBSD: patch-ab,v 1.2 2014/05/03 13:00
43-LUAC_T= luac 43-LUAC_T= luac
44-LUAC_O= luac.o 44-LUAC_O= luac.o
45+LUAC_T= luac5.2 45+LUAC_T= luac5.2
46+LUAC_O= luac.lo 46+LUAC_O= luac.lo
47  47
48 ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O) 48 ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O)
49 ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) 49 ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
50@@ -56,14 +60,13 @@ o: $(ALL_O) 50@@ -56,14 +60,13 @@ o: $(ALL_O)
51 a: $(ALL_A) 51 a: $(ALL_A)
52  52
53 $(LUA_A): $(BASE_O) 53 $(LUA_A): $(BASE_O)
54- $(AR) $@ $(BASE_O) 54- $(AR) $@ $(BASE_O)
55- $(RANLIB) $@ 55- $(RANLIB) $@
56+ ${LIBTOOL} --tag=CC --mode=link $(CC) $(LDFLAGS) -o $@ $(BASE_O) -rpath ${PREFIX}/lib -version-info ${LV} ${LIBS} 56+ ${LIBTOOL} --tag=CC --mode=link $(CC) -no-undefined $(LDFLAGS) -o $@ $(BASE_O) -rpath ${PREFIX}/lib -version-info ${LV} ${LIBS}
57  57
58 $(LUA_T): $(LUA_O) $(LUA_A) 58 $(LUA_T): $(LUA_O) $(LUA_A)
59- $(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) 59- $(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)
60+ ${LIBTOOL} --tag=CC --mode=link $(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) 60+ ${LIBTOOL} --tag=CC --mode=link $(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)
61  61
62 $(LUAC_T): $(LUAC_O) $(LUA_A) 62 $(LUAC_T): $(LUAC_O) $(LUA_A)
63- $(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) 63- $(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
64+ ${LIBTOOL} --tag=CC --mode=link $(CC) -static -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) 64+ ${LIBTOOL} --tag=CC --mode=link $(CC) -static -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
65  65
66 clean: 66 clean:
67 $(RM) $(ALL_T) $(ALL_O) 67 $(RM) $(ALL_T) $(ALL_O)
68@@ -95,7 +98,7 @@ ansi: 68@@ -95,7 +98,7 @@ ansi:
69 $(MAKE) $(ALL) SYSCFLAGS="-DLUA_ANSI" 69 $(MAKE) $(ALL) SYSCFLAGS="-DLUA_ANSI"

File Added: pkgsrc/lang/lua52/patches/patch-src_lua.c
$NetBSD: patch-src_lua.c,v 1.1 2015/03/05 13:39:20 ryoon Exp $

--- src/lua.c.orig	2013-04-12 18:48:47.000000000 +0000
+++ src/lua.c
@@ -453,7 +453,9 @@ static int pmain (lua_State *L) {
     lua_setfield(L, LUA_REGISTRYINDEX, "LUA_NOENV");
   }
   /* open standard libraries */
+#if !defined(__CYGWIN__)
   luaL_checkversion(L);
+#endif
   lua_gc(L, LUA_GCSTOP, 0);  /* stop collector during initialization */
   luaL_openlibs(L);  /* open libraries */
   lua_gc(L, LUA_GCRESTART, 0);