123 lines
3.4 KiB
Makefile
123 lines
3.4 KiB
Makefile
TARGETS = libasm.a libasm.so.0.0 libasm.so.0 libasm.so
|
|
PREFIX = /usr/local
|
|
DESTDIR =
|
|
LIBDIR = $(PREFIX)/lib
|
|
CC ?= cc
|
|
CPPFLAGSF= -I ../include -DSTANDALONE
|
|
CPPFLAGS?=
|
|
CFLAGSF = -W -fPIC
|
|
CFLAGS = -Wall -g -O2
|
|
AR ?= ar
|
|
RANLIB ?= ranlib
|
|
CCSHARED?= $(CC) -shared
|
|
RM ?= rm -f
|
|
LN ?= ln -f
|
|
MKDIR ?= mkdir -p
|
|
INSTALL ?= install
|
|
|
|
|
|
all: $(TARGETS)
|
|
|
|
libasm_OBJS = arch.o arch/amd64.o arch/arm.o arch/armeb.o arch/armel.o arch/dalvik.o arch/i386.o arch/i386_real.o arch/i486.o arch/i586.o arch/i686.o arch/java.o arch/mips.o arch/mipseb.o arch/mipsel.o arch/sparc.o arch/sparc64.o arch/yasep.o arch/yasep16.o arch/yasep32.o format.o format/dex.o format/elf.o format/flat.o format/java.o format/pe.o
|
|
libasm_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS) `pkg-config --cflags cpp`
|
|
libasm_LDFLAGS = $(LDFLAGSF) $(LDFLAGS) ../src/asm.o ../src/code.o ../src/parser.o ../src/token.o `pkg-config --libs cpp`
|
|
|
|
libasm.a: $(libasm_OBJS)
|
|
$(AR) -rc libasm.a $(libasm_OBJS)
|
|
$(RANLIB) libasm.a
|
|
|
|
libasm.so.0.0 libasm.so.0 libasm.so: $(libasm_OBJS)
|
|
$(CCSHARED) -o libasm.so.0.0 -Wl,-soname,libasm.so.0 $(libasm_OBJS) $(libasm_LDFLAGS)
|
|
$(LN) -s -- libasm.so.0.0 libasm.so.0
|
|
$(LN) -s -- libasm.so.0.0 libasm.so
|
|
|
|
arch.o: arch.c ../src/arch.c
|
|
$(CC) $(libasm_CFLAGS) -c arch.c
|
|
|
|
arch/amd64.o: arch/amd64.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/amd64.o -c arch/amd64.c
|
|
|
|
arch/arm.o: arch/arm.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/arm.o -c arch/arm.c
|
|
|
|
arch/armeb.o: arch/armeb.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/armeb.o -c arch/armeb.c
|
|
|
|
arch/armel.o: arch/armel.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/armel.o -c arch/armel.c
|
|
|
|
arch/dalvik.o: arch/dalvik.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/dalvik.o -c arch/dalvik.c
|
|
|
|
arch/i386.o: arch/i386.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/i386.o -c arch/i386.c
|
|
|
|
arch/i386_real.o: arch/i386_real.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/i386_real.o -c arch/i386_real.c
|
|
|
|
arch/i486.o: arch/i486.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/i486.o -c arch/i486.c
|
|
|
|
arch/i586.o: arch/i586.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/i586.o -c arch/i586.c
|
|
|
|
arch/i686.o: arch/i686.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/i686.o -c arch/i686.c
|
|
|
|
arch/java.o: arch/java.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/java.o -c arch/java.c
|
|
|
|
arch/mips.o: arch/mips.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/mips.o -c arch/mips.c
|
|
|
|
arch/mipseb.o: arch/mipseb.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/mipseb.o -c arch/mipseb.c
|
|
|
|
arch/mipsel.o: arch/mipsel.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/mipsel.o -c arch/mipsel.c
|
|
|
|
arch/sparc.o: arch/sparc.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/sparc.o -c arch/sparc.c
|
|
|
|
arch/sparc64.o: arch/sparc64.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/sparc64.o -c arch/sparc64.c
|
|
|
|
arch/yasep.o: arch/yasep.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/yasep.o -c arch/yasep.c
|
|
|
|
arch/yasep16.o: arch/yasep16.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/yasep16.o -c arch/yasep16.c
|
|
|
|
arch/yasep32.o: arch/yasep32.c
|
|
$(CC) $(libasm_CFLAGS) -o arch/yasep32.o -c arch/yasep32.c
|
|
|
|
format.o: format.c ../src/format.c
|
|
$(CC) $(libasm_CFLAGS) -c format.c
|
|
|
|
format/dex.o: format/dex.c
|
|
$(CC) $(libasm_CFLAGS) -o format/dex.o -c format/dex.c
|
|
|
|
format/elf.o: format/elf.c
|
|
$(CC) $(libasm_CFLAGS) -o format/elf.o -c format/elf.c
|
|
|
|
format/flat.o: format/flat.c
|
|
$(CC) $(libasm_CFLAGS) -o format/flat.o -c format/flat.c
|
|
|
|
format/java.o: format/java.c
|
|
$(CC) $(libasm_CFLAGS) -o format/java.o -c format/java.c
|
|
|
|
format/pe.o: format/pe.c
|
|
$(CC) $(libasm_CFLAGS) -o format/pe.o -c format/pe.c
|
|
|
|
clean:
|
|
$(RM) -- $(libasm_OBJS)
|
|
|
|
distclean: clean
|
|
$(RM) -- $(TARGETS)
|
|
|
|
install: $(TARGETS)
|
|
|
|
uninstall:
|
|
|
|
.PHONY: all clean distclean install uninstall
|