2016-10-11 16:50:51 +08:00
|
|
|
# Makefile for Cstool of Capstone Disassembly Engine
|
2016-10-10 15:16:56 +08:00
|
|
|
|
2016-10-10 22:54:16 +08:00
|
|
|
include ../functions.mk
|
|
|
|
|
2016-10-14 17:29:56 +08:00
|
|
|
.PHONY: clean all
|
2016-10-10 22:54:16 +08:00
|
|
|
|
2016-10-10 23:25:21 +08:00
|
|
|
LIBNAME = capstone
|
|
|
|
|
2016-10-10 23:07:39 +08:00
|
|
|
CFLAGS = -I../include
|
|
|
|
LDFLAGS = -O3 -Wall -L.. -l$(LIBNAME)
|
|
|
|
|
2016-10-14 17:29:56 +08:00
|
|
|
TARGET = cstool
|
|
|
|
SOURCES := $(wildcard *.c)
|
|
|
|
OBJECTS := $(SOURCES:.c=.o)
|
|
|
|
|
2017-05-25 23:10:19 +08:00
|
|
|
AR_EXT = a
|
|
|
|
|
|
|
|
IS_CYGWIN := $(shell $(CC) -dumpmachine 2>/dev/null | grep -i cygwin | wc -l)
|
|
|
|
ifeq ($(IS_CYGWIN),1)
|
|
|
|
AR_EXT = lib
|
|
|
|
else
|
|
|
|
IS_MINGW := $(shell $(CC) --version 2>/dev/null | grep -i mingw | wc -l)
|
|
|
|
ifeq ($(IS_MINGW),1)
|
|
|
|
AR_EXT = lib
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2016-10-14 17:29:56 +08:00
|
|
|
all: $(TARGET)
|
|
|
|
|
2017-05-25 23:10:19 +08:00
|
|
|
$(TARGET): ../libcapstone.$(AR_EXT) $(OBJECTS)
|
2016-10-10 22:54:16 +08:00
|
|
|
ifeq ($(V),0)
|
|
|
|
$(call log,LINK,$@)
|
2016-10-14 17:29:56 +08:00
|
|
|
@${CC} $(OBJECTS) $(LDFLAGS) -o $@
|
2016-10-10 22:54:16 +08:00
|
|
|
else
|
2016-10-14 17:29:56 +08:00
|
|
|
${CC} $(OBJECTS) $(LDFLAGS) -o $@
|
2016-10-10 22:54:16 +08:00
|
|
|
endif
|
|
|
|
|
|
|
|
clean:
|
2016-11-08 10:56:18 +08:00
|
|
|
${RM} -rf *.o $(TARGET)
|
2016-10-10 15:16:56 +08:00
|
|
|
|
|
|
|
%.o: %.c
|
2016-10-10 22:54:16 +08:00
|
|
|
ifeq ($(V),0)
|
|
|
|
$(call log,CC,$@)
|
2016-10-10 23:07:39 +08:00
|
|
|
@${CC} $(CFLAGS) -c $< -o $@
|
2016-10-10 22:54:16 +08:00
|
|
|
else
|
2016-10-10 23:07:39 +08:00
|
|
|
${CC} $(CFLAGS) -c $< -o $@
|
2016-10-10 22:54:16 +08:00
|
|
|
endif
|