blob: 4eb33a616a65ad83842846e7ae24a9f340d4032a [file] [log] [blame]
Nguyen Anh Quynh26ee41a2013-11-27 12:11:31 +08001# Capstone Disassembler Engine
2# By Nguyen Anh Quynh <aquynh@gmail.com>, 2013>
3
4INCDIR = ../include
5LIBDIR = ..
6
7CC = $(CROSS)gcc
8
9CFLAGS += -fPIC -O3 -Wall -I$(INCDIR) -L$(LIBDIR)
10
11LIBNAME = capstone
12
Daniel Godas-Lopez0f7c4322013-11-28 18:22:50 +000013BIN_EXT =
14
15# Cygwin?
16IS_CYGWIN := $(shell $(CC) -dumpmachine | grep -i cygwin | wc -l)
17ifeq ($(IS_CYGWIN),1)
18CFLAGS := $(CFLAGS:-fPIC=)
19BIN_EXT = .exe
20else
21# mingw?
22IS_MINGW := $(shell $(CC) --version | grep -i mingw | wc -l)
23ifeq ($(IS_MINGW),1)
24CFLAGS := $(CFLAGS:-fPIC=)
25BIN_EXT = .exe
26endif
27endif
28
29.PHONY: all clean
Nguyen Anh Quynh26ee41a2013-11-27 12:11:31 +080030
danghvua0f93bd2013-11-28 02:46:15 -060031SOURCES = test.c test_detail.c test_x86.c test_arm64.c test_arm.c test_mips.c
32OBJS = $(SOURCES:.c=.o)
Daniel Godas-Lopez0f7c4322013-11-28 18:22:50 +000033BINARY = $(SOURCES:.c=$(BIN_EXT))
pancakead3cbaf2013-11-28 04:57:51 +010034
Daniel Godas-Lopez0f7c4322013-11-28 18:22:50 +000035all: $(BINARY)
Nguyen Anh Quynh26ee41a2013-11-27 12:11:31 +080036
37clean:
Daniel Godas-Lopez92865042013-11-29 12:56:13 +000038 rm -rf $(OBJS) $(SOURCES:.c=) $(SOURCES:.c=.exe) lib$(LIBNAME).*
danghvua0f93bd2013-11-28 02:46:15 -060039
Daniel Godas-Lopez0f7c4322013-11-28 18:22:50 +000040$(BINARY): $(OBJS)
danghvua0f93bd2013-11-28 02:46:15 -060041
Daniel Godas-Lopez0f7c4322013-11-28 18:22:50 +000042%$(BIN_EXT): %.o
43 ${CC} $(CFLAGS) $< -O3 -Wall -l$(LIBNAME) -o $@
Nguyen Anh Quynh26ee41a2013-11-27 12:11:31 +080044
Daniel Godas-Lopez0f7c4322013-11-28 18:22:50 +000045%.o: %.c
Nguyen Anh Quynh26ee41a2013-11-27 12:11:31 +080046 ${CC} ${CFLAGS} -c $< -o $@