From 7299b0e7f804431d80268dadd001682ba1a3fffc Mon Sep 17 00:00:00 2001 From: "H. Peter Anvin" Date: Fri, 2 Jul 2010 11:16:40 -0700 Subject: lua: Modernize the Makefile Modernize the Makefile for lua to match the current style, in particular to have it pick up its configuration and rules from the central MCONFIG file. This also fixes the incorrect use of "clean" vs. "spotless" which was picked up from the Makefile style in use at that time. Signed-off-by: H. Peter Anvin --- com32/lua/src/Makefile | 100 +++++++++++++------------------------------------ 1 file changed, 27 insertions(+), 73 deletions(-) diff --git a/com32/lua/src/Makefile b/com32/lua/src/Makefile index 72f2a2a7..ac7824a5 100644 --- a/com32/lua/src/Makefile +++ b/com32/lua/src/Makefile @@ -1,111 +1,65 @@ ## ----------------------------------------------------------------------- ## -## Copyright 2001-2008 H. Peter Anvin - All Rights Reserved +## Copyright 2001-2009 H. Peter Anvin - All Rights Reserved +## Copyright 2009-2010 Intel Corporation; author: H. Peter Anvin ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by -## the Free Software Foundation, Inc., 53 Temple Place Ste 330, -## Boston MA 02111-1307, USA; either version 2 of the License, or +## the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, +## Boston MA 02110-1301, USA; either version 2 of the License, or ## (at your option) any later version; incorporated herein by reference. ## ## ----------------------------------------------------------------------- ## -## samples for syslinux users +## Lua Makefile ## -TMPFILE = $(shell mktemp /tmp/gcc_ok.XXXXXX) -CC = gcc - -gcc_ok = $(shell tmpf=$(TMPFILE); if $(CC) $(1) -c -x c /dev/null -o $$tmpf 2>/dev/null; \ - then echo $(1); else echo $(2); fi; rm -f $$tmpf) - -M32 := $(call gcc_ok,-m32,) $(call gcc_ok,-fno-stack-protector,) - -LD = ld -m elf_i386 -AR = ar -NASM = nasm -NASMOPT = -O9999 -RANLIB = ranlib -CFLAGS = $(M32) -mregparm=3 -DREGPARM=3 -W -Wall -march=i386 -Os \ - -fomit-frame-pointer -D__COM32__ \ - -nostdinc -iwithprefix include \ - -I../../libutil/include -I../../include \ - -I../../gplinclude \ - -Wp,-MT,$@,-MD,$(dir $@).$(notdir $@).d -LNXCFLAGS = -W -Wall -O -g -I../../libutil/include -LNXSFLAGS = -g -LNXLDFLAGS = -g -SFLAGS = -D__COM32__ -march=i386 -LDFLAGS = -T ../../lib/com32.ld -OBJCOPY = objcopy -LIBGCC := $(shell $(CC) --print-libgcc) -LIBS = liblua.a ../../libutil/libutil_com.a \ - ../../gpllib/libcom32gpl.a \ - ../../lib/libcom32.a $(LIBGCC) -LNXLIBS = ../../libutil/libutil_lnx.a - -.SUFFIXES: .lss .c .o .elf .c32 .lnx +topdir = ../../.. +include ../../MCONFIG + +LIBS = ../../lib/libcom32.a $(LIBGCC) +LNXLIBS = + +MODULES = lua.c32 +TESTFILES = + +OBJS = lua.o + +LIBLUA = liblua.a LIBLUA_OBJS := lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o LIBLUA_OBJS += lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o LIBLUA_OBJS += lstate.o lstring.o ltable.o ltm.o lvm.o lzio.o lundump.o LIBLUA_OBJS += syslinux.o -LIBLUA_OBJS += lauxlib.o lbaselib.o ldblib.o ltablib.o \ - lstrlib.o loadlib.o linit.o +LIBLUA_OBJS += lauxlib.o lbaselib.o ldblib.o ltablib.o +LIBLUA_OBJS += lstrlib.o loadlib.o linit.o LIBLUA_OBJS += liolib.o LIBLUA_OBJS += dmi.o CFLAGS += -DLUA_ANSI -all: liblua.a lua.c32 +all: $(MODULES) $(TESTFILES) -liblua.a: $(LIBLUA_OBJS) +$(LIBLUA) : $(LIBLUA_OBJS) + rm -f $@ $(AR) cq $@ $^ $(RANLIB) $@ -lua.elf: lua.o liblua.a - $(LD) --emit-relocs $(LDFLAGS) -o $@ lua.o $(LIBS) $(LNXLIBS) - - -.PRECIOUS: %.o -%.o: %.S - $(CC) $(SFLAGS) -c -o $@ $< - -.PRECIOUS: %.o -%.o: %.c - $(CC) $(CFLAGS) -c -o $@ $< - -.PRECIOUS: %.elf -%.elf: %.o $(LIBS) +lua.elf : $(OBJS) $(LIBLUA) $(LIBS) $(C_LIBS) $(LD) $(LDFLAGS) -o $@ $^ -.PRECIOUS: %.lo -%.lo: %.S - $(CC) $(LNXSFLAGS) -c -o $@ $< - -.PRECIOUS: %.lo -%.lo: %.c - $(CC) $(LNXCFLAGS) -c -o $@ $< - -.PRECIOUS: %.lnx -%.lnx: %.lo $(LNXLIBS) - $(CC) $(LNXLDFLAGS) -o $@ $^ - -%.c32: %.elf - $(OBJCOPY) -O binary $< $@ - ../../tools/relocs $< >> $@ || ( rm -f $@ ; false ) - tidy dist: - rm -f *.o *.lo *.a *.lst *.elf .*.d + rm -f *.o *.lo *.a *.lst *.elf .*.d *.tmp clean: tidy - rm -f *.lss *.c32 *.lnx *.com + rm -f *.lnx spotless: clean + rm -f *.lss *.c32 *.com rm -f *~ \#* -install: # Don't install samples +install: -include .*.d -- cgit v1.2.1