Make cleanup (#666)
* make cleanup * Update .travis.yml Update eflags_nosync.c Update sigill2.c Update ro_mem_test.c Update ro_mem_test.c Update nr_mem_test.c Update mem_fuzz.c Update mem_double_unmap.c Update emu_stop_in_hook_overrun.c Update eflags_nosync.c remove unused Update Makefile Update Makefile Update Makefile Update Makefile Update Makefile Update Makefile Update Makefile Update mem_64_c.c Update mem_64_c.c Update Makefile Update Makefile Update Makefile Update Makefile Update Makefile Update Makefile Update .travis.yml try android ndk build Update unicorn.py Update unicorn.py Update Makefile Update unicorn.py Update unicorn.py remove an untrue comment if a dll/so/dylib gets loaded at runtime is dependent on many different factors, primarily the LD/DYLD paths. Those do not always include the current working directory Update Makefile Update .appveyor.yml Update .travis.yml Update Makefile Update .appveyor.yml Fix bad sample * Update Makefile * Update Makefile * Update install-cmocka-linux.sh * remove verbose option from tar * add upgrade to pacman for cmake * pacman double update, needed to get new packages * enable cmocka unit testing * rejigger commands to fail on any step should get fails in msys builds for cmocka * fix quote * make cmocka in cygwin only * add msys cache
This commit is contained in:
committed by
Nguyen Anh Quynh
parent
b7da7eb8bc
commit
75d90aff52
111
Makefile
111
Makefile
@@ -10,8 +10,7 @@ include pkgconfig.mk # package version
|
||||
LIBNAME = unicorn
|
||||
UNAME_S := $(shell uname -s)
|
||||
|
||||
GENOBJ = $(shell find qemu/$(1) -name "*.o" 2>/dev/null) $(wildcard qemu/util/*.o) $(wildcard qemu/*.o) $(wildcard qemu/qom/*.o)\
|
||||
$(wildcard qemu/hw/core/*.o) $(wildcard qemu/qapi/*.o) $(wildcard qemu/qobject/*.o)
|
||||
GENOBJ = $(shell find qemu/$(1) -name "*.o" 2>/dev/null)
|
||||
|
||||
ifneq (,$(findstring x86,$(UNICORN_ARCHS)))
|
||||
UC_TARGET_OBJ += $(call GENOBJ,x86_64-softmmu)
|
||||
@@ -63,6 +62,7 @@ ifeq ($(UNICORN_DEBUG),yes)
|
||||
CFLAGS += -g
|
||||
else
|
||||
CFLAGS += -O3
|
||||
UNICORN_QEMU_FLAGS += --disable-debug-info
|
||||
endif
|
||||
|
||||
ifeq ($(UNICORN_ASAN),yes)
|
||||
@@ -97,9 +97,6 @@ PKG_VERSION = $(PKG_MAJOR).$(PKG_MINOR).$(PKG_EXTRA)
|
||||
endif
|
||||
|
||||
API_MAJOR=$(shell echo `grep -e UC_API_MAJOR include/unicorn/unicorn.h | grep -v = | awk '{print $$3}'` | awk '{print $$1}')
|
||||
VERSION_EXT =
|
||||
|
||||
BIN_EXT =
|
||||
|
||||
# Apple?
|
||||
ifeq ($(UNAME_S),Darwin)
|
||||
@@ -141,27 +138,25 @@ endif
|
||||
|
||||
ifeq ($(UNICORN_SHARED),yes)
|
||||
ifneq ($(filter MINGW%,$(UNAME_S)),)
|
||||
LIBRARY = $(BLDIR)/$(LIBNAME).$(EXT)
|
||||
LIBRARY = $(LIBNAME).$(EXT)
|
||||
else ifneq ($(filter CYGWIN%,$(UNAME_S)),)
|
||||
LIBRARY = $(BLDIR)/cyg$(LIBNAME).$(EXT)
|
||||
LIBRARY_DLLA = $(BLDIR)/lib$(LIBNAME).$(EXT).$(AR_EXT)
|
||||
LIBRARY = cyg$(LIBNAME).$(EXT)
|
||||
LIBRARY_DLLA = lib$(LIBNAME).$(EXT).$(AR_EXT)
|
||||
$(LIBNAME)_LDFLAGS += -Wl,--out-implib=$(LIBRARY_DLLA)
|
||||
$(LIBNAME)_LDFLAGS += -lssp
|
||||
# Linux, Darwin
|
||||
else
|
||||
LIBRARY = $(BLDIR)/lib$(LIBNAME).$(VERSION_EXT)
|
||||
LIBRARY_SYMLINK = $(BLDIR)/lib$(LIBNAME).$(EXT)
|
||||
LIBRARY = lib$(LIBNAME).$(VERSION_EXT)
|
||||
LIBRARY_SYMLINK = lib$(LIBNAME).$(EXT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(UNICORN_STATIC),yes)
|
||||
ifneq ($(filter MINGW%,$(UNAME_S)),)
|
||||
ARCHIVE = $(BLDIR)/$(LIBNAME).$(AR_EXT)
|
||||
else ifneq ($(filter CYGWIN%,$(UNAME_S)),)
|
||||
ARCHIVE = $(BLDIR)/lib$(LIBNAME).$(AR_EXT)
|
||||
# Linux, Darwin
|
||||
ARCHIVE = $(LIBNAME).$(AR_EXT)
|
||||
# Cygwin, Linux, Darwin
|
||||
else
|
||||
ARCHIVE = $(BLDIR)/lib$(LIBNAME).$(AR_EXT)
|
||||
ARCHIVE = lib$(LIBNAME).$(AR_EXT)
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -171,8 +166,6 @@ INSTALL_LIB ?= $(INSTALL_BIN) -m0755
|
||||
PKGCFGF = $(LIBNAME).pc
|
||||
PREFIX ?= /usr
|
||||
DESTDIR ?=
|
||||
BLDIR = .
|
||||
OBJDIR = .
|
||||
|
||||
LIBDIRARCH ?= lib
|
||||
# Uncomment the below line to installs x86_64 libs to lib64/ directory.
|
||||
@@ -202,77 +195,39 @@ else
|
||||
PKGCFGDIR ?= $(LIBDATADIR)/pkgconfig
|
||||
endif
|
||||
|
||||
all: compile_lib
|
||||
ifeq (,$(findstring yes,$(UNICORN_BUILD_CORE_ONLY)))
|
||||
ifeq ($(UNICORN_SHARED),yes)
|
||||
ifeq ($(V),0)
|
||||
@$(INSTALL_LIB) $(LIBRARY) $(BLDIR)/samples/
|
||||
else
|
||||
$(INSTALL_LIB) $(LIBRARY) $(BLDIR)/samples/
|
||||
endif
|
||||
endif
|
||||
$(LIBNAME)_LDFLAGS += $(GLIB) -lm
|
||||
|
||||
@cd samples && $(MAKE)
|
||||
endif
|
||||
|
||||
config:
|
||||
if [ "$(UNICORN_ARCHS)" != "`cat config.log`" ]; then $(MAKE) clean; fi
|
||||
.PHONY: all
|
||||
all: unicorn
|
||||
$(MAKE) -C samples
|
||||
|
||||
qemu/config-host.h-timestamp:
|
||||
ifeq ($(UNICORN_DEBUG),yes)
|
||||
cd qemu && \
|
||||
./configure --cc="${CC}" --extra-cflags="$(UNICORN_CFLAGS)" --target-list="$(UNICORN_TARGETS)" ${UNICORN_QEMU_FLAGS}
|
||||
printf "$(UNICORN_ARCHS)" > config.log
|
||||
else
|
||||
cd qemu && \
|
||||
./configure --cc="${CC}" --disable-debug-info --extra-cflags="$(UNICORN_CFLAGS)" --target-list="$(UNICORN_TARGETS)" ${UNICORN_QEMU_FLAGS}
|
||||
printf "$(UNICORN_ARCHS)" > config.log
|
||||
endif
|
||||
|
||||
compile_lib: config qemu/config-host.h-timestamp
|
||||
cd qemu && $(MAKE) -j 4
|
||||
$(MAKE) unicorn
|
||||
$(MAKE) -C qemu -j 4
|
||||
$(eval UC_TARGET_OBJ += $$(wildcard qemu/util/*.o) $$(wildcard qemu/*.o) $$(wildcard qemu/qom/*.o) $$(wildcard qemu/hw/core/*.o) $$(wildcard qemu/qapi/*.o) $$(wildcard qemu/qobject/*.o))
|
||||
|
||||
unicorn: $(LIBRARY) $(ARCHIVE)
|
||||
|
||||
$(LIBRARY): $(UC_TARGET_OBJ) uc.o list.o
|
||||
ifeq ($(UNICORN_SHARED),yes)
|
||||
ifeq ($(V),0)
|
||||
$(call log,GEN,$(LIBRARY))
|
||||
@$(CC) $(CFLAGS) -shared $^ -o $(LIBRARY) $(GLIB) -lm $($(LIBNAME)_LDFLAGS)
|
||||
else
|
||||
$(CC) $(CFLAGS) -shared $^ -o $(LIBRARY) $(GLIB) -lm $($(LIBNAME)_LDFLAGS)
|
||||
endif
|
||||
ifneq (,$(LIBRARY_SYMLINK))
|
||||
@ln -sf $(LIBRARY) $(LIBRARY_SYMLINK)
|
||||
endif
|
||||
endif
|
||||
|
||||
$(ARCHIVE): $(UC_TARGET_OBJ) uc.o list.o
|
||||
ifeq ($(UNICORN_STATIC),yes)
|
||||
ifeq ($(V),0)
|
||||
$(call log,GEN,$(ARCHIVE))
|
||||
@$(create-archive)
|
||||
else
|
||||
$(create-archive)
|
||||
endif
|
||||
endif
|
||||
$(LIBRARY): qemu/config-host.h-timestamp uc.o list.o
|
||||
$(CC) $(CFLAGS) -shared $(UC_TARGET_OBJ) uc.o list.o -o $(LIBRARY) $($(LIBNAME)_LDFLAGS)
|
||||
-ln -sf $(LIBRARY) $(LIBRARY_SYMLINK)
|
||||
|
||||
$(ARCHIVE): qemu/config-host.h-timestamp uc.o list.o
|
||||
$(AR) q $(ARCHIVE) $(UC_TARGET_OBJ) uc.o list.o
|
||||
$(RANLIB) $(ARCHIVE)
|
||||
|
||||
$(PKGCFGF):
|
||||
ifeq ($(V),0)
|
||||
$(call log,GEN,$(@:$(BLDIR)/%=%))
|
||||
@$(generate-pkgcfg)
|
||||
else
|
||||
$(generate-pkgcfg)
|
||||
endif
|
||||
|
||||
|
||||
.PHONY: test
|
||||
test: all
|
||||
$(MAKE) -C tests/unit test
|
||||
$(MAKE) -C tests/regress test
|
||||
$(MAKE) -C bindings test
|
||||
|
||||
install: compile_lib $(PKGCFGF)
|
||||
install: qemu/config-host.h-timestamp $(PKGCFGF)
|
||||
mkdir -p $(DESTDIR)$(LIBDIR)
|
||||
ifeq ($(UNICORN_SHARED),yes)
|
||||
ifneq ($(filter CYGWIN%,$(UNAME_S)),)
|
||||
@@ -302,7 +257,7 @@ else
|
||||
DIST_VERSION = $(TAG)
|
||||
endif
|
||||
|
||||
bindings: compile_lib
|
||||
bindings: qemu/config-host.h-timestamp
|
||||
$(MAKE) -C bindings build
|
||||
$(MAKE) -C bindings samples
|
||||
|
||||
@@ -311,7 +266,7 @@ dist:
|
||||
git archive --format=zip --prefix=unicorn-$(DIST_VERSION)/ $(TAG) > unicorn-$(DIST_VERSION).zip
|
||||
|
||||
|
||||
header: FORCE
|
||||
header:
|
||||
$(eval TARGETS := m68k arm aarch64 mips mipsel mips64 mips64el\
|
||||
powerpc sparc sparc64 x86_64)
|
||||
$(foreach var,$(TARGETS),\
|
||||
@@ -330,10 +285,7 @@ clean:
|
||||
$(MAKE) -C qemu clean
|
||||
rm -rf *.d *.o
|
||||
rm -rf lib$(LIBNAME)* $(LIBNAME)*.lib $(LIBNAME)*.dll cyg$(LIBNAME)*.dll
|
||||
ifeq (,$(findstring yes,$(UNICORN_BUILD_CORE_ONLY)))
|
||||
cd samples && $(MAKE) clean
|
||||
rm -f $(BLDIR)/samples/lib$(LIBNAME).$(EXT)
|
||||
endif
|
||||
$(MAKE) -C samples clean
|
||||
$(MAKE) -C tests/unit clean
|
||||
|
||||
|
||||
@@ -353,10 +305,3 @@ define log
|
||||
@printf " %-7s %s\n" "$(1)" "$(2)"
|
||||
endef
|
||||
|
||||
|
||||
define create-archive
|
||||
$(AR) q $(ARCHIVE) $^
|
||||
$(RANLIB) $(ARCHIVE)
|
||||
endef
|
||||
|
||||
FORCE:
|
||||
|
||||
Reference in New Issue
Block a user