$NetBSD: patch-src_Makefile,v 1.5 2023/05/15 08:17:11 nikita Exp $ - Don't override CC/CFLAGS/LDFLAGS. - Use libtool to build shared libraries. --- src/Makefile.orig 2023-02-03 11:43:14.000000000 +0100 +++ src/Makefile 2023-05-07 14:17:04.851265572 +0200 @@ -6,9 +6,8 @@ # Your platform. See PLATS for possible values. PLAT= guess -CC= gcc -std=gnu99 -CFLAGS= -O2 -Wall -Wextra -DLUA_COMPAT_5_3 $(SYSCFLAGS) $(MYCFLAGS) -LDFLAGS= $(SYSLDFLAGS) $(MYLDFLAGS) +CFLAGS+= -std=gnu99 -Wall -Wextra -DLUA_COMPAT_5_3 $(SYSCFLAGS) $(MYCFLAGS) +LDFLAGS+= $(SYSLDFLAGS) $(MYLDFLAGS) LIBS= -lm $(SYSLIBS) $(MYLIBS) AR= ar rcu @@ -32,16 +31,16 @@ PLATS= guess aix bsd c89 freebsd generic ios linux linux-readline macosx mingw posix solaris -LUA_A= liblua.a +LUA_A= liblua5.4.la CORE_O= lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o LIB_O= lauxlib.o lbaselib.o lcorolib.o ldblib.o liolib.o lmathlib.o loadlib.o loslib.o lstrlib.o ltablib.o lutf8lib.o linit.o -BASE_O= $(CORE_O) $(LIB_O) $(MYOBJS) +BASE_O= $(CORE_O:.o=.lo) $(LIB_O:.o=.lo) $(MYOBJS:.o=.lo) LUA_T= lua -LUA_O= lua.o +LUA_O= lua.lo LUAC_T= luac -LUAC_O= luac.o +LUAC_O= luac.lo ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O) ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) @@ -56,15 +55,19 @@ a: $(ALL_A) +.SUFFIXES: .lo + +.c.lo: + $(LIBTOOL) --quiet --tag=CC --mode=compile $(CC) $(CFLAGS) -c $< + $(LUA_A): $(BASE_O) - $(AR) $@ $(BASE_O) - $(RANLIB) $@ + $(LIBTOOL) --quiet --tag=CC --mode=link $(CC) -o $@ $(LDFLAGS) $(BASE_O) -rpath $(PREFIX)/lib -version-info 5:4 $(LIBS) $(LUA_T): $(LUA_O) $(LUA_A) - $(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) + $(LIBTOOL) --quiet --tag=CC --mode=link $(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) $(LUAC_T): $(LUAC_O) $(LUA_A) - $(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) + $(LIBTOOL) --quiet --tag=CC --mode=link $(CC) -static -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) test: ./$(LUA_T) -v @@ -146,16 +149,6 @@ # Targets that do not create files (not all makes understand .PHONY). .PHONY: all $(PLATS) help test clean default o a depend echo -# Compiler modules may use special flags. -llex.o: - $(CC) $(CFLAGS) $(CMCFLAGS) -c llex.c - -lparser.o: - $(CC) $(CFLAGS) $(CMCFLAGS) -c lparser.c - -lcode.o: - $(CC) $(CFLAGS) $(CMCFLAGS) -c lcode.c - # DO NOT DELETE lapi.o: lapi.c lprefix.h lua.h luaconf.h lapi.h llimits.h lstate.h \