Prepare Makefile for integrating lua-5.1.1 into upx.
This commit is contained in:
+27
-2
@@ -24,6 +24,7 @@ ifeq ($(USE_GNUC),1)
|
||||
CXXFLAGS += -O2 -MMD
|
||||
##CXXFLAGS += -O0 -g -MMD
|
||||
CXXFLAGS += -Wall -W -Wcast-align -Wcast-qual -Wpointer-arith -Wwrite-strings -Werror
|
||||
##CXXFLAGS += -Wshadow
|
||||
endif
|
||||
CPPFLAGS += $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES)
|
||||
CXXLD ?= $(CXX)
|
||||
@@ -32,6 +33,9 @@ exeext ?= .out
|
||||
libext ?= .a
|
||||
objext ?= .o
|
||||
|
||||
upx_SOURCES := $(wildcard $(srcdir)/*.cpp)
|
||||
upx_OBJECTS := $(notdir $(upx_SOURCES:.cpp=$(objext)))
|
||||
|
||||
# we need UCL and zlib - you can set envvar UPX_UCLDIR
|
||||
ifneq ($(wildcard $(UPX_UCLDIR)/include/ucl/ucl.h),)
|
||||
INCLUDES += -I$(UPX_UCLDIR)/include
|
||||
@@ -43,9 +47,19 @@ ifneq ($(wildcard $(UPX_LZMADIR)/C/7zip/.),)
|
||||
DEFS += -DWITH_LZMA
|
||||
INCLUDES += -I$(UPX_LZMADIR)
|
||||
endif
|
||||
# you should set envvar UPX_LUADIR to point to your unpacked lua-5.1.1.tar.gz
|
||||
ifneq ($(wildcard $(UPX_LUADIR)/src/lua.h),)
|
||||
DEFS += -DWITH_LUA
|
||||
upx_SOURCES_LUA := $(wildcard $(UPX_LUADIR)/src/*.c)
|
||||
upx_SOURCES_LUA := $(filter-out %lua.c, $(upx_SOURCES_LUA))
|
||||
upx_SOURCES_LUA := $(filter-out %luac.c, $(upx_SOURCES_LUA))
|
||||
upx_OBJECTS_LUA := $(notdir $(upx_SOURCES_LUA:.c=$(objext)))
|
||||
upx_OBJECTS_LUA := $(addprefix lua_,$(upx_OBJECTS_LUA))
|
||||
upx_OBJECTS += $(upx_OBJECTS_LUA)
|
||||
else
|
||||
##$(error please set UPX_LUADIR)
|
||||
endif
|
||||
|
||||
upx_SOURCES := $(wildcard $(srcdir)/*.cpp)
|
||||
upx_OBJECTS := $(notdir $(upx_SOURCES:.cpp=$(objext)))
|
||||
|
||||
all: upx$(exeext)
|
||||
|
||||
@@ -57,6 +71,10 @@ upx$(exeext): $(upx_OBJECTS) $(upx_DEPENDENCIES)
|
||||
%.o : %.cpp
|
||||
$(strip $(CXX) $(call e,CPPFLAGS) $(call e,CXXFLAGS) -o $@ -c $<)
|
||||
|
||||
$(upx_OBJECTS_LUA) : lua_%.o : $(UPX_LUADIR)/src/%.c
|
||||
$(strip $(CXX) $(call e,CPPFLAGS) $(call e,CXXFLAGS) -o $@ -c $<)
|
||||
|
||||
|
||||
ifeq ($(USE_GNUC),1)
|
||||
##compress_lzma$(objext) : EXTRA_CXXFLAGS += -O3 -fomit-frame-pointer
|
||||
compress_lzma$(objext) : EXTRA_CXXFLAGS += -Wno-cast-qual
|
||||
@@ -66,6 +84,13 @@ compress_lzma$(objext) : EXTRA_CXXFLAGS += -Wno-unused
|
||||
##compress_lzma$(objext) : EXTRA_CXXFLAGS += -Wno-error
|
||||
endif
|
||||
|
||||
ifeq ($(USE_GNUC),1)
|
||||
$(upx_OBJECTS_LUA) : EXTRA_CXXFLAGS += -Wno-cast-align
|
||||
$(upx_OBJECTS_LUA) : EXTRA_CXXFLAGS += -Wno-cast-qual
|
||||
$(upx_OBJECTS_LUA) : EXTRA_CXXFLAGS += -Wno-error
|
||||
endif
|
||||
|
||||
|
||||
mostlyclean clean distclean maintainer-clean:
|
||||
rm -f *.d *.map *.o *.obj *.res upx.exe upx.out upx.ttp upx$(exeext)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user