aboutsummaryrefslogtreecommitdiffstats
path: root/capstone/cstool/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'capstone/cstool/Makefile')
-rw-r--r--capstone/cstool/Makefile48
1 files changed, 48 insertions, 0 deletions
diff --git a/capstone/cstool/Makefile b/capstone/cstool/Makefile
new file mode 100644
index 000000000..f709d3a79
--- /dev/null
+++ b/capstone/cstool/Makefile
@@ -0,0 +1,48 @@
+# Makefile for Cstool of Capstone Disassembly Engine
+
+include ../functions.mk
+
+.PHONY: clean all
+
+LIBNAME = capstone
+
+CFLAGS += -I../include -I.
+LDFLAGS += -O3 -Wall -L.. -l$(LIBNAME)
+
+TARGET = cstool
+SOURCES := $(wildcard *.c)
+OBJECTS := $(SOURCES:.c=.o)
+
+LIBCAPSTONE = libcapstone.a
+
+IS_CYGWIN := $(shell $(CC) -dumpmachine 2>/dev/null | grep -i cygwin | wc -l)
+ifeq ($(IS_CYGWIN),1)
+LIBCAPSTONE = capstone.lib
+else
+IS_MINGW := $(shell $(CC) --version 2>/dev/null | grep -i "\(mingw\|MSYS\)" | wc -l)
+ifeq ($(IS_MINGW),1)
+LIBCAPSTONE = capstone.lib
+endif
+endif
+
+all: $(TARGET)
+
+$(TARGET): ../$(LIBCAPSTONE) $(OBJECTS)
+ifeq ($(V), 0)
+ $(call log,LINK,$@)
+ @${CC} $(OBJECTS) $(LDFLAGS) -o $@
+else
+ ${CC} $(OBJECTS) $(LDFLAGS) -o $@
+endif
+
+clean:
+ ${RM} -rf *.o $(TARGET)
+ ${RM} -f *.d
+
+%.o: %.c
+ifeq ($(V), 0)
+ $(call log,CC,$@)
+ @${CC} $(CFLAGS) -c $< -o $@
+else
+ ${CC} $(CFLAGS) -c $< -o $@
+endif