]> granicus.if.org Git - nethack/commitdiff
3.7 Unix Makefiles
authorPatR <rankin@nethack.org>
Wed, 27 Nov 2019 03:27:00 +0000 (19:27 -0800)
committerPatR <rankin@nethack.org>
Wed, 27 Nov 2019 03:27:00 +0000 (19:27 -0800)
Copy lib/lua-$(VERSION)/src/liblua.h to lib/lua/ rather than lib/.

Instead of copying any of the header files or telling the compiler
where to find the lua ones, generate include/nhlua.h on the fly and
restrict the knowledge of where they are to it (paths are relative
to include/).

|/* nhlua.h - generated by top Makefile */
|#include "../lib/lua-5.3.5/src/lua.h"
|LUA_API int   (lua_error) (lua_State *L) NORETURN;
|#include "../lib/lua-5.3.5/src/lualib.h"
|#include "../lib/lua-5.3.5/src/lauxlib.h"
|/*nhlua.h*/

This might need to be redone (or augmented by having CFLAGS add back
'-I path-to-lua') if some compiler can't find '#include "luaconf.h"'
issued by lua.h.

include/system.h
src/nhlua.c
sys/unix/Makefile.src
sys/unix/Makefile.top

index 265f46f98922c295375d4bb4537669f4a0b655d9..60437f0bc2d0fca279ffe33fe91bcdc89d430e8f 100644 (file)
@@ -1,4 +1,4 @@
-/* NetHack 3.6 system.h        $NHDT-Date: 1550268586 2019/02/15 22:09:46 $  $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.17 $ */
+/* NetHack 3.6 system.h        $NHDT-Date: 1574825213 2019/11/27 03:26:53 $  $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.22 $ */
 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
 /*-Copyright (c) Robert Patrick Rankin, 2017. */
 /* NetHack may be freely redistributed.  See license for details. */
@@ -570,9 +570,7 @@ E int FDECL(atoi, (const char *));
 #endif /* WIN32 */
 
 #if !defined(CROSSCOMPILE) || defined(CROSSCOMPILE_TARGET)
-#include "lua.h"
-#include "lualib.h"
-#include "lauxlib.h"
+#include "nhlua.h"
 
 #if defined(WIN32)
 #define LUA_INTCAST(i) ((int) i)
@@ -580,4 +578,5 @@ E int FDECL(atoi, (const char *));
 #define LUA_INTCAST(i) (i)
 #endif
 #endif /* !CROSSCOMPILE || CROSSCOMPILE_TARGET */
+
 #endif /* SYSTEM_H */
index 73431fc7f32d372a000bca637be0aa696c817b66..a8f33ca8e0f197c2a99f6d2d673ff89068ce3e85 100644 (file)
@@ -1,4 +1,4 @@
-/* NetHack 3.6 nhlua.c $NHDT-Date: 1574646949 2019/11/25 01:55:49 $  $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.8 $ */
+/* NetHack 3.6 nhlua.c $NHDT-Date: 1574825214 2019/11/27 03:26:54 $  $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.9 $ */
 /*      Copyright (c) 2018 by Pasi Kallinen */
 /* NetHack may be freely redistributed.  See license for details. */
 
@@ -37,7 +37,6 @@ nhl_error(L, msg)
 lua_State *L;
 const char *msg;
 {
-    extern int FDECL(lua_error, (lua_State *)) NORETURN;
     lua_Debug ar;
     char buf[BUFSZ];
 
index 4e580ba2c28ee58cb40f2e58f3d632fc0a163120..18323ccb20c2243b25c3f1e8e9923bcdc1a23518 100644 (file)
@@ -1,5 +1,5 @@
 #      NetHack Makefile.
-# NetHack 3.6  Makefile.src    $NHDT-Date: 1574713234 2019/11/25 20:20:34 $  $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.76 $
+# NetHack 3.6  Makefile.src    $NHDT-Date: 1574825214 2019/11/27 03:26:54 $  $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.77 $
 # Copyright (c) 2018 by Pasi Kallinen
 # NetHack may be freely redistributed.  See license for details.
 
@@ -49,7 +49,7 @@ SHELL=/bin/sh
 # for UNIX systems
 SYSSRC = ../sys/share/ioctl.c ../sys/share/unixtty.c ../sys/unix/unixmain.c \
        ../sys/unix/unixunix.c ../sys/unix/unixres.c
-SYSOBJ = ioctl.o unixmain.o unixtty.o unixunix.o unixres.o ../lib/liblua.a
+SYSOBJ = ioctl.o unixmain.o unixtty.o unixunix.o unixres.o ../lib/lua/liblua.a
 #
 # for Systos
 # SYSSRC = ../sys/atari/tos.c ../sys/share/pcmain.c ../sys/share/pcsys.c \
@@ -173,7 +173,6 @@ GNOMEINC=-I/usr/lib/glib/include -I/usr/lib/gnome-libs/include -I../win/gnome
 #CFLAGS = -O -I../include
 #LFLAGS = 
 
-CFLAGS += -I../lib
 # -lm required by lua
 LIBS += -lm
 
@@ -506,9 +505,6 @@ HACKINCL = align.h amiconf.h artifact.h artilist.h attrib.h beconf.h botl.h \
 
 HSOURCES = $(HACKINCL) date.h onames.h pm.h vis_tab.h dgn_file.h
 
-# relative to src
-LUA_HEADERS = ../lib/lua.h ../lib/luaconf.h ../lib/lualib.h ../lib/lauxlib.h
-
 # the following .o's _must_ be made before any others (for makedefs)
 FIRSTOBJ = monst.o objects.o
 
@@ -589,7 +585,7 @@ DUMB.Setup: ../include/extern.h
 
 all:   $(GAME)
 
-lib/liblua.a $(LUA_HEADERS):
+../lib/lua/liblua.a ../include/nhlua.h:
        @( cd .. ; $(MAKE) lua_support )
 
 #      dependencies for makedefs and its outputs, which the util
@@ -724,7 +720,7 @@ clean:
 
 spotless: clean
        -rm -f a.out core $(GAME) Sys*
-       -rm -f ../lib/liblua.a $(LUA_HEADERS)
+       -rm -f ../lib/lua/liblua.a ../include/nhlua.h
        -rm -f ../include/date.h ../include/onames.h ../include/pm.h
        -rm -f ../include/vis_tab.h vis_tab.c tile.c *.moc
        -rm -f ../win/gnome/gn_rip.h
@@ -757,7 +753,7 @@ $(CONFIG_H): ../include/config.h ../include/config1.h ../include/tradstdc.h \
                ../include/micro.h ../include/pcconf.h ../include/tosconf.h \
                ../include/amiconf.h ../include/macconf.h ../include/beconf.h \
                ../include/wceconf.h ../include/ntconf.h \
-               ../lib/lua.h ../lib/luaconf.h ../lib/lualib.h ../lib/lauxlib.h
+               ../include/nhlua.h
        touch $(CONFIG_H)
 # hack.h timestamp
 $(HACK_H): ../include/hack.h $(CONFIG_H) ../include/lint.h ../include/align.h \
index da01f1a952621d1602073792307a362bb5c3fea3..9d930aaa185e17d6590de29abacd258f22250338 100644 (file)
@@ -1,5 +1,5 @@
 #      NetHack Top-level Makefile.
-# NetHack 3.6  Makefile.top    $NHDT-Date: 1574713236 2019/11/25 20:20:36 $  $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.42 $
+# NetHack 3.6  Makefile.top    $NHDT-Date: 1574825215 2019/11/27 03:26:55 $  $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.43 $
 # Copyright (c) 2015 by Kenneth Lorber, Kensington, Maryland
 # NetHack may be freely redistributed.  See license for details.
 
@@ -94,21 +94,21 @@ DATNODLB = $(VARDATND) license symbols
 DATDLB = $(DATHELP) dungeon.lua tribute $(SPEC_LEVS) $(QUEST_LEVS) $(VARDATD)
 DAT = $(DATNODLB) $(DATDLB)
 
-LUA_HEADERS = lib/lua.h lib/luaconf.h lib/lualib.h lib/lauxlib.h
-lua_support: lib/liblua.a $(LUA_HEADERS)
+lua_support: lib/lua/liblua.a include/nhlua.h
        @true
-lib/liblua.a: lib/lua-$(LUA_VERSION)/src/liblua.a
-       @( cd lib/lua-$(LUA_VERSION)/src ; make a ; cd ../../.. )
+lib/lua-$(LUA_VERSION)/src/liblua.a: lib/lua-$(LUA_VERSION)/src/lua.h
+       ( cd lib/lua-$(LUA_VERSION)/src ; make a ; cd ../../.. )
+lib/lua/liblua.a: lib/lua-$(LUA_VERSION)/src/liblua.a
+       @( if [ ! -d lib/lua ] ; then mkdir -p lib/lua ; fi )
        cp lib/lua-$(LUA_VERSION)/src/liblua.a $@
-lib/lua.h: lib/lua-$(LUA_VERSION)/src/lua.h
-       sed -e '/(lua_error)/s/;/ NORETURN;/' \
-               < lib/lua-$(LUA_VERSION)/src/lua.h > $@
-lib/luaconf.h: lib/lua-$(LUA_VERSION)/src/luaconf.h
-       cp lib/lua-$(LUA_VERSION)/src/luaconf.h $@
-lib/lualib.h: lib/lua-$(LUA_VERSION)/src/lualib.h
-       cp lib/lua-$(LUA_VERSION)/src/lualib.h $@
-lib/lauxlib.h: lib/lua-$(LUA_VERSION)/src/lauxlib.h
-       cp lib/lua-$(LUA_VERSION)/src/lauxlib.h $@
+include/nhlua.h: lib/lua/liblua.a
+       echo '/* nhlua.h - generated by top Makefile */' > $@
+       @echo '#include "../lib/lua-$(LUA_VERSION)/src/lua.h"' >> $@
+       @sed -e '/(lua_error)/!d' -e '/(lua_error)/s/;/ NORETURN;/1' \
+               < lib/lua-$(LUA_VERSION)/src/lua.h >> $@
+       @echo '#include "../lib/lua-$(LUA_VERSION)/src/lualib.h"' >> $@
+       @echo '#include "../lib/lua-$(LUA_VERSION)/src/lauxlib.h"' >> $@
+       @echo '/*nhlua.h*/' >> $@
 
 $(GAME): lua_support
        ( cd src ; $(MAKE) )