Remove Makefiles and many related scripts
This commit is contained in:
parent
2f62fad57d
commit
cee8d470c2
481 changed files with 3 additions and 15096 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -53,6 +53,7 @@ binrz/rz-sign/rz-sign
|
|||
binrz/rz-sign/rz-sign.exe
|
||||
binrz/*/_CodeSignature/*
|
||||
build
|
||||
builddir
|
||||
build_sdb
|
||||
config-user.mk
|
||||
librz/bin/d/dll/dll
|
||||
|
|
|
|||
443
Makefile
443
Makefile
|
|
@ -1,443 +0,0 @@
|
|||
-include config-user.mk
|
||||
include global.mk
|
||||
|
||||
PREVIOUS_RELEASE=`git log --tags --simplify-by-decoration --pretty='format:%d'|head -n1|cut -d ' ' -f3 |sed -e 's,),,'`
|
||||
|
||||
B=$(DESTDIR)$(BINDIR)
|
||||
L=$(DESTDIR)$(LIBDIR)
|
||||
MESON?=meson
|
||||
PYTHON?=python
|
||||
RZ_TEST=test
|
||||
RZ_BINS=$(shell cd binrz ; echo rizin rz-*)
|
||||
ifdef SOURCE_DATE_EPOCH
|
||||
BUILDSEC=$(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "+__%H:%M:%S" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "+__%H:%M:%S" 2>/dev/null || date -u "+__%H:%M:%S")
|
||||
else
|
||||
BUILDSEC=$(shell date "+__%H:%M:%S")
|
||||
endif
|
||||
DATADIRS=librz/cons/d librz/flag/d librz/bin/d librz/asm/d librz/syscall/d librz/magic/d librz/analysis/d
|
||||
USE_ZIP=YES
|
||||
ZIP=zip
|
||||
|
||||
RZ_VC=$(shell git rev-list --all --count 2>/dev/null)
|
||||
ifeq ($(RZ_VC),)
|
||||
# release
|
||||
RZ_VC=0
|
||||
endif
|
||||
|
||||
STRIP?=strip
|
||||
ifneq ($(shell xz --help 2>/dev/null | grep improve),)
|
||||
TAR=tar -cvf
|
||||
TAREXT=tar.xz
|
||||
CZ=xz -f
|
||||
else
|
||||
TAR=bsdtar cvf
|
||||
TAREXT=tar.gz
|
||||
CZ=gzip -f
|
||||
endif
|
||||
PWD=$(shell pwd)
|
||||
|
||||
ifeq ($(BUILD_OS),windows)
|
||||
ifeq ($(OSTYPE),mingw32)
|
||||
ifneq (,$(findstring mingw32-make,$(MAKE)))
|
||||
ifneq ($(APPVEYOR),True)
|
||||
LC_ALL=C
|
||||
export LC_ALL
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
all: plugins.cfg librz/include/rz_version.h
|
||||
${MAKE} -C shlr sdbs
|
||||
${MAKE} -C shlr/zip
|
||||
${MAKE} -C librz/util
|
||||
${MAKE} -C librz/socket
|
||||
${MAKE} -C shlr
|
||||
${MAKE} -C librz
|
||||
${MAKE} -C binrz
|
||||
|
||||
#.PHONY: librz/include/rz_version.h
|
||||
GIT_TAP=$(shell git tag -l --sort=refname | grep -e '^\d.\d.\d$' | tail -n1 || echo $(VERSION))
|
||||
GIT_TIP=$(shell git rev-parse HEAD 2>/dev/null || echo HEAD)
|
||||
RZ_VER=$(shell ./configure -qV)
|
||||
ifdef SOURCE_DATE_EPOCH
|
||||
GIT_NOW=$(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "+%Y-%m-%d" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "+%Y-%m-%d" 2>/dev/null || date -u "+%Y-%m-%d")
|
||||
else
|
||||
GIT_NOW=$(shell date "+%Y-%m-%d")
|
||||
endif
|
||||
|
||||
librz/include/rz_version.h:
|
||||
@echo Generating rz_version.h file
|
||||
@echo '#ifndef RZ_VERSION_H' > $@.tmp
|
||||
@echo '#define RZ_VERSION_H 1' >> $@.tmp
|
||||
@echo '#define RZ_VERSION_COMMIT $(RZ_VC)' >> $@.tmp
|
||||
@echo '#define RZ_VERSION "$(RZ_VERSION)"' >> $@.tmp
|
||||
@echo '#define RZ_VERSION_MAJOR $(RZ_VERSION_MAJOR)' >> $@.tmp
|
||||
@echo '#define RZ_VERSION_MINOR $(RZ_VERSION_MINOR)' >> $@.tmp
|
||||
@echo '#define RZ_VERSION_PATCH $(RZ_VERSION_PATCH)' >> $@.tmp
|
||||
@echo '#define RZ_VERSION_NUMBER $(RZ_VERSION_NUMBER)' >> $@.tmp
|
||||
@echo '#define RZ_GITTAP "$(GIT_TAP)"' >> $@.tmp
|
||||
@echo '#define RZ_GITTIP "$(GIT_TIP)"' >> $@.tmp
|
||||
@echo '#define RZ_BIRTH "$(GIT_NOW)$(BUILDSEC)"' >> $@.tmp
|
||||
@echo '#endif' >> $@.tmp
|
||||
@mv -f $@.tmp $@
|
||||
@rm -f $@.tmp
|
||||
|
||||
plugins.cfg:
|
||||
@if [ ! -e config-user.mk ]; then echo ; \
|
||||
echo " Please, run ./configure first" ; echo ; exit 1 ; fi
|
||||
$(SHELL) ./configure-plugins
|
||||
|
||||
w32:
|
||||
sys/mingw32.sh
|
||||
|
||||
depgraph.png:
|
||||
cd librz ; perl depgraph.pl dot | dot -Tpng -o../depgraph.png
|
||||
|
||||
android:
|
||||
@if [ -z "$(NDK_ARCH)" ]; then echo "Set NDK_ARCH=[arm|arm64|mips|x86]" ; false; fi
|
||||
sys/android-${NDK_ARCH}.sh
|
||||
|
||||
w32dist:
|
||||
${MAKE} windist WINBITS=w32
|
||||
|
||||
w64dist:
|
||||
${MAKE} windist WINBITS=w64
|
||||
|
||||
WINDIST=${WINBITS}dist
|
||||
ZIPNAME?=rizin-${WINBITS}-${VERSION}.zip
|
||||
|
||||
C=$(shell printf "\033[32m")
|
||||
R=$(shell printf "\033[0m")
|
||||
windist:
|
||||
@echo "${C}[WINDIST] Installing binaries and libraries${R}"
|
||||
[ -n "${WINBITS}" ] || exit 1
|
||||
rm -rf "rizin-${WINBITS}-${VERSION}" "${WINDIST}"
|
||||
mkdir "${WINDIST}"
|
||||
for FILE in `find librz | grep -e dll$$`; do cp "$$FILE" "${WINDIST}" ; done
|
||||
for FILE in `find binrz | grep -e exe$$`; do cp "$$FILE" "${WINDIST}" ; done
|
||||
rm -f "${WINDIST}/plugin.dll"
|
||||
@echo "${C}[WINDIST] Picking plugins from libraries${R}"
|
||||
mkdir -p "${WINDIST}/libs"
|
||||
mv "${WINDIST}/"lib*.dll "${WINDIST}/libs"
|
||||
mkdir -p "${WINDIST}/plugins"
|
||||
mv ${WINDIST}/*.dll "${WINDIST}/plugins"
|
||||
mv ${WINDIST}/libs/* "${WINDIST}"
|
||||
@echo "${C}[WINDIST] Do not include plugins for now${R}"
|
||||
rm -rf "${WINDIST}/libs"
|
||||
rm -rf ${WINDIST}/plugins/*
|
||||
@echo "${C}[WINDIST] Copying web interface${R}"
|
||||
mkdir -p "${WINDIST}/share/rizin/${VERSION}/magic"
|
||||
cp -f librz/magic/d/default/* "${WINDIST}/share/rizin/${VERSION}/magic"
|
||||
mkdir -p "${WINDIST}/share/rizin/${VERSION}/syscall"
|
||||
cp -f librz/syscall/d/*.sdb "${WINDIST}/share/rizin/${VERSION}/syscall"
|
||||
mkdir -p "${WINDIST}/share/rizin/${VERSION}/sysregs"
|
||||
cp -f librz/sysregs/d/*.sdb "${WINDIST}/share/rizin/${VERSION}/sysregs"
|
||||
mkdir -p "${WINDIST}/share/rizin/${VERSION}/fcnsign"
|
||||
cp -f librz/analysis/d/*.sdb "${WINDIST}/share/rizin/${VERSION}/fcnsign"
|
||||
mkdir -p "${WINDIST}/share/rizin/${VERSION}/opcodes"
|
||||
cp -f librz/asm/d/*.sdb "${WINDIST}/share/rizin/${VERSION}/opcodes"
|
||||
mkdir -p "${WINDIST}/share/rizin/${VERSION}/flag"
|
||||
cp -f librz/flag/d/*.rz "${WINDIST}/share/rizin/${VERSION}/flag"
|
||||
mkdir -p "${WINDIST}/share/doc/rizin"
|
||||
mkdir -p "${WINDIST}/include/librz/sdb"
|
||||
mkdir -p "${WINDIST}/include/librz/rz_util"
|
||||
@echo "${C}[WINDIST] Copying development files${R}"
|
||||
cp -f shlr/sdb/src/*.h "${WINDIST}/include/librz/sdb/"
|
||||
cp -f librz/include/rz_util/*.h "${WINDIST}/include/librz/rz_util/"
|
||||
cp -f librz/include/*.h "${WINDIST}/include/librz"
|
||||
#mkdir -p "${WINDIST}/include/librz/sflib"
|
||||
@cp -f doc/fortunes.* "${WINDIST}/share/doc/rizin"
|
||||
@mkdir -p "${WINDIST}/share/rizin/${VERSION}/format/dll"
|
||||
@cp -f librz/bin/d/elf32 "${WINDIST}/share/rizin/${VERSION}/format"
|
||||
@cp -f librz/bin/d/elf64 "${WINDIST}/share/rizin/${VERSION}/format"
|
||||
@cp -f librz/bin/d/elf_enums "${WINDIST}/share/rizin/${VERSION}/format"
|
||||
@cp -f librz/bin/d/pe32 "${WINDIST}/share/rizin/${VERSION}/format"
|
||||
@cp -f librz/bin/d/trx "${WINDIST}/share/rizin/${VERSION}/format"
|
||||
@cp -f librz/bin/d/dll/*.sdb "${WINDIST}/share/rizin/${VERSION}/format/dll"
|
||||
@mkdir -p "${WINDIST}/share/rizin/${VERSION}/cons"
|
||||
@cp -PRpf librz/cons/d/* "${WINDIST}/share/rizin/${VERSION}/cons"
|
||||
@mkdir -p "${WINDIST}/share/rizin/${VERSION}/hud"
|
||||
@cp -f doc/hud "${WINDIST}/share/rizin/${VERSION}/hud/main"
|
||||
@mv "${WINDIST}" "rizin-${WINBITS}-${VERSION}"
|
||||
@rm -f "rizin-${WINBITS}-${VERSION}.zip"
|
||||
ifneq ($(USE_ZIP),NO)
|
||||
$(ZIP) -r "${ZIPNAME}" "rizin-${WINBITS}-${VERSION}"
|
||||
endif
|
||||
|
||||
clean:
|
||||
rm -f librz/librz.a librz/librz.dylib librz/include/rz_version.h
|
||||
rm -rf librz/.librz
|
||||
for DIR in shlr librz binrz ; do $(MAKE) -C "$$DIR" clean ; done
|
||||
-rm -f `find . -type f -name '*.d'`
|
||||
rm -f `find . -type f -name '*.o'`
|
||||
rm -f config-user.mk plugins.cfg librz/config.h
|
||||
rm -f librz/include/rz_userconf.h librz/config.mk
|
||||
rm -f pkgcfg/*.pc
|
||||
|
||||
distclean mrproper: clean
|
||||
rm -f `find . -type f -iname '*.d'`
|
||||
|
||||
pkgcfg:
|
||||
cd librz && ${MAKE} pkgcfg
|
||||
|
||||
install-man:
|
||||
mkdir -p "${DESTDIR}${MANDIR}/man1"
|
||||
mkdir -p "${DESTDIR}${MANDIR}/man7"
|
||||
for FILE in man/*.1 ; do ${INSTALL_MAN} "$$FILE" "${DESTDIR}${MANDIR}/man1" ; done
|
||||
cd "${DESTDIR}${MANDIR}/man1"
|
||||
for FILE in man/*.7 ; do ${INSTALL_MAN} "$$FILE" "${DESTDIR}${MANDIR}/man7" ; done
|
||||
|
||||
install-man-symlink:
|
||||
mkdir -p "${DESTDIR}${MANDIR}/man1"
|
||||
mkdir -p "${DESTDIR}${MANDIR}/man7"
|
||||
for FILE in $(shell cd man && ls *.1) ; do \
|
||||
ln -fs "${PWD}/man/$$FILE" "${DESTDIR}${MANDIR}/man1/$$FILE" ; done
|
||||
cd "${DESTDIR}${MANDIR}/man1" && ln -fs rizin.1
|
||||
for FILE in *.7 ; do \
|
||||
ln -fs "${PWD}/man/$$FILE" "${DESTDIR}${MANDIR}/man7/$$FILE" ; done
|
||||
|
||||
install-doc:
|
||||
mkdir -p "${DESTDIR}${DOCDIR}"
|
||||
${INSTALL_DIR} "${DESTDIR}${DOCDIR}"
|
||||
@echo ${DOCDIR}
|
||||
for FILE in doc/* ; do \
|
||||
if [ -f $$FILE ]; then ${INSTALL_DATA} $$FILE "${DESTDIR}${DOCDIR}" || true ; fi; \
|
||||
done
|
||||
|
||||
install-doc-symlink:
|
||||
mkdir -p "${DESTDIR}${DOCDIR}"
|
||||
${INSTALL_DIR} "${DESTDIR}${DOCDIR}"
|
||||
for FILE in $(shell cd doc ; ls) ; do \
|
||||
ln -fs "$(PWD)/doc/$$FILE" "${DESTDIR}${DOCDIR}" ; done
|
||||
|
||||
install love: install-doc install-man install-pkgconfig
|
||||
cd librz && ${MAKE} install
|
||||
cd binrz && ${MAKE} install
|
||||
cd shlr && ${MAKE} install
|
||||
for DIR in ${DATADIRS} ; do $(MAKE) -C "$$DIR" install ; done
|
||||
cd "$(DESTDIR)$(LIBDIR)/rizin/" ;\
|
||||
rm -f last ; ln -fs $(VERSION) last
|
||||
cd "$(DESTDIR)$(DATADIR)/rizin/" ;\
|
||||
rm -f last ; ln -fs $(VERSION) last
|
||||
rm -rf "${DESTDIR}${DATADIR}/rizin/${VERSION}/hud"
|
||||
mkdir -p "${DESTDIR}${DATADIR}/rizin/${VERSION}/hud"
|
||||
mkdir -p "${DESTDIR}${BINDIR}"
|
||||
#${INSTALL_SCRIPT} "${PWD}/sys/indent.sh" "${DESTDIR}${BINDIR}/rz-indent"
|
||||
#${INSTALL_SCRIPT} "${PWD}/sys/r1-docker.sh" "${DESTDIR}${BINDIR}/rz-docker"
|
||||
cp -f doc/hud "${DESTDIR}${DATADIR}/rizin/${VERSION}/hud/main"
|
||||
mkdir -p "${DESTDIR}${DATADIR}/rizin/${VERSION}/"
|
||||
$(SHELL) sys/ldconfig.sh
|
||||
$(SHELL) ./configure-plugins --rm-static $(DESTDIR)$(LIBDIR)/rizin/last/
|
||||
|
||||
install-pkgconfig pkgconfig-install:
|
||||
@${INSTALL_DIR} "${DESTDIR}${LIBDIR}/pkgconfig"
|
||||
for FILE in $(shell cd pkgcfg ; ls *.pc) ; do \
|
||||
cp -f "$(PWD)/pkgcfg/$$FILE" "${DESTDIR}${LIBDIR}/pkgconfig/$$FILE" ; done
|
||||
|
||||
install-pkgconfig-symlink pkgconfig-symstall symstall-pkgconfig:
|
||||
mkdir -p "${DESTDIR}${LIBDIR}/pkgconfig"
|
||||
@${INSTALL_DIR} "${DESTDIR}${LIBDIR}/pkgconfig"
|
||||
for FILE in $(shell cd pkgcfg ; ls *.pc) ; do \
|
||||
ln -fs "$(PWD)/pkgcfg/$$FILE" "${DESTDIR}${LIBDIR}/pkgconfig/$$FILE" ; done
|
||||
|
||||
symstall-sdb:
|
||||
for DIR in ${DATADIRS} ; do (\
|
||||
cd "$$DIR" ; \
|
||||
echo "$$DIR" ; \
|
||||
${MAKE} install-symlink ); \
|
||||
done
|
||||
|
||||
symstall install-symlink: install-man-symlink install-doc-symlink install-pkgconfig-symlink symstall-sdb
|
||||
cd librz && ${MAKE} install-symlink
|
||||
cd binrz && ${MAKE} install-symlink
|
||||
cd shlr && ${MAKE} install-symlink
|
||||
mkdir -p "${DESTDIR}${BINDIR}"
|
||||
ln -fs "${PWD}/sys/indent.sh" "${DESTDIR}${BINDIR}/rz-indent"
|
||||
ln -fs "${PWD}/sys/rz-docker.sh" "${DESTDIR}${BINDIR}/rz-docker"
|
||||
mkdir -p "${DESTDIR}${DATADIR}/rizin/${VERSION}/hud"
|
||||
ln -fs "${PWD}/doc/hud" "${DESTDIR}${DATADIR}/rizin/${VERSION}/hud/main"
|
||||
#mkdir -p "${DESTDIR}${DATADIR}/rizin/${VERSION}/flag"
|
||||
#ln -fs $(PWD)/librz/flag/d/tags.rz "${DESTDIR}${DATADIR}/rizin/${VERSION}/flag/tags.rz"
|
||||
cd "$(DESTDIR)$(LIBDIR)/rizin/" ;\
|
||||
rm -f last ; ln -fs $(VERSION) last
|
||||
cd "$(DESTDIR)$(DATADIR)/rizin/" ;\
|
||||
rm -f last ; ln -fs $(VERSION) last
|
||||
mkdir -p "${DESTDIR}${DATADIR}/rizin/${VERSION}/"
|
||||
$(SHELL) sys/ldconfig.sh
|
||||
$(SHELL) ./configure-plugins --rm-static $(DESTDIR)/$(LIBDIR)/rizin/last/
|
||||
|
||||
deinstall uninstall:
|
||||
rm -f $(DESTDIR)$(BINDIR)/rz-indent
|
||||
rm -f $(DESTDIR)$(BINDIR)/rz-docker
|
||||
cd librz && ${MAKE} uninstall
|
||||
cd binrz && ${MAKE} uninstall
|
||||
cd shlr && ${MAKE} uninstall
|
||||
cd librz/syscall/d && ${MAKE} uninstall
|
||||
cd librz/analysis/d && ${MAKE} uninstall
|
||||
@echo
|
||||
@echo "Run 'make purge' to also remove installed files from previous versions of rz"
|
||||
@echo
|
||||
|
||||
purge-doc:
|
||||
rm -rf "${DESTDIR}${DOCDIR}"
|
||||
cd man ; for FILE in *.1 ; do rm -f "${DESTDIR}${MANDIR}/man1/$$FILE" ; done
|
||||
|
||||
user-wrap=echo "\#!/bin/sh" > ~/bin/"$1" \
|
||||
; echo "${PWD}/env.sh '${PREFIX}' '$1' \"\$$@\"" >> ~/bin/"$1" \
|
||||
; chmod +x ~/bin/"$1" ;
|
||||
|
||||
user-install:
|
||||
mkdir -p ~/bin
|
||||
$(foreach mod,$(RZ_BINS),$(call user-wrap,$(mod)))
|
||||
cd ~/bin ;
|
||||
|
||||
user-uninstall:
|
||||
$(foreach mod,$(RZ_BINS),rm -f ~/bin/"$(mod)")
|
||||
-rmdir ~/bin
|
||||
|
||||
purge-dev:
|
||||
rm -f "${DESTDIR}${LIBDIR}/librz_"*".${EXT_AR}"
|
||||
rm -f "${DESTDIR}${LIBDIR}/pkgconfig/rz_"*.pc
|
||||
rm -rf "${DESTDIR}${INCLUDEDIR}/librz"
|
||||
rm -f "${DESTDIR}${LIBDIR}/rizin/${VERSION}/-"*
|
||||
|
||||
# required for EXT_SO
|
||||
include librz/config.mk
|
||||
|
||||
strip:
|
||||
#-for FILE in ${RZ_BINS} ; do ${STRIP} -s "${DESTDIR}${BINDIR}/$$FILE" 2> /dev/null ; done
|
||||
ifeq ($(HOST_OS),darwin)
|
||||
-${STRIP} -STxX "${DESTDIR}${LIBDIR}/librz_"*".${EXT_SO}"
|
||||
else
|
||||
-${STRIP} -s "${DESTDIR}${LIBDIR}/librz_"*".${EXT_SO}"
|
||||
endif
|
||||
|
||||
purge: purge-doc purge-dev user-uninstall
|
||||
for FILE in ${RZ_BINS} ; do rm -f "${DESTDIR}${BINDIR}/$$FILE" ; done
|
||||
rm -f "${DESTDIR}${BINDIR}/rz_gg-cc"
|
||||
rm -f "${DESTDIR}${LIBDIR}/librz_"*
|
||||
rm -f "${DESTDIR}${LIBDIR}/librz"*".${EXT_SO}"
|
||||
rm -rf "${DESTDIR}${LIBDIR}/rizin"
|
||||
rm -rf "${DESTDIR}${INCLUDEDIR}/librz"
|
||||
rm -rf "${DESTDIR}${DATADIR}/rizin"
|
||||
|
||||
RZ_V=rizin-${VERSION}
|
||||
|
||||
v ver version:
|
||||
@echo CURRENT=${VERSION}
|
||||
@echo PREVIOUS=${PREVIOUS_RELEASE}
|
||||
|
||||
dist:
|
||||
rm -rf $(RZ_V)
|
||||
git clone . $(RZ_V)
|
||||
-cd $(RZ_V) && [ ! -f config-user.mk -o configure -nt config-user.mk ] && ./configure "--prefix=${PREFIX}"
|
||||
cd $(RZ_V) ; git log $$(git show-ref | grep ${PREVIOUS_RELEASE} | awk '{print $$1}')..HEAD > ChangeLog
|
||||
$(MAKE) -C $(RZ_V)/shlr capstone-sync
|
||||
FILES=`cd $(RZ_V); git ls-files | sed -e "s,^,$(RZ_V)/,"` ; \
|
||||
CS_FILES=`cd $(RZ_V)/shlr/capstone ; git ls-files | grep -v pdf | grep -v xcode | grep -v msvc | grep -v suite | grep -v bindings | grep -v tests | sed -e "s,^,$(RZ_V)/shlr/capstone/,"` ; \
|
||||
${TAR} "rizin-${VERSION}.tar" $${FILES} $${CS_FILES} "$(RZ_V)/ChangeLog" ; \
|
||||
${CZ} "rizin-${VERSION}.tar"
|
||||
|
||||
olddist:
|
||||
-[ configure -nt config-user.mk ] && ./configure "--prefix=${PREFIX}"
|
||||
#git log $$(git show-ref `git tag |tail -n1`)..HEAD > ChangeLog
|
||||
git log $$(git show-ref | grep ${PREVIOUS_RELEASE} | awk '{print $$1}')..HEAD > ChangeLog
|
||||
cd shlr && ${MAKE} capstone-sync
|
||||
$(MAKE) -R capstone.ps
|
||||
DIR=`basename "$$PWD"` ; \
|
||||
FILES=`git ls-files | sed -e "s,^,rizin-${VERSION}/,"` ; \
|
||||
CS_FILES=`cd shlr/capstone ; git ls-files | grep -v pdf | grep -v xcode | grep -v msvc | grep -v suite | grep -v bindings | grep -v tests | sed -e "s,^,rizin-${VERSION}/shlr/capstone/,"` ; \
|
||||
cd .. && mv "$${DIR}" "rizin-${VERSION}" && \
|
||||
${TAR} "rizin-${VERSION}.tar" $${FILES} $${CS_FILES} "rizin-${VERSION}/ChangeLog" ; \
|
||||
${CZ} "rizin-${VERSION}.tar" ; \
|
||||
mv "rizin-${VERSION}" "$${DIR}"
|
||||
|
||||
shot:
|
||||
DATE=`date '+%Y%m%d'` ; \
|
||||
FILES=`git ls-files | sed -e "s,^,rizin-${DATE}/,"` ; \
|
||||
cd .. && mv rizin "rizin-$${DATE}" && \
|
||||
${TAR} "rizin-$${DATE}.tar" $${FILES} ;\
|
||||
${CZ} "rizin-$${DATE}.tar" ;\
|
||||
mv "rizin-$${DATE}" rizin && \
|
||||
scp "rizin-$${DATE}.${TAREXT}" \
|
||||
rizin.org:/srv/http/rizinorg/get/shot
|
||||
|
||||
tests:
|
||||
$(MAKE) -C $(RZ_TEST)
|
||||
|
||||
macos-sign:
|
||||
$(MAKE) -C binrz/rizin macos-sign
|
||||
|
||||
macos-sign-libs:
|
||||
$(MAKE) -C binrz/rizin macos-sign-libs
|
||||
|
||||
osx-pkg:
|
||||
sys/osx-pkg.sh $(VERSION)
|
||||
|
||||
quality:
|
||||
./sys/shellcheck.sh
|
||||
|
||||
menu nconfig:
|
||||
./sys/menu.sh || true
|
||||
|
||||
meson:
|
||||
@echo "[ Meson RZ Building ]"
|
||||
$(PYTHON) sys/meson.py --prefix="${PREFIX}" --shared
|
||||
|
||||
meson-install:
|
||||
DESTDIR="$(DESTDIR)" ninja -C build install
|
||||
|
||||
meson-symstall: symstall-sdb
|
||||
@echo "[ Meson symstall (not stable) ]"
|
||||
ln -fs $(PWD)/binrz/rz_pm/rz-pm ${B}/rz-pm
|
||||
ln -fs $(PWD)/build/binrz/rz_asm/rz_asm ${B}/rz_asm
|
||||
ln -fs $(PWD)/build/binrz/rz_run/rz_run ${B}/rz_run
|
||||
ln -fs $(PWD)/build/binrz/rizin/rizin ${B}/rizin
|
||||
ln -fs $(PWD)/build/binrz/rz_hash/rz_hash ${B}/rz_hash
|
||||
ln -fs $(PWD)/build/binrz/rz_bin/rz_bin ${B}/rz_bin
|
||||
ln -fs $(PWD)/build/binrz/rizin/rizin ${B}/rizin
|
||||
ln -fs $(PWD)/build/binrz/rz_gg/rz_gg ${B}/rz_gg
|
||||
cd $(B)
|
||||
ln -fs $(PWD)/build/librz/util/librz_util.$(EXT_SO) ${L}/librz_util.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/bp/librz_bp.$(EXT_SO) ${L}/librz_bp.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/syscall/librz_syscall.$(EXT_SO) ${L}/librz_syscall.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/cons/librz_cons.$(EXT_SO) ${L}/librz_cons.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/search/librz_search.$(EXT_SO) ${L}/librz_search.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/magic/librz_magic.$(EXT_SO) ${L}/librz_magic.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/flag/librz_flag.$(EXT_SO) ${L}/librz_flag.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/reg/librz_reg.$(EXT_SO) ${L}/librz_reg.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/bin/librz_bin.$(EXT_SO) ${L}/librz_bin.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/config/librz_config.$(EXT_SO) ${L}/librz_config.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/parse/librz_parse.$(EXT_SO) ${L}/librz_parse.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/lang/librz_lang.$(EXT_SO) ${L}/librz_lang.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/asm/librz_asm.$(EXT_SO) ${L}/librz_asm.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/analysis/librz_analysis.$(EXT_SO) ${L}/librz_analysis.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/egg/librz_egg.$(EXT_SO) ${L}/librz_egg.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/debug/librz_debug.$(EXT_SO) ${L}/librz_debug.$(EXT_SO)
|
||||
ln -fs $(PWD)/build/librz/core/librz_core.$(EXT_SO) ${L}/librz_core.$(EXT_SO)
|
||||
|
||||
meson-uninstall:
|
||||
ninja -C build uninstall
|
||||
$(MAKE) uninstall
|
||||
|
||||
meson-clean:
|
||||
rm -rf build
|
||||
rm -rf build_sdb
|
||||
|
||||
MESON_FILES=$(shell find build/librz build/binrz -type f | grep -v @)
|
||||
meson-symstall-experimental:
|
||||
for a in $(MESON_FILES) ; do echo ln -fs "$(PWD)/$$a" "$(PWD)/$$(echo $$a|sed -e s,build/,,)" ; done
|
||||
$(MAKE) symstall
|
||||
|
||||
shlr/capstone:
|
||||
$(MAKE) -C shlr capstone
|
||||
|
||||
.PHONY: meson meson-install
|
||||
|
||||
include ${MKPLUGINS}
|
||||
|
||||
.PHONY: all clean install symstall uninstall deinstall strip
|
||||
.PHONY: librz binrz install-man w32dist tests dist shot pkgcfg depgraph.png love
|
||||
.PHONY: purge system-purge
|
||||
.PHONY: shlr/capstone
|
||||
27
autogen.sh
27
autogen.sh
|
|
@ -1,27 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Look for the 'acr' tool here: https://github.com/radare/acr
|
||||
# Clone last version of ACR from here:
|
||||
# git clone https://github.com/radare/acr
|
||||
#
|
||||
# -- pancake
|
||||
|
||||
rz-pm -h >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo "Installing the last version of 'acr'..."
|
||||
rz-pm -i acr > /dev/null
|
||||
rz-pm -r acr -h > /dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo "Running 'acr -p'..."
|
||||
rz-pm -r acr -p
|
||||
else
|
||||
echo "Cannot find 'acr' in PATH"
|
||||
fi
|
||||
else
|
||||
echo "Running acr..."
|
||||
acr -p
|
||||
fi
|
||||
if [ -n "$1" ]; then
|
||||
echo "./configure $*"
|
||||
./configure $*
|
||||
fi
|
||||
|
|
@ -1,70 +0,0 @@
|
|||
include ../global.mk
|
||||
include ../librz/config.mk
|
||||
|
||||
DESTDIR:=$(DESTDIR)
|
||||
BTOP=$(shell pwd)
|
||||
|
||||
.PHONY: all clean install install-symlink deinstall uninstall mrproper preload
|
||||
|
||||
BINS=rz-ax rz-asm rz-bin rz-hash rz-diff rizin rz-find rz-run rz-gg rz-agent rz-sign
|
||||
|
||||
ifeq ($(WANT_RZ_TEST),1)
|
||||
BINS+=rz-test
|
||||
endif
|
||||
|
||||
LIBRZ=$(call libname-version,librz.$(EXT_SO),${LIBVERSION})
|
||||
|
||||
all: preload
|
||||
@for BINARY in $(BINS) ; do $(MAKE) -C $${BINARY} all || exit 1; done
|
||||
ifeq ($(COMPILER),ios-sdk)
|
||||
$(MAKE) ios-sign
|
||||
endif
|
||||
|
||||
preload:
|
||||
ifeq ($(WITHPIC),1)
|
||||
$(MAKE) -C preload
|
||||
endif
|
||||
|
||||
install:
|
||||
mkdir -p "${DESTDIR}${BINDIR}"
|
||||
for BINARY in ${BINS} ; do \
|
||||
rm -f "${DESTDIR}${BINDIR}/$$BINARY" ; \
|
||||
${INSTALL_PROGRAM} "$$BINARY/$$BINARY" "${DESTDIR}${BINDIR}/$$BINARY" ; \
|
||||
done
|
||||
${INSTALL_SCRIPT} "$(BTOP)/rz-pm/rz-pm" "${DESTDIR}${BINDIR}/rz-pm"
|
||||
rm -rf "${DESTDIR}${DATADIR}/rizin/${VERSION}/rz-pm"
|
||||
ifeq ($(WITHPIC),1)
|
||||
${INSTALL_LIB} "preload/librz.$(EXT_SO)" "${DESTDIR}${LIBDIR}"
|
||||
-cd "${DESTDIR}${LIBDIR}" && \
|
||||
mv librz.$(EXT_SO) $(LIBRZ) && \
|
||||
ln -fs $(LIBRZ) librz.$(EXT_SO)
|
||||
endif
|
||||
|
||||
ios_sign ios-sign ios-sdk-sign:
|
||||
-for a in $(BINS) ; do xcrun --sdk iphoneos codesign -s- --entitlements rizin/rizin_ios.xml $$a ; done
|
||||
-for a in ../librz/*/*.${EXT_SO} ; do xcrun --sdk iphoneos codesign -s- --entitlements rizin/rizin_ios.xml $$a ; done
|
||||
-for a in ../librz/*/p/*.${EXT_SO} ; do xcrun --sdk iphoneos codesign -s- --entitlements rizin/rizin_ios.xml $$a ; done
|
||||
|
||||
symstall install-symlink:
|
||||
cd .. && \
|
||||
mkdir -p "${DESTDIR}${BINDIR}" && \
|
||||
for BINARY in ${BINS} ; do ln -fs "${BTOP}/$$BINARY/$$BINARY" "${DESTDIR}${BINDIR}/$$BINARY" ; done
|
||||
cd .. && ln -fs "${BTOP}/rz-pm/rz-pm" "${DESTDIR}${BINDIR}/rz-pm"
|
||||
cd .. && rm -rf "${DESTDIR}${DATADIR}/rizin/${VERSION}/rz-pm"
|
||||
cd .. && mkdir -p "${DESTDIR}${DATADIR}/rizin/${VERSION}/"
|
||||
-cd .. && ln -fs "${BTOP}/preload/librz.$(EXT_SO)" "${DESTDIR}${LIBDIR}/librz.$(EXT_SO)"
|
||||
-cd .. && cd "${DESTDIR}${LIBDIR}" && \
|
||||
mv librz.$(EXT_SO) $(LIBRZ) && \
|
||||
ln -fs $(LIBRZ) librz.$(EXT_SO)
|
||||
|
||||
deinstall uninstall:
|
||||
-cd .. ; \
|
||||
for BINARY in ${BINS} ; do rm -f "${DESTDIR}${BINDIR}/$$BINARY" ; done ; \
|
||||
rm -f "${DESTDIR}${BINDIR}/rz-pm" ; \
|
||||
|
||||
clean:
|
||||
@for DIR in preload ${BINS} ; do ${MAKE} -C $$DIR clean; done
|
||||
|
||||
mrproper:
|
||||
@for DIR in preload ${BINS} ; do ${MAKE} -C $$DIR mrproper; done
|
||||
|
||||
|
|
@ -1,103 +0,0 @@
|
|||
PREFIX?=/usr
|
||||
DESTDIR?=/
|
||||
|
||||
BINS=rz-bin rz-run rz-asm rz-gg rz-hash rz-ax rz-find rz-diff
|
||||
BINS2=rizin ${BINS}
|
||||
|
||||
SOURCES= main.c rz-bin.c rizin.c rz-diff.c rz-find.c
|
||||
SOURCES+=rz-hash.c rz-run.c rz-asm.c rz-ax.c rz-gg.c
|
||||
|
||||
include ../../config-user.mk
|
||||
|
||||
SHLR=../../shlr
|
||||
|
||||
ifeq (${ANDROID},1)
|
||||
LDFLAGS+=-lm
|
||||
else
|
||||
ifneq (${OSTYPE},linux)
|
||||
LDFLAGS+=-lpthread
|
||||
LDFLAGS+=-ldl
|
||||
endif
|
||||
endif
|
||||
ifeq ($(USE_LTO),1)
|
||||
LDFLAGS+=-flto
|
||||
endif
|
||||
|
||||
CFLAGS+=-I../../librz/include/
|
||||
CFLAGS+=-I$(SHLR)/spp
|
||||
|
||||
LDFLAGS+=-L../../librz/main -lrz_main
|
||||
LDFLAGS+=-L../../librz/io -lrz_io
|
||||
LDFLAGS+=-L../../librz/bp -lrz_bp
|
||||
LDFLAGS+=-L../../librz/socket -lrz_socket
|
||||
LDFLAGS+=-L../../librz/bin -lrz_bin
|
||||
LDFLAGS+=-L../../librz/reg -lrz_reg
|
||||
LDFLAGS+=-L../../librz/asm -lrz_asm
|
||||
LDFLAGS+=-L../../librz/lang -lrz_lang
|
||||
LDFLAGS+=-L../../librz/egg -lrz_egg
|
||||
LDFLAGS+=-L../../librz/core -lrz_core
|
||||
LDFLAGS+=-L../../librz/analysis -lrz_analysis
|
||||
LDFLAGS+=-L../../librz/crypto -lrz_crypto
|
||||
LDFLAGS+=-L../../librz/flag -lrz_flag
|
||||
LDFLAGS+=-L../../librz/parse -lrz_parse
|
||||
LDFLAGS+=-L../../librz/magic -lrz_magic
|
||||
LDFLAGS+=-L../../librz/syscall -lrz_syscall
|
||||
LDFLAGS+=-L../../librz/util -lrz_util
|
||||
LDFLAGS+=-L../../librz/cons -lrz_cons
|
||||
LDFLAGS+=-L../../librz/hash -lrz_hash
|
||||
LDFLAGS+=-L../../librz/debug -lrz_debug
|
||||
LDFLAGS+=-L../../librz/search -lrz_search
|
||||
LDFLAGS+=-L../../librz/config -lrz_config
|
||||
LDFLAGS+=${LINK}
|
||||
|
||||
include ../../librz/config.mk
|
||||
include ../../librz/socket/deps.mk
|
||||
include ../../librz/magic/deps.mk
|
||||
include ../../librz/main/deps.mk
|
||||
include ../../shlr/sdb.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/gdb/deps.mk
|
||||
include ../../shlr/java/deps.mk
|
||||
include ../../shlr/bochs/deps.mk
|
||||
include ../../shlr/qnx/deps.mk
|
||||
include ../../shlr/ar/deps.mk
|
||||
include ../../shlr/sdb.mk
|
||||
include ../../shlr/capstone.mk
|
||||
include ../../shlr/rizin-shell-parser-deps.mk
|
||||
|
||||
all: symlinks
|
||||
|
||||
symlinks: build
|
||||
for FILE in ${BINS} ; do \
|
||||
ln -fs rizin $$FILE ; \
|
||||
done
|
||||
|
||||
clean:
|
||||
mv main.c main.k
|
||||
rm -f *.[ch]
|
||||
mv main.k main.c
|
||||
|
||||
build:
|
||||
mv main.c main.k
|
||||
rm -f *.[ch]
|
||||
mv main.k main.c
|
||||
for FILE in ${BINS2} ; do cp ../$$FILE/*.[ch] . ; done
|
||||
rm -f rwx.c xorhex.c rsc2.c
|
||||
for FILE in ${BINS2} ; do \
|
||||
mv $${FILE}.c _$${FILE}.c ;\
|
||||
sed -e "s,^int main,int $${FILE}_main,g" _$${FILE}.c > $${FILE}.c ; \
|
||||
rm -f _$${FILE} ; \
|
||||
done
|
||||
rm -f _*
|
||||
${CC} -o rizin ${SOURCES} ${CFLAGS} ${LDFLAGS}
|
||||
mv main.c main.k
|
||||
rm -f *.[ch]
|
||||
mv main.k main.c
|
||||
|
||||
install:
|
||||
mkdir -p "${DESTDIR}${BINDIR}"
|
||||
for FILE in ${BINS2} ; do \
|
||||
rm -f "${DESTDIR}${BINDIR}/$$FILE" ; \
|
||||
cp -PRpf "$$FILE" "${DESTDIR}${BINDIR}/$$FILE" ; \
|
||||
done
|
||||
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
ISPPC=$(shell uname -m | grep Power)
|
||||
|
||||
ifeq ($(ISPPC),)
|
||||
BIN=librz
|
||||
ISLIB=1
|
||||
BINDEPS=rz_core rz_parse rz_search rz_cons rz_config
|
||||
BINDEPS+=rz_bin rz_debug rz_analysis rz_reg rz_bp rz_io
|
||||
BINDEPS+=rz_lang rz_asm rz_syscall rz_hash rz_crypto
|
||||
BINDEPS+=rz_magic rz_socket rz_flag rz_util rz_egg
|
||||
|
||||
include ../rules.mk
|
||||
|
||||
ifeq ($(OSTYPE),android)
|
||||
LDFLAGS+=${DL_LIBS} -lm
|
||||
endif
|
||||
ifeq ($(OSTYPE),gnulinux)
|
||||
LDFLAGS+=-Wl,-soname,librz.${EXT_SO}.${LIBVERSION}
|
||||
endif
|
||||
include ../../librz/socket/deps.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/gdb/deps.mk
|
||||
include ../../shlr/bochs/deps.mk
|
||||
include ../../shlr/qnx/deps.mk
|
||||
include ../../shlr/ar/deps.mk
|
||||
include ../../shlr/rizin-shell-parser-deps.mk
|
||||
|
||||
clean::
|
||||
rm -f $(BIN).$(EXT_SO) $(BIN).o
|
||||
else
|
||||
all:
|
||||
@echo Cant build preloaded lib in old Macs
|
||||
endif
|
||||
|
|
@ -1,100 +0,0 @@
|
|||
BIN=rizin
|
||||
BINDEPS=rz_core rz_parse rz_search rz_cons rz_config
|
||||
BINDEPS+=rz_bin rz_debug rz_analysis rz_reg rz_bp rz_io
|
||||
BINDEPS+=rz_lang rz_asm rz_syscall rz_hash rz_main
|
||||
BINDEPS+=rz_magic rz_socket rz_flag rz_egg rz_crypto rz_util
|
||||
|
||||
include ../../config-user.mk
|
||||
|
||||
# Apple Sign #
|
||||
CERTID?=re.rizin.rizin
|
||||
BUNDLE=re.rizin.rizin
|
||||
MACSDK=macosx10.10
|
||||
ENTITL=rizin.xcent
|
||||
#ENTITL=rizin_ios.xml
|
||||
#CFLAGS+=-flto
|
||||
#LDFLAGS+=-flto
|
||||
|
||||
CFLAGS_INCLUDES+=-I$(SHLR)/sdb/src
|
||||
CFLAGS_INCLUDES+=-I$(LIBRZ)/include
|
||||
|
||||
ifeq (${COMPILER},emscripten)
|
||||
# https://kripken.github.io/emscripten-site/docs/optimizing/Optimizing-Code.html
|
||||
# -s INLINING_LIMIT=1
|
||||
# --memory-init-file 0
|
||||
CFLAGS+=-s EXPORTED_FUNCTIONS='["_r_core_new", "_r_core_free", "_r_cmd_str"]'
|
||||
CFLAGS+=-s EXTRA_EXPORTED_RUNTIME_METHODS='["cwrap", "addOnInit"]'
|
||||
CFLAGS+=-s TOTAL_MEMORY=33554432
|
||||
CFLAGS+=-s ALLOW_MEMORY_GROWTH=1
|
||||
CFLAGS+=-s ABORTING_MALLOC=0
|
||||
#CFLAGS+=-Oz --memory-init-file 0
|
||||
endif
|
||||
|
||||
FOOD_LIBS=$(addprefix ../../librz/,$(subst rz_,,$(BINDEPS)))
|
||||
SIGN_LIBS=$(addsuffix /librz_*.dylib,$(FOOD_LIBS))
|
||||
|
||||
include ../rules.mk
|
||||
#IOS_CERTID?=re.rizin.rizin
|
||||
|
||||
ios:
|
||||
$(MAKE) -C ../../librz/io
|
||||
$(MAKE) -C ../../librz/debug
|
||||
rm -f rizin
|
||||
$(MAKE)
|
||||
$(MAKE) ios-sign
|
||||
|
||||
ifeq ($(shell uname),Darwin)
|
||||
sign: macos-sign
|
||||
else
|
||||
sign: ios-sign
|
||||
endif
|
||||
|
||||
ios-sign iossign:
|
||||
xcrun --sdk iphoneos codesign \
|
||||
-s- --entitlements rizin_ios.xml rizin
|
||||
# -f -s "$$IOS_CERTID" --entitlements rizin_ios.xml rizin
|
||||
#ldid -Srizin_ios.xml rizin
|
||||
|
||||
ios_sdk_sign:
|
||||
-codesign -s- --entitlements rizin_ios.xml rizin
|
||||
|
||||
macos-sign macossign:
|
||||
rm -f rizin
|
||||
${CC} rizin.c ${CFLAGS_INCLUDES} ${CFLAGS} ${LDFLAGS} ${LINK} -o rizin \
|
||||
-sectcreate __TEXT __info_plist Info.plist \
|
||||
-framework Security -framework CoreFoundation
|
||||
#xcrun --sdk $(MACSDK) codesign -f -s ${CERTID} --entitlements rizin_macos.xml rizin
|
||||
codesign -dvvv --deep -f -s ${CERTID} -i ${BUNDLE} --entitlements rizin_macos.xml rizin
|
||||
#sudo chown root:_developer rizin
|
||||
# sudo chown root:procmod rizin
|
||||
#sudo chmod g+s rizin
|
||||
# sudo chmod 4755 rizin
|
||||
|
||||
macos-sign-libs:
|
||||
for LIB in ${SIGN_LIBS} ; do \
|
||||
echo Signing $$LIB ; \
|
||||
codesign -f -s ${CERTID} $$LIB ; \
|
||||
done
|
||||
# xcrun --sdk $(MACSDK) codesign -f -s ${CERTID} --entitlements $(ENTITL) rizin
|
||||
# xcrun --sdk $(MACSDK) codesign -f -s ${CERTID} rizin
|
||||
# codesign -dvvv -s $(XNUCERT) ./rizin
|
||||
# sudo chown root:procmod rizin
|
||||
# sudo chmod g+s rizin
|
||||
|
||||
ifeq ($(OSTYPE),android)
|
||||
LDFLAGS+=${DL_LIBS} -lm
|
||||
LDFLAGS+=../../shlr/capstone/libcapstone.a
|
||||
endif
|
||||
|
||||
include ../../librz/socket/deps.mk
|
||||
include ../../librz/magic/deps.mk
|
||||
include ../../librz/main/deps.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/gdb/deps.mk
|
||||
include ../../shlr/java/deps.mk
|
||||
include ../../shlr/bochs/deps.mk
|
||||
include ../../shlr/qnx/deps.mk
|
||||
include ../../shlr/ar/deps.mk
|
||||
include ../../shlr/yxml/deps.mk
|
||||
include ../../shlr/sdb.mk
|
||||
LDFLAGS+=$(LINK)
|
||||
102
binrz/rules.mk
102
binrz/rules.mk
|
|
@ -1,102 +0,0 @@
|
|||
BINR_PROGRAM=1
|
||||
include ../../librz/config.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/sdb.mk
|
||||
|
||||
ifeq (,$(findstring tcc,${CC}))
|
||||
CFLAGS+=-pie
|
||||
endif
|
||||
CFLAGS+=-I$(LTOP)/include
|
||||
|
||||
ifeq (${COMPILER},emscripten)
|
||||
LINK+=$(SHLR)/librz_shlr.a
|
||||
LINK+=$(SHLR)/sdb/src/libsdb.a
|
||||
include $(SHLR)/capstone.mk
|
||||
CFLAGS+= -s SIDE_MODULE=1
|
||||
#CFLAGS+=-s ERROR_ON_UNDEFINED_SYMBOLS=0
|
||||
#EXT_EXE=.js
|
||||
#EXT_EXE=.html
|
||||
EXT_EXE=.bc
|
||||
#EXT_EXE=.wasm
|
||||
endif
|
||||
|
||||
ifeq ($(USE_RPATH),1)
|
||||
LDFLAGS+=-Wl,-rpath "${LIBDIR}"
|
||||
endif
|
||||
|
||||
OBJ+=${BIN}.o
|
||||
BEXE=${BIN}${EXT_EXE}
|
||||
|
||||
LDFLAGS+=${DL_LIBS}
|
||||
ifneq (${ANDROID},1)
|
||||
ifneq (${OSTYPE},windows)
|
||||
ifneq (${OSTYPE},linux)
|
||||
ifneq ($(CC),cccl)
|
||||
LDFLAGS+=-lpthread
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
REAL_LDFLAGS=$(subst -shared,,$(LDFLAGS))
|
||||
|
||||
ifeq ($(ISLIB),1)
|
||||
BEXE=$(BIN).$(EXT_SO)
|
||||
REAL_LDFLAGS+=-shared
|
||||
endif
|
||||
#--------------------#
|
||||
# Rules for programs #
|
||||
#--------------------#
|
||||
|
||||
LDFLAGS+=-lm
|
||||
# For some reason w32 builds contain -shared in LDFLAGS. boo!
|
||||
|
||||
ifneq ($(BIN)$(BINS),)
|
||||
|
||||
ifeq ($(OSTYPE),linux)
|
||||
LDFLAGS+=-static
|
||||
endif
|
||||
|
||||
all: ${BEXE} ${BINS}
|
||||
|
||||
ifeq ($(WITH_LIBRZ),1)
|
||||
${BINS}: ${OBJS}
|
||||
${CC} ${CFLAGS} $@.c ${OBJS} ../../librz/librz.a -o $@ $(LDFLAGS)
|
||||
|
||||
${BEXE}: ${OBJ} ${SHARED_OBJ}
|
||||
ifeq ($(CC),emcc)
|
||||
emcc $(BIN).c ../../shlr/librz_shlr.a ../../shlr/capstone/libcapstone.a ../../librz/librz.a ../../shlr/gdb/lib/libgdbr.a ../../shlr/zip/librz.a -I ../../librz/include -o $(BIN).js
|
||||
else
|
||||
${CC} ${CFLAGS} $+ -L.. -o $@ ../../librz/librz.a $(LDFLAGS)
|
||||
endif
|
||||
else
|
||||
|
||||
${BINS}: ${OBJS}
|
||||
ifneq ($(SILENT),)
|
||||
@echo CC $@
|
||||
endif
|
||||
${CC} ${CFLAGS} $@.c ${OBJS} ${REAL_LDFLAGS} $(LINK) -o $@
|
||||
|
||||
# -static fails because -ldl -lpthread static-gcc ...
|
||||
${BEXE}: ${OBJ} ${SHARED_OBJ}
|
||||
ifneq ($(SILENT),)
|
||||
@echo LD $@
|
||||
endif
|
||||
${CC} ${CFLAGS} $+ -L.. -o $@ $(REAL_LDFLAGS) $(LINK)
|
||||
endif
|
||||
endif
|
||||
|
||||
# Dummy myclean rule that can be overridden by the t/ Makefile
|
||||
# TODO: move to config.mk ? it must be a precondition
|
||||
myclean:
|
||||
|
||||
clean:: myclean
|
||||
-rm -f ${OBJS} ${OBJ} ${BEXE}
|
||||
|
||||
mrproper: clean
|
||||
-rm -f *.d
|
||||
|
||||
install:
|
||||
cd ../.. && ${MAKE} install
|
||||
|
||||
.PHONY: all clean myclean mrproper install
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
include ../../config-user.mk
|
||||
BIN=rz-agent
|
||||
BINDEPS=rz_socket rz_cons rz_util rz_main
|
||||
|
||||
ifeq ($(OSTYPE),android)
|
||||
LDFLAGS+=${DL_LIBS} -lm
|
||||
endif
|
||||
include ../../librz/main/deps.mk
|
||||
|
||||
include ../rules.mk
|
||||
|
||||
LDFLAGS+=$(LINK)
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
BIN=rz-asm
|
||||
BINDEPS=rz_main
|
||||
|
||||
include ../../config-user.mk
|
||||
include ../../librz/main/deps.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/java/deps.mk
|
||||
include ../../shlr/capstone.mk
|
||||
include ../rules.mk
|
||||
LDFLAGS+=$(LINK)
|
||||
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
BIN=rz-ax
|
||||
BINDEPS=rz_util rz_main
|
||||
|
||||
include ../rules.mk
|
||||
include ../../librz/main/deps.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/java/deps.mk
|
||||
include ../../shlr/gdb/deps.mk
|
||||
|
||||
LDFLAGS+=$(LINK)
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
all:
|
||||
$(CC) -o rz-bb rz-bb.c -L../../librz/util -lrz_util -I../../librz/include
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
BIN=rz-bin
|
||||
BINDEPS=rz_magic rz_core rz_bin rz_egg rz_cons rz_main
|
||||
BINDEPS+=rz_config rz_io rz_flag rz_asm
|
||||
BINDEPS+=rz_debug rz_hash rz_lang rz_analysis rz_parse rz_bp rz_reg
|
||||
BINDEPS+=rz_search rz_syscall rz_socket rz_magic rz_crypto rz_util
|
||||
|
||||
include ../rules.mk
|
||||
|
||||
include ../../librz/socket/deps.mk
|
||||
include ../../librz/main/deps.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/gdb/deps.mk
|
||||
include ../../shlr/java/deps.mk
|
||||
include ../../shlr/bochs/deps.mk
|
||||
include ../../shlr/qnx/deps.mk
|
||||
include ../../shlr/ar/deps.mk
|
||||
include ../../shlr/capstone.mk
|
||||
|
||||
LDFLAGS+=$(LINK)
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
BIN=rz-diff
|
||||
|
||||
BINDEPS=rz_core rz_config rz_cons rz_search rz_analysis
|
||||
BINDEPS+=rz_bin rz_debug rz_io rz_asm rz_hash rz_crypto
|
||||
BINDEPS+=rz_socket rz_flag rz_lang rz_reg rz_bp rz_parse
|
||||
BINDEPS+=rz_syscall rz_magic rz_util rz_parse rz_egg rz_main
|
||||
|
||||
include ../rules.mk
|
||||
|
||||
ifeq ($(OSTYPE),android)
|
||||
LDFLAGS+=${DL_LIBS} -lm
|
||||
endif
|
||||
|
||||
include ../../librz/socket/deps.mk
|
||||
include ../../librz/main/deps.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/gdb/deps.mk
|
||||
include ../../shlr/bochs/deps.mk
|
||||
include ../../shlr/qnx/deps.mk
|
||||
include ../../shlr/ar/deps.mk
|
||||
|
||||
LDFLAGS+=$(LINK)
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
BIN=rz-find
|
||||
|
||||
BINDEPS=rz_search rz_io rz_asm rz_analysis rz_reg rz_cons rz_lang rz_crypto
|
||||
BINDEPS+=rz_socket rz_parse rz_util rz_syscall rz_flag rz_hash rz_main
|
||||
|
||||
include ../rules.mk
|
||||
|
||||
include ../../librz/socket/deps.mk
|
||||
include ../../librz/main/deps.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/gdb/deps.mk
|
||||
include ../../shlr/bochs/deps.mk
|
||||
include ../../shlr/qnx/deps.mk
|
||||
include ../../shlr/ar/deps.mk
|
||||
LDFLAGS+=$(LINK)
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
BIN=rz-gg
|
||||
BINDEPS=rz_egg rz_syscall rz_asm
|
||||
BINDEPS+=rz_core rz_hash rz_debug rz_config rz_bp rz_crypto rz_cons
|
||||
BINDEPS+=rz_lang rz_parse rz_analysis rz_reg rz_flag rz_crypto
|
||||
BINDEPS+=rz_bin rz_search rz_io rz_socket
|
||||
BINDEPS+=rz_magic rz_util rz_main
|
||||
|
||||
include ../rules.mk
|
||||
include ../../librz/main/deps.mk
|
||||
include ../../shlr/ar/deps.mk
|
||||
include ../../librz/socket/deps.mk
|
||||
include ../../shlr/bochs/deps.mk
|
||||
include ../../shlr/gdb/deps.mk
|
||||
include ../../shlr/java/deps.mk
|
||||
include ../../shlr/capstone.mk
|
||||
include ../../shlr/qnx/deps.mk
|
||||
|
||||
LDFLAGS+=$(LINK)
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
BIN=rz-hash
|
||||
|
||||
BINDEPS=rz_main
|
||||
|
||||
include ../rules.mk
|
||||
|
||||
ifeq ($(OSTYPE),android)
|
||||
LDFLAGS+=-lm
|
||||
endif
|
||||
|
||||
include ../../librz/socket/deps.mk
|
||||
include ../../librz/main/deps.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/gdb/deps.mk
|
||||
include ../../shlr/bochs/deps.mk
|
||||
include ../../shlr/qnx/deps.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../shlr/ar/deps.mk
|
||||
|
||||
LDFLAGS+=$(LINK)
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
BIN=rz-run
|
||||
BINDEPS=rz_socket rz_util rz_main
|
||||
|
||||
include ../rules.mk
|
||||
include ../../librz/main/deps.mk
|
||||
include ../../shlr/zip/deps.mk
|
||||
include ../../librz/socket/deps.mk
|
||||
LDFLAGS+=$(LINK)
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
BIN=rz-sign
|
||||
BINDEPS=rz_analysis rz_util rz_core rz_search rz_main
|
||||
LDFLAGS+=$(LINK)
|
||||
|
||||
include ../../librz/main/deps.mk
|
||||
include ../rules.mk
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
BIN=rz-test
|
||||
BINDEPS=rz_util
|
||||
OBJ=load.o run.o
|
||||
|
||||
include ../rules.mk
|
||||
|
||||
LDFLAGS+=$(CLOCK_LDFLAGS)
|
||||
LDFLAGS+=$(LINK)
|
||||
|
|
@ -1,100 +0,0 @@
|
|||
# This file should be generated by the ./configure script
|
||||
CC=@CC@
|
||||
WITH_GPL=@WITH_GPL@
|
||||
# HOST_CC=@HOST_CC@
|
||||
|
||||
CSNEXT=@CSNEXT@
|
||||
DESTDIR=
|
||||
PREFIX=@PREFIX@
|
||||
BINDIR=@BINDIR@
|
||||
LIBDIR=@LIBDIR@
|
||||
MANDIR=@MANDIR@
|
||||
DOCDIR=@DOCDIR@
|
||||
DATADIR=@DATADIR@
|
||||
INCLUDEDIR=@INCLUDEDIR@
|
||||
|
||||
HAVE_LIB_GMP=@HAVE_LIB_GMP@
|
||||
USE_RPATH=@USE_RPATH@
|
||||
HAVE_JEMALLOC=@HAVE_JEMALLOC@
|
||||
HAVE_FORK=@HAVE_FORK@
|
||||
WANT_DYLINK=@WANT_DYLINK@
|
||||
WITH_LIBRZ=@WITH_LIBRZ@
|
||||
WANT_RZ_TEST=@WANT_RZ_TEST@
|
||||
|
||||
MKPLUGINS=
|
||||
|
||||
COMPILER=@USERCC@
|
||||
STATIC_DEBUG=0
|
||||
RUNTIME_DEBUG=1
|
||||
DEBUGGER=@DEBUGGER@
|
||||
|
||||
INSTALL_DIR=@INSTALL_DIR@
|
||||
INSTALL_DATA=@INSTALL_DATA@
|
||||
INSTALL_PROGRAM=@INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT=@INSTALL_SCRIPT@
|
||||
INSTALL_MAN=@INSTALL_MAN@
|
||||
INSTALL_LIB=@INSTALL_LIB@
|
||||
|
||||
VERSION=@VERSION@
|
||||
RZ_VERSION=@VERSION@
|
||||
RZ_VERSION_MAJOR=@VERSION_MAJOR@
|
||||
RZ_VERSION_MINOR=@VERSION_MINOR@
|
||||
RZ_VERSION_PATCH=@VERSION_PATCH@
|
||||
RZ_VERSION_NUMBER=@VERSION_NUMBER@
|
||||
LIBVERSION=@LIBVERSION@
|
||||
|
||||
# ./configure --with-ostype=[linux,osx,solaris,windows] # TODO: rename to w32, w64?
|
||||
OSTYPE=@USEROSTYPE@
|
||||
BUILD_OS=@BUILD_OS@
|
||||
HOST_OS=@HOST_OS@
|
||||
# hack: must be fixed in acr
|
||||
ifeq ($(WANT_DYLINK),1)
|
||||
ifneq ($(OSTYPE),darwin)
|
||||
DL_LIBS=@DL_LIBS@
|
||||
endif
|
||||
ifeq ($(OSTYPE),qnx)
|
||||
DL_LIBS=
|
||||
endif
|
||||
else
|
||||
DL_LIBS=
|
||||
endif
|
||||
|
||||
# capstone
|
||||
USE_CAPSTONE=@USE_CAPSTONE@
|
||||
ifeq ($(USE_CAPSTONE),1)
|
||||
CAPSTONE_CFLAGS=@CAPSTONE_CFLAGS@
|
||||
CAPSTONE_LDFLAGS=@CAPSTONE_LDFLAGS@
|
||||
else
|
||||
CAPSTONE_CFLAGS=
|
||||
CAPSTONE_LDFLAGS=
|
||||
endif
|
||||
|
||||
HAVE_LIB_GMP=@HAVE_LIB_GMP@
|
||||
HAVE_LIB_SSL=@HAVE_OPENSSL@
|
||||
HAVE_LIB_MAGIC=@HAVE_LIB_MAGIC@
|
||||
USE_LIB_MAGIC=@USE_LIB_MAGIC@
|
||||
HAVE_LIB_XXHASH=@HAVE_LIB_XXHASH@
|
||||
USE_LIB_XXHASH=@USE_LIB_XXHASH@
|
||||
USE_LIB_ZIP=@USE_LIB_ZIP@
|
||||
LIBMAGIC=@LIBMAGIC@
|
||||
LIBZIP=@LIBZIP@
|
||||
LIBXXHASH=@LIBXXHASH@
|
||||
|
||||
SSL_CFLAGS=@SSL_CFLAGS@
|
||||
SSL_LDFLAGS=@SSL_LDFLAGS@
|
||||
|
||||
HAVE_LIBUV=@HAVE_LIBUV@
|
||||
LIBUV_CFLAGS=@LIBUV_CFLAGS@
|
||||
LIBUV_LDFLAGS=@LIBUV_LDFLAGS@
|
||||
|
||||
HAVE_PTRACE=@HAVE_PTRACE@
|
||||
USE_PTRACE_WRAP=@USE_PTRACE_WRAP@
|
||||
|
||||
GIT_TIP:=$(shell (git rev-parse HEAD 2>/dev/null || echo HEAD ))
|
||||
GIT_TAP:=$(shell (git describe --tags 2>/dev/null || echo ${VERSION} ))
|
||||
|
||||
CLOCK_LDFLAGS+=@CLOCK_LDFLAGS@
|
||||
|
||||
# cache compiler flags at configure time #
|
||||
CFLAGS+=@CFLAGS@
|
||||
LDFLAGS+=@LDFLAGS@
|
||||
817
configure
vendored
817
configure
vendored
|
|
@ -1,817 +0,0 @@
|
|||
#!/bin/sh
|
||||
# This script was automatically generated by ACR v1.9.4
|
||||
# @author: pancake <nopcode.org>
|
||||
# @url: http://www.nopcode.org
|
||||
# @repo: git clone https://github.com/radare/acr
|
||||
|
||||
[ -z "${AWK}" ] && AWK=awk
|
||||
do_remove() {
|
||||
if [ "${ACR_RMFILES}" ]; then
|
||||
printf "cleaning temporally files... "
|
||||
rm -f ${ACR_RMFILES}
|
||||
echo "done"
|
||||
fi
|
||||
}
|
||||
control_c() {
|
||||
printf "\n\n^C control-c : script execution interrupted.\n"
|
||||
do_remove
|
||||
exit 1
|
||||
}
|
||||
trap control_c 2
|
||||
DEBUGGER=1
|
||||
USE_MAGIC=0
|
||||
CSNEXT=0
|
||||
LOADLIBS=1
|
||||
WANT_DYLINK=1
|
||||
HAVE_FORK=1
|
||||
WANT_PTRACE_WRAP=1
|
||||
WITH_LIBRZ=0
|
||||
WITH_CAPSTONE=0
|
||||
USE_ZIP=0
|
||||
USE_XXHASH=0
|
||||
WITH_GPL=1
|
||||
WANT_OPENSSL=0
|
||||
WANT_LIBUV=1
|
||||
USE_RPATH=0
|
||||
[ -z "${USERCC}" ] && USERCC="gcc"
|
||||
[ -z "${USEROSTYPE}" ] && USEROSTYPE="auto"
|
||||
[ -z "${LIBVERSION}" ] && LIBVERSION="xxx"
|
||||
HAVE_JEMALLOC=1
|
||||
WANT_RZ_TEST=1
|
||||
[ -z "${RZ_CHECKS_LEVEL}" ] && RZ_CHECKS_LEVEL="2"
|
||||
split_host() {
|
||||
S="$"
|
||||
while : ; do
|
||||
ENVWORDS="${ENVWORDS} $1_CPU $1_OS"
|
||||
STR=`eval "echo ${S}$1"`
|
||||
SPLIT_CPU="`echo "$STR" | cut -d - -f 1`"
|
||||
SPLIT_OS="`echo "$STR" | $AWK -F - '{
|
||||
if ($2=="unknown"){
|
||||
if (NF<3) { print $2; } else { print $3; }
|
||||
} else {
|
||||
if ($2=="linux") { print $2; } else
|
||||
if (NF<3) { print $2; } else { print $3; }
|
||||
}
|
||||
}'`"
|
||||
eval "$1_CPU=\"$SPLIT_CPU\""
|
||||
eval "$1_OS=\"$SPLIT_OS\""
|
||||
shift
|
||||
[ -z "$1" ] && break
|
||||
done
|
||||
}
|
||||
|
||||
QUIET=0
|
||||
be_quiet() {
|
||||
QUIET=1
|
||||
}
|
||||
|
||||
VPATH=`dirname ${0}`
|
||||
if [ "${VPATH}" = "." ]; then
|
||||
WODIS=current
|
||||
else
|
||||
if [ "${VPATH}" = "${PWD}" ]; then
|
||||
VPATH=.
|
||||
WODIS=current
|
||||
else
|
||||
WODIS=crosspath
|
||||
CURDIR=$PWD
|
||||
cd $VPATH
|
||||
VPATH="${PWD}/"
|
||||
cd $CURDIR
|
||||
fi
|
||||
fi
|
||||
|
||||
guess_os() {
|
||||
if [ -e "${VPATH}/config.guess" ]; then
|
||||
sh ${VPATH}/config.guess
|
||||
return
|
||||
fi
|
||||
CPU="`uname -m|sed -e 's, ,,g'|cut -d - -f 1`"
|
||||
OS="`uname -s|tr A-Z a-z`"
|
||||
uname -r | grep -qE "(Microsoft|WSL)" 2>/dev/null && OS="wsl"
|
||||
GNU="`uname --help 2>&1 | grep gnu`"
|
||||
[ "${GNU}" ] && OS="${OS}-gnu"
|
||||
[ "${CPU}" = ppc ] && CPU="powerpc"
|
||||
echo "${CPU}-unknown-${OS}"
|
||||
}
|
||||
|
||||
SEARCHPATH="/usr /usr/local /usr/pkg /sw"
|
||||
|
||||
: ${PREFIX:=/usr/local}
|
||||
CROSSBUILD=0
|
||||
BUILD=`guess_os`
|
||||
HOST="${BUILD}"
|
||||
TARGET="${HOST}"
|
||||
SYSCONFDIR=""
|
||||
|
||||
create_environ() {
|
||||
: ${EPREFIX:="${PREFIX}"}
|
||||
: ${SPREFIX:="${PREFIX}"}
|
||||
: ${BINDIR:="${SPREFIX}/bin"}
|
||||
: ${SBINDIR:="${PREFIX}/sbin"}
|
||||
: ${SYSCONFDIR:="${SPREFIX}/etc"}
|
||||
: ${LIBDIR:="${SPREFIX}/lib"}
|
||||
: ${LIBEXECDIR:="${SPREFIX}/libexec"}
|
||||
: ${INCLUDEDIR:="${SPREFIX}/include"}
|
||||
: ${DATADIR:="${SPREFIX}/share"}
|
||||
: ${INFODIR:="${DATADIR}/info"}
|
||||
: ${MANDIR:="${DATADIR}/man"}
|
||||
: ${DOCDIR:="${DATADIR}/doc/rizin"}
|
||||
: ${LOCALSTATEDIR:="${SPREFIX}/var"}
|
||||
for A in `echo ${PATH} | sed -e 's,:, ,g'` ; do
|
||||
[ -e "$A"/ginstall ] && : ${INSTALL:="$A"/ginstall} && break
|
||||
[ -e "$A"/install ] && : ${INSTALL:="$A"/install} && break
|
||||
done
|
||||
: ${INSTALL_DIR:=${INSTALL} -d}
|
||||
: ${INSTALL_DATA:=${INSTALL} -m 644}
|
||||
: ${INSTALL_SCRIPT:=${INSTALL} -m 755}
|
||||
: ${INSTALL_PROGRAM:=${INSTALL} -m 755}
|
||||
: ${INSTALL_PROGRAM_STRIP:=${INSTALL} -m 755 -s}
|
||||
: ${INSTALL_MAN:=${INSTALL} -m 444}
|
||||
: ${INSTALL_LIB:=${INSTALL} -m 755 -c}
|
||||
PKGNAME='rizin' ; VERSION='0.2.0-git' ; VERSION_MAJOR=0; VERSION_MINOR=2; VERSION_PATCH=0; VERSION_NUMBER=00200; CONTACT_MAIL="team@rizin.re" ; CONTACT_NAME="Rizin Core Team" ; CONTACT="Rizin Core Team <team@rizin.re>" ;
|
||||
}
|
||||
|
||||
show_usage() {
|
||||
cat <<EOF2
|
||||
'configure' configures rizin-0.2.0-git to adapt to many kinds of systems.
|
||||
|
||||
Usage: ./configure [OPTION]... [VAR=VALUE]...
|
||||
|
||||
To assign environment variables (e.g., CC, CFLAGS...), specify them as
|
||||
VAR=VALUE. See below for descriptions of some of the useful variables.
|
||||
|
||||
Defaults for the options are specified in brackets.
|
||||
|
||||
Configuration:
|
||||
-h, --help display this help and exit
|
||||
-r, --report show what libs/programs require to work
|
||||
-q, --quiet be quiet, less verbose (see ./configure -qV)
|
||||
-V, --version display version information and exit
|
||||
|
||||
Installation directories:
|
||||
--exec-prefix=EPREFIX install arch-dependent files in EPREFIX [PREFIX]
|
||||
--prefix=PREFIX install arch-independent files in PREFIX [/usr/local]
|
||||
--sandbox=SPREFIX sandbox prefix directory: SPREFIX [PREFIX]
|
||||
|
||||
Fine tuning of the installation directories:
|
||||
--bindir=DIR user executables [EPREFIX/bin]
|
||||
--datadir=DIR read-only architecture-independent data [PREFIX/share]
|
||||
--docdir=DIR documentation directory [DATADIR/doc/rizin]
|
||||
--includedir=DIR C header files [PREFIX/include]
|
||||
--infodir=DIR info documentation [DATADIR/info]
|
||||
--libexecdir=DIR program executables [EPREFIX/libexec]
|
||||
--libdir=DIR object code libraries [EPREFIX/lib]
|
||||
--libpath=DIR set rpath/libname-path to linker
|
||||
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
|
||||
--mandir=DIR man documentation [DATADIR/man]
|
||||
--sbindir=DIR system admin executables [EPREFIX/sbin]
|
||||
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
|
||||
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
|
||||
|
||||
System types:
|
||||
--build=BUILD configure for building on BUILD [guessed]
|
||||
--host=HOST cross-compile to build programs to run on HOST [BUILD]
|
||||
--target=TARGET configure for building compilers for TARGET [HOST]
|
||||
EOF2
|
||||
|
||||
printf "\nOptional Features:
|
||||
--disable-debugger disable native debugger features
|
||||
--with-sysmagic force to use system's magic
|
||||
--with-capstone5 build next branch of the capstone repository
|
||||
--disable-loadlibs disable loading plugins
|
||||
--without-dylink disable support for dynamic loading of plugins
|
||||
--without-fork disable fork
|
||||
--without-ptrace-wrap disable ptrace-wrap build
|
||||
--with-librz build librz.a and librz.dylib
|
||||
--with-syscapstone force to use system-wide capstone
|
||||
--with-syszip force to use system's libzip and zlib
|
||||
--with-sysxxhash force to use system's xxhash
|
||||
--without-gpl do not build GPL code (cxx, ... )
|
||||
--with-openssl build with openssl if possible
|
||||
--without-libuv disable libuv dependency
|
||||
--with-rpath use rpath to build
|
||||
--with-compiler Define compiler to use (see mk/) (USERCC=gcc)
|
||||
--with-ostype Choose OS type ( gnulinux windows darwin haiku ) (USEROSTYPE=auto)
|
||||
--with-libversion specify different libversion (LIBVERSION=xxx)
|
||||
--without-jemalloc build without jemalloc
|
||||
--without-rz-test build without rz-test for regression testing
|
||||
--with-checks-level value between 0 and 3 to enable different level of assert (see RZ_CHECKS_LEVEL) (RZ_CHECKS_LEVEL=2)\n"
|
||||
printf "\nSome influential environment variables:
|
||||
CC C compiler command
|
||||
CFLAGS C compiler flags
|
||||
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
|
||||
nonstandard directory <lib dir>
|
||||
CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have
|
||||
headers in a nonstandard directory <include dir>
|
||||
CPP C preprocessor\n"
|
||||
printf "\nReport bugs to: Rizin Core Team <team@rizin.re>"
|
||||
echo ""
|
||||
exit 0
|
||||
}
|
||||
|
||||
take_environ() {
|
||||
: ${SH:=/bin/sh}
|
||||
: ${CPP:=cpp}
|
||||
: ${CC:=gcc}
|
||||
: ${PREFIX:=/usr/local/}
|
||||
}
|
||||
|
||||
ochof() {
|
||||
[ "$QUIET" = 1 ] && return
|
||||
printf "$*"
|
||||
}
|
||||
|
||||
ocho() {
|
||||
[ "$QUIET" = 1 ] && return
|
||||
echo "$*"
|
||||
}
|
||||
|
||||
show_version() {
|
||||
if [ "$QUIET" = 1 ]; then
|
||||
echo "0.2.0-git"
|
||||
exit 0
|
||||
fi
|
||||
echo "rizin-0.2.0-git configuration script done with acr v1.9.4.
|
||||
The 'Free Software Foundation' message is only for autodetection.
|
||||
Originally written by pancake <nopcode.org>."
|
||||
exit 0
|
||||
}
|
||||
|
||||
parse_options() {
|
||||
flag=`echo $1| cut -d = -f 1`
|
||||
value=`echo $1| $AWK 'BEGIN{FS="=";}{print $2}'`
|
||||
flag2=`echo $flag|cut -f2- -d -| sed -e 's,-,_,g' -e 's,^_,,g'|tr '[a-z]' '[A-Z]'`
|
||||
|
||||
if [ "${TARGET_OS}" = "darwin" ]; then
|
||||
LIBPATH=-Wl,-install_name,
|
||||
else
|
||||
LIBPATH=-Wl,-R
|
||||
fi
|
||||
|
||||
case $flag in
|
||||
-h|--help|--hel|--h|--he|-help)
|
||||
show_usage ; ;;
|
||||
-qV|-quiet-version|--quiet-version)
|
||||
be_quiet
|
||||
show_version ; ;;
|
||||
-q|-quiet|--quiet)
|
||||
be_quiet ; ;;
|
||||
-V|-version|--version)
|
||||
show_version ; ;;
|
||||
-r|--r|--report)
|
||||
echo "PKGNAME: rizin"
|
||||
echo "VERSION: 0.2.0-git"
|
||||
echo "LANGS: c"
|
||||
echo "REQUIRED: libdl"
|
||||
echo "OPTIONAL: libmagic libz libzip libxxhash libssl liblibuv>=1.0.0"
|
||||
echo "PKG-CONFIG: capstone openssl libuv"
|
||||
echo "FLAGS: --disable-debugger --with-sysmagic --with-capstone5 --disable-loadlibs --without-dylink --without-fork --without-ptrace-wrap --with-librz --with-syscapstone --with-syszip --with-sysxxhash --without-gpl --with-openssl --without-libuv --with-rpath --with-compiler=gcc --with-ostype=auto --with-libversion=xxx --without-jemalloc --without-rz-test --with-checks-level=2"
|
||||
exit 0
|
||||
;;
|
||||
--cache-file)
|
||||
# ignored: acr have no cache
|
||||
;;
|
||||
--build)
|
||||
BUILD="$value"; split_host BUILD ; ;;
|
||||
--host)
|
||||
CROSSBUILD=1 # XXX
|
||||
HOST="$value"; split_host HOST ; ;;
|
||||
--target)
|
||||
TARGET="$value"; split_host TARGET ; ;;
|
||||
--prefix)
|
||||
PREFIX="$value"; ;;
|
||||
--exec-prefix)
|
||||
EPREFIX="$value"; ;;
|
||||
--sandbox|--sprefix)
|
||||
SPREFIX="$value"; ;;
|
||||
--bindir)
|
||||
BINDIR="$value"; ;;
|
||||
--sbindir)
|
||||
SBINDIR="$value"; ;;
|
||||
--libexecdir)
|
||||
LIBEXECDIR="$value"; ;;
|
||||
--docdir)
|
||||
DOCDIR="$value"; ;;
|
||||
--datadir)
|
||||
DATADIR="$value"; ;;
|
||||
--sysconfdir)
|
||||
SYSCONFDIR="$value"; ;;
|
||||
--sharedstatedir)
|
||||
SHAREDSTATEDIR="$value"; ;;
|
||||
--localstatedir)
|
||||
LOCALSTATEDIR="$value"; ;;
|
||||
--libdir)
|
||||
LIBDIR="$value"; ;;
|
||||
--libpath)
|
||||
LDFLAGS="${LDFLAGS} ${LIBPATH}$value"; ;;
|
||||
--includedir)
|
||||
INCLUDEDIR="$value"; CFLAGS="${CFLAGS} -I$value"; ;;
|
||||
--infodir)
|
||||
INFODIR="$value"; ;;
|
||||
--mandir)
|
||||
MANDIR="$value"; ;;
|
||||
|
||||
"--disable-debugger") DEBUGGER="0"; ;;
|
||||
"--with-sysmagic") USE_MAGIC="1"; ;;
|
||||
"--with-capstone5") CSNEXT="1"; ;;
|
||||
"--disable-loadlibs") LOADLIBS="0"; ;;
|
||||
"--without-dylink") WANT_DYLINK="0"; ;;
|
||||
"--without-fork") HAVE_FORK="0"; ;;
|
||||
"--without-ptrace-wrap") WANT_PTRACE_WRAP="0"; ;;
|
||||
"--with-librz") WITH_LIBRZ="1"; ;;
|
||||
"--with-syscapstone") WITH_CAPSTONE="1"; ;;
|
||||
"--with-syszip") USE_ZIP="1"; ;;
|
||||
"--with-sysxxhash") USE_XXHASH="1"; ;;
|
||||
"--without-gpl") WITH_GPL="0"; ;;
|
||||
"--with-openssl") WANT_OPENSSL="1"; ;;
|
||||
"--without-libuv") WANT_LIBUV="0"; ;;
|
||||
"--with-rpath") USE_RPATH="1"; ;;
|
||||
--with-compiler) if [ -z "${value}" ]; then USERCC="gcc"; else USERCC="${value}" ; fi ;;
|
||||
--with-ostype) if [ -z "${value}" ]; then USEROSTYPE="auto"; else USEROSTYPE="${value}" ; fi ;;
|
||||
--with-libversion) if [ -z "${value}" ]; then LIBVERSION="xxx"; else LIBVERSION="${value}" ; fi ;;
|
||||
"--without-jemalloc") HAVE_JEMALLOC="0"; ;;
|
||||
"--without-rz-test") WANT_RZ_TEST="0"; ;;
|
||||
--with-checks-level) if [ -z "${value}" ]; then RZ_CHECKS_LEVEL="2"; else RZ_CHECKS_LEVEL="${value}" ; fi ;;
|
||||
*) if [ "$value" ]; then eval "`echo $flag2=$value`" ;
|
||||
else echo ; echo "WARNING: Unknown flag '$flag'." >&2 ; echo ; fi ;;
|
||||
esac
|
||||
}
|
||||
|
||||
# MAIN #
|
||||
take_environ
|
||||
split_host BUILD HOST TARGET
|
||||
[ -z "$ACRHOOK" ] && ACRHOOK=./configure.hook
|
||||
[ -e "$ACRHOOK" ] && . ${ACRHOOK}
|
||||
|
||||
while : ; do
|
||||
[ -z "$1" ] && break
|
||||
parse_options "$1"
|
||||
shift
|
||||
done
|
||||
|
||||
ENVWORDS="MANDIR INFODIR LIBDIR INCLUDEDIR LOCALSTATEDIR SYSCONFDIR DATADIR DOCDIR LIBEXECDIR SBINDIR BINDIR EPREFIX PREFIX SPREFIX TARGET HOST BUILD INSTALL INSTALL_LIB INSTALL_MAN INSTALL_PROGRAM INSTALL_PROGRAM_STRIP INSTALL_DIR INSTALL_SCRIPT INSTALL_DATA HOST_OS HOST_CPU BUILD_OS BUILD_CPU TARGET_OS TARGET_CPU VERSION VERSION_MAJOR VERSION_MINOR VERSION_PATCH VERSION_NUMBER PKGNAME VPATH CONTACT CONTACT_NAME CONTACT_MAIL CC CFLAGS CPPFLAGS LDFLAGS HAVE_LANG_C DEBUGGER HAVE_LIB_DL DL_LIBS HAVE_PATCH PATCH HAVE_GIT GIT HAVE_LIB_MAGIC USE_MAGIC USE_LIB_MAGIC LIBMAGIC CSNEXT LOADLIBS WANT_DYLINK HAVE_FORK WANT_PTRACE_WRAP WITH_LIBRZ WITH_CAPSTONE CAPSTONE_CFLAGS CAPSTONE_LDFLAGS HAVE_PKGCFG_CAPSTONE USE_CAPSTONE HAVE_LIB_Z HAVE_LIB_ZIP USE_ZIP USE_LIB_ZIP LIBZIP HAVE_LIB_XXHASH USE_XXHASH USE_LIB_XXHASH LIBXXHASH WITH_GPL HAVE_DECL_ADDR_NO_RANDOMIZE HAVE_DECL___GLIBC__ HAVE_ARC4RANDOM_UNIFORM HAVE_EXPLICIT_BZERO HAVE_EXPLICIT_MEMSET HAVE_CLOCK_NANOSLEEP HAVE_SIGACTION HAVE_CLOCK_GETTIME HAVE_PIPE HAVE_EXECV HAVE_EXECVE HAVE_EXECVP HAVE_EXECL HAVE_SYSTEM HAVE_PIPE2 CLOCK_LDFLAGS SUPPORT_GNU99 SUPPORT_C99 HAVE_LIB_GMP HAVE_LIB_SSL SSL_CFLAGS SSL_LDFLAGS HAVE_PKGCFG_OPENSSL HAVE_OPENSSL WANT_OPENSSL HAVE_LIBUV_VERSION_1_0_0 LIBUV_CFLAGS LIBUV_LDFLAGS HAVE_PKGCFG_LIBUV HAVE_LIBUV WANT_LIBUV USE_RPATH USERCC USEROSTYPE LIBVERSION HAVE_JEMALLOC HAVE_PTRACE USE_PTRACE_WRAP WANT_RZ_TEST RZ_CHECKS_LEVEL"
|
||||
|
||||
create_environ
|
||||
|
||||
ocho "checking build system type... ${BUILD}"
|
||||
ocho "checking host system type... ${HOST}"
|
||||
ocho "checking target system type... ${TARGET}"
|
||||
[ "${CROSSBUILD}" = 1 ] && echo "using crosscompilation mode."
|
||||
|
||||
#split_host BUILD HOST TARGET
|
||||
[ -n "${prefix}" ] && PREFIX="${prefix}"
|
||||
ocho "checking for working directories... ${WODIS}"
|
||||
ocho "using prefix '${PREFIX}'"
|
||||
ACR_RMFILES=" test.c a.out a.exe"
|
||||
|
||||
|
||||
COMPILER=CC
|
||||
printf "checking for c compiler... "
|
||||
HAVE_LANG_C=1
|
||||
if [ "${CROSSBUILD}" = 1 ]; then
|
||||
(command -v ${HOST}-${CC} >/dev/null 2>&1)
|
||||
if [ $? = 0 ]; then CC="${HOST}-${CC}"; fi
|
||||
fi
|
||||
echo "int main(int argc, char **argv){return 0;}" > test.c
|
||||
(exec ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c >/dev/null 2>&1)
|
||||
if [ $? = 0 ]; then echo ${CC}; else
|
||||
echo no ; HAVE_LANG_C=0
|
||||
do_remove
|
||||
echo "ERROR: ${CC} cannot create executables" >&2 ;
|
||||
exit 1 ; fi
|
||||
printf "checking for dynamic library... "
|
||||
HAVE_LIB_DL=0
|
||||
for OS in gnulinux linux gnu/kfreebsd syllable sunos darwin beos solaris wsl ; do
|
||||
if [ "${HOST_OS}" = "${OS}" ]; then
|
||||
HAVE_LIB_DL=1
|
||||
break;
|
||||
fi
|
||||
done
|
||||
if [ "${HAVE_LIB_DL}" = 1 ]; then
|
||||
DL_LIBS="-ldl"
|
||||
echo "required"
|
||||
else
|
||||
DL_LIBS=""
|
||||
echo "libc"
|
||||
fi
|
||||
ochof "checking for patch... "
|
||||
if [ -x "${PATCH}" ]; then
|
||||
FIND=${PATCH}
|
||||
else
|
||||
FIND=""
|
||||
IFS=:
|
||||
for A in ${PATH} ; do
|
||||
if [ -x "${A}/patch" ]; then
|
||||
FIND="${A}/patch"
|
||||
break;
|
||||
fi
|
||||
done
|
||||
unset IFS
|
||||
fi
|
||||
if [ -n "${FIND}" ]; then
|
||||
ocho ${FIND};
|
||||
HAVE_PATCH=1
|
||||
PATCH=${FIND}
|
||||
else
|
||||
HAVE_PATCH=0
|
||||
PATCH=patch
|
||||
if [ "" = 1 ]; then
|
||||
echo "Cannot find patch" >&2
|
||||
else
|
||||
echo no
|
||||
fi
|
||||
echo "error: This program is required." >&2
|
||||
exit 1 ; fi
|
||||
ochof "checking for git... "
|
||||
if [ -x "${GIT}" ]; then
|
||||
FIND=${GIT}
|
||||
else
|
||||
FIND=""
|
||||
IFS=:
|
||||
for A in ${PATH} ; do
|
||||
if [ -x "${A}/git" ]; then
|
||||
FIND="${A}/git"
|
||||
break;
|
||||
fi
|
||||
done
|
||||
unset IFS
|
||||
fi
|
||||
if [ -n "${FIND}" ]; then
|
||||
ocho ${FIND};
|
||||
HAVE_GIT=1
|
||||
GIT=${FIND}
|
||||
else
|
||||
HAVE_GIT=0
|
||||
GIT=git
|
||||
if [ "" = 1 ]; then
|
||||
echo "Cannot find git" >&2
|
||||
else
|
||||
echo no
|
||||
fi ; fi
|
||||
check_library() {
|
||||
VAR=$1
|
||||
S="$"
|
||||
_REQUIRED=$3
|
||||
_CHKLIB_NAME=$2
|
||||
_CHKLIB_LIBS=$(echo "-l${_CHKLIB_NAME}" | sed 's,+, -l,g')
|
||||
printf "checking for lib${_CHKLIB_NAME} ... "
|
||||
echo "int main(int ac, char **av){return 0;}" > test.c
|
||||
eval ${S}${COMPILER} ${CFLAGS} ${CPPFLAGS} ${CXXFLAGS} ${LDFLAGS} ${_CHKLIB_LIBS} test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
eval ${VAR}=1
|
||||
echo yes
|
||||
else
|
||||
eval ${VAR}=0
|
||||
echo no
|
||||
if [ "${_REQUIRED}" = 1 ]; then
|
||||
echo "this library is required."
|
||||
do_remove
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
check_library HAVE_LIB_MAGIC magic 0
|
||||
if [ 11 = "$HAVE_LIB_MAGIC$USE_MAGIC" ]; then
|
||||
|
||||
USE_LIB_MAGIC="1"
|
||||
LIBMAGIC="-lmagic"
|
||||
else
|
||||
USE_LIB_MAGIC="0"
|
||||
LIBMAGIC=""; fi
|
||||
if [ "$WITH_CAPSTONE" = "1" ]; then
|
||||
[ -z "${PKGCONFIG}" ] && PKGCONFIG=pkg-config
|
||||
type ${PKGCONFIG} > /dev/null 2>&1 || echo "ERROR: Cannot find PKGCONFIG ${PKGCONFIG}"
|
||||
echo 'Using PKGCONFIG: '${PKGCONFIG}
|
||||
printf 'checking pkg-config flags for capstone... '
|
||||
tmp=`${PKGCONFIG} --cflags capstone 2>/dev/null`
|
||||
if [ $? != 0 ]; then echo no ; HAVE_PKGCFG_CAPSTONE=0;
|
||||
CAPSTONE_CFLAGS='';CAPSTONE_LDFLAGS='';
|
||||
else
|
||||
CAPSTONE_CFLAGS=$tmp;
|
||||
tmp=`${PKGCONFIG} --libs capstone 2>/dev/null`
|
||||
if [ $? = 0 ]; then
|
||||
echo yes; HAVE_PKGCFG_CAPSTONE=1;
|
||||
CAPSTONE_LDFLAGS=$tmp; fi; fi; fi
|
||||
if [ 11 = "$WITH_CAPSTONE$HAVE_PKGCFG_CAPSTONE" ]; then
|
||||
|
||||
USE_CAPSTONE="1"
|
||||
else
|
||||
USE_CAPSTONE="0"; fi
|
||||
check_library HAVE_LIB_Z z 0
|
||||
check_library HAVE_LIB_ZIP zip 0
|
||||
if [ 11 = "$HAVE_LIB_Z$USE_ZIP" ]; then
|
||||
|
||||
if [ "$HAVE_LIB_ZIP" = "1" ]; then
|
||||
USE_LIB_ZIP="1"
|
||||
LIBZIP="-lz -lzip"
|
||||
else
|
||||
USE_LIB_ZIP="0"
|
||||
LIBZIP=""; fi
|
||||
else
|
||||
USE_LIB_ZIP="0"
|
||||
LIBZIP=""; fi
|
||||
check_library HAVE_LIB_XXHASH xxhash 0
|
||||
if [ 11 = "$HAVE_LIB_XXHASH$USE_XXHASH" ]; then
|
||||
|
||||
USE_LIB_XXHASH="1"
|
||||
LIBXXHASH="-lxxhash"
|
||||
else
|
||||
USE_LIB_XXHASH="0"
|
||||
LIBXXHASH=""; fi
|
||||
printf "checking declaration of ADDR_NO_RANDOMIZE in sys/personality.h... "
|
||||
echo "#include <sys/personality.h>" > test.c
|
||||
echo "int main(int ac, char **av){ void *a = ADDR_NO_RANDOMIZE; return 0; }" >> test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_DECL_ADDR_NO_RANDOMIZE=1
|
||||
else
|
||||
HAVE_DECL_ADDR_NO_RANDOMIZE=0 ; echo no ; fi
|
||||
printf "checking declaration of __GLIBC__ in features.h... "
|
||||
echo "#include <features.h>" > test.c
|
||||
echo "int main(int ac, char **av){ void *a = __GLIBC__; return 0; }" >> test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_DECL___GLIBC__=1
|
||||
else
|
||||
HAVE_DECL___GLIBC__=0 ; echo no ; fi
|
||||
printf "checking function arc4random_uniform() in c... "
|
||||
echo "int main(int ac, char **av){ arc4random_uniform(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_ARC4RANDOM_UNIFORM=1
|
||||
else
|
||||
HAVE_ARC4RANDOM_UNIFORM=0 ; echo no ; fi
|
||||
printf "checking function explicit_bzero() in c... "
|
||||
echo "int main(int ac, char **av){ explicit_bzero(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_EXPLICIT_BZERO=1
|
||||
else
|
||||
HAVE_EXPLICIT_BZERO=0 ; echo no ; fi
|
||||
printf "checking function explicit_memset() in c... "
|
||||
echo "int main(int ac, char **av){ explicit_memset(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_EXPLICIT_MEMSET=1
|
||||
else
|
||||
HAVE_EXPLICIT_MEMSET=0 ; echo no ; fi
|
||||
printf "checking function clock_nanosleep() in c... "
|
||||
echo "int main(int ac, char **av){ clock_nanosleep(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_CLOCK_NANOSLEEP=1
|
||||
else
|
||||
HAVE_CLOCK_NANOSLEEP=0 ; echo no ; fi
|
||||
printf "checking function sigaction() in c... "
|
||||
echo "int main(int ac, char **av){ sigaction(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_SIGACTION=1
|
||||
else
|
||||
HAVE_SIGACTION=0 ; echo no ; fi
|
||||
printf "checking function clock_gettime() in c... "
|
||||
echo "int main(int ac, char **av){ clock_gettime(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_CLOCK_GETTIME=1
|
||||
else
|
||||
HAVE_CLOCK_GETTIME=0 ; echo no ; fi
|
||||
printf "checking function pipe() in c... "
|
||||
echo "int main(int ac, char **av){ pipe(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_PIPE=1
|
||||
else
|
||||
HAVE_PIPE=0 ; echo no ; fi
|
||||
printf "checking function execv() in c... "
|
||||
echo "int main(int ac, char **av){ execv(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_EXECV=1
|
||||
else
|
||||
HAVE_EXECV=0 ; echo no ; fi
|
||||
printf "checking function execve() in c... "
|
||||
echo "int main(int ac, char **av){ execve(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_EXECVE=1
|
||||
else
|
||||
HAVE_EXECVE=0 ; echo no ; fi
|
||||
printf "checking function execvp() in c... "
|
||||
echo "int main(int ac, char **av){ execvp(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_EXECVP=1
|
||||
else
|
||||
HAVE_EXECVP=0 ; echo no ; fi
|
||||
printf "checking for HAVE_EXECL... "
|
||||
echo "#include <unistd.h>" > temp.c ; echo "int main(int argc, char **argv) { void *x = (void *)execl; return 0;}" >> temp.c ; ${CC} temp.c ; HAVE_EXECL=$? ; rm -f temp.c
|
||||
if [ "$HAVE_EXECL" = 0 ]; then
|
||||
HAVE_EXECL=1
|
||||
echo yes
|
||||
else
|
||||
HAVE_EXECL=0
|
||||
echo no
|
||||
fi
|
||||
printf "checking function system() in c... "
|
||||
echo "int main(int ac, char **av){ system(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_SYSTEM=1
|
||||
else
|
||||
HAVE_SYSTEM=0 ; echo no ; fi
|
||||
printf "checking function pipe2() in c... "
|
||||
echo "int main(int ac, char **av){ pipe2(0); return 0; }" > test.c
|
||||
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -lc test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; HAVE_PIPE2=1
|
||||
else
|
||||
HAVE_PIPE2=0 ; echo no ; fi
|
||||
if [ "$HAVE_CLOCK_GETTIME" = "0" ]; then
|
||||
if [ "$HAVE_DECL___GLIBC__" = "1" ]; then
|
||||
CLOCK_LDFLAGS="${CLOCK_LDFLAGS} '-lrt'"; fi; fi
|
||||
printf "checking cflags -std=gnu99... "
|
||||
echo "int main(int ac, char **av){ return 0; }" > .test.c
|
||||
${CC} -std=gnu99 ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -std=gnu99 .test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; SUPPORT_GNU99=1
|
||||
else
|
||||
SUPPORT_GNU99=0 ; echo no ; fi
|
||||
if [ "$SUPPORT_GNU99" = "1" ]; then
|
||||
CFLAGS="${CFLAGS} '-std=gnu99'"
|
||||
else
|
||||
printf "checking cflags -std=c99... "
|
||||
echo "int main(int ac, char **av){ return 0; }" > .test.c
|
||||
${CC} -std=c99 ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -std=c99 .test.c >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
echo yes ; SUPPORT_C99=1
|
||||
else
|
||||
SUPPORT_C99=0 ; echo no ; fi
|
||||
if [ "$SUPPORT_C99" = "1" ]; then
|
||||
CFLAGS="${CFLAGS} '-std=c99'"; fi; fi
|
||||
HAVE_LIB_GMP="0"
|
||||
check_library HAVE_LIB_SSL ssl 0
|
||||
[ -z "${PKGCONFIG}" ] && PKGCONFIG=pkg-config
|
||||
printf 'checking pkg-config flags for openssl... '
|
||||
tmp=`${PKGCONFIG} --cflags openssl 2>/dev/null`
|
||||
if [ $? != 0 ]; then echo no ; HAVE_PKGCFG_OPENSSL=0;
|
||||
SSL_CFLAGS='';SSL_LDFLAGS='';
|
||||
else
|
||||
SSL_CFLAGS=$tmp;
|
||||
tmp=`${PKGCONFIG} --libs openssl 2>/dev/null`
|
||||
if [ $? = 0 ]; then
|
||||
echo yes; HAVE_PKGCFG_OPENSSL=1;
|
||||
SSL_LDFLAGS=$tmp; fi; fi
|
||||
if [ ! "$SSL_LDFLAGS" = "" ]; then
|
||||
HAVE_OPENSSL="1"; fi
|
||||
if [ 11 = "$WANT_OPENSSL$HAVE_OPENSSL" ]; then
|
||||
|
||||
HAVE_OPENSSL="1"
|
||||
else
|
||||
HAVE_OPENSSL="0"; fi
|
||||
if [ "$SSL_LDFLAGS" = "" ]; then
|
||||
if [ "$HAVE_LIB_SSL" = "0" ]; then
|
||||
HAVE_OPENSSL="0"
|
||||
else
|
||||
SSL_LDFLAGS="-lssl"; fi; fi
|
||||
HAVE_LIBUV_VERSION_1_0_0=0
|
||||
printf "checking version of library libuv >= 1.0.0... "
|
||||
${PKGCONFIG} --atleast-version=1.0.0 libuv >/dev/null 2>&1
|
||||
if [ $? = 0 ]; then HAVE_LIBUV_VERSION_1_0_0=1 ; echo ok; else
|
||||
echo "no" ; fi
|
||||
if [ "$HAVE_LIBUV_VERSION_1_0_0" = "1" ]; then
|
||||
[ -z "${PKGCONFIG}" ] && PKGCONFIG=pkg-config
|
||||
printf 'checking pkg-config flags for libuv... '
|
||||
tmp=`${PKGCONFIG} --cflags libuv 2>/dev/null`
|
||||
if [ $? != 0 ]; then echo no ; HAVE_PKGCFG_LIBUV=0;
|
||||
LIBUV_CFLAGS='';LIBUV_LDFLAGS='';
|
||||
else
|
||||
LIBUV_CFLAGS=$tmp;
|
||||
tmp=`${PKGCONFIG} --libs libuv 2>/dev/null`
|
||||
if [ $? = 0 ]; then
|
||||
echo yes; HAVE_PKGCFG_LIBUV=1;
|
||||
LIBUV_LDFLAGS=$tmp; fi; fi
|
||||
if [ ! "$LIBUV_LDFLAGS" = "" ]; then
|
||||
HAVE_LIBUV="1"
|
||||
else
|
||||
HAVE_LIBUV="0"; fi
|
||||
if [ "$WANT_LIBUV" = "0" ]; then
|
||||
HAVE_LIBUV="0"; fi
|
||||
else
|
||||
HAVE_LIBUV="0"; fi
|
||||
if [ "$USEROSTYPE" = "auto" ]; then
|
||||
if [ "$HOST_OS" = "linux" ]; then
|
||||
USEROSTYPE="gnulinux"
|
||||
else
|
||||
if [ "$HOST_OS" = "gnu" ]; then
|
||||
USEROSTYPE="gnulinux"
|
||||
HAVE_LIB_DL="1"
|
||||
DL_LIBS="-ldl"
|
||||
else
|
||||
if [ "$HOST_OS" = "sunos" ]; then
|
||||
USEROSTYPE="solaris"
|
||||
else
|
||||
if [ "$HOST_OS" = "gnu/kfreebsd" ]; then
|
||||
USEROSTYPE="bsd"
|
||||
else
|
||||
if [ "$HOST_OS" = "netbsd" ]; then
|
||||
USEROSTYPE="bsd"
|
||||
else
|
||||
if [ "$HOST_OS" = "freebsd" ]; then
|
||||
USEROSTYPE="bsd"
|
||||
else
|
||||
if [ "$HOST_OS" = "openbsd" ]; then
|
||||
USEROSTYPE="bsd"
|
||||
else
|
||||
if [ "$HOST_OS" = "darwin" ]; then
|
||||
USEROSTYPE="darwin"
|
||||
else
|
||||
if [ "$HOST_OS" = "haiku" ]; then
|
||||
USEROSTYPE="haiku"; fi; fi; fi; fi; fi; fi; fi; fi; fi; fi;
|
||||
if [ "$LIBVERSION" = "xxx" ]; then
|
||||
LIBVERSION="$VERSION"; fi
|
||||
if [ "$USEROSTYPE" = "gnulinux" ]; then
|
||||
HAVE_PTRACE="1"
|
||||
USE_PTRACE_WRAP="1"
|
||||
else
|
||||
if [ "$USEROSTYPE" = "wsl" ]; then
|
||||
BUILD="${SPLIT_CPU}-unknown-linux-gnu"
|
||||
HOST="$BUILD"
|
||||
TARGET="$HOST"
|
||||
USEROSTYPE="gnulinux"
|
||||
HAVE_PTRACE="1"
|
||||
USE_PTRACE_WRAP="0"
|
||||
else
|
||||
if [ "$USEROSTYPE" = "android" ]; then
|
||||
HAVE_PTRACE="1"
|
||||
USE_PTRACE_WRAP="1"
|
||||
else
|
||||
if [ "$USEROSTYPE" = "solaris" ]; then
|
||||
HAVE_PTRACE="0"
|
||||
USE_PTRACE_WRAP="0"
|
||||
else
|
||||
if [ "$USEROSTYPE" = "haiku" ]; then
|
||||
HAVE_PTRACE="0"
|
||||
USE_PTRACE_WRAP="0"
|
||||
else
|
||||
HAVE_PTRACE="1"
|
||||
USE_PTRACE_WRAP="0"; fi; fi; fi; fi; fi
|
||||
if [ "$DEBUGGER" = "0" ]; then
|
||||
HAVE_PTRACE="0"; fi
|
||||
if [ "$WANT_PTRACE_WRAP" = "0" ]; then
|
||||
USE_PTRACE_WRAP="0"; fi
|
||||
SEDFLAGS=" -e '"
|
||||
COUNT=0
|
||||
for A in ${ENVWORDS} ; do
|
||||
[ "${A}" = VPATH ] && continue
|
||||
[ "${A}" = srcdir ] && continue
|
||||
eval "VAR=\$${A}"
|
||||
VAR="`echo ${VAR} | sed -e 's/\,/\\\,/g'`"
|
||||
[ $COUNT = 10 ] && COUNT=0 && SEDFLAGS="${SEDFLAGS}' -e '"
|
||||
COUNT=$(($COUNT+1))
|
||||
SEDFLAGS="${SEDFLAGS}s,@${A}@,${VAR},g;"
|
||||
done
|
||||
SEDFLAGS="${SEDFLAGS}'"
|
||||
for A in ./config-user.mk librz/include/rz_userconf.h pkgcfg/rz_io.pc pkgcfg/rz_magic.pc pkgcfg/rz_asm.pc pkgcfg/rz_bin.pc pkgcfg/rz_analysis.pc pkgcfg/rz_hash.pc pkgcfg/rz_cons.pc pkgcfg/rz_core.pc pkgcfg/rz_lang.pc pkgcfg/rz_socket.pc pkgcfg/rz_debug.pc pkgcfg/rz_reg.pc pkgcfg/rz_config.pc pkgcfg/rz_flag.pc pkgcfg/rz_syscall.pc pkgcfg/rz_util.pc pkgcfg/rz_search.pc pkgcfg/rz_bp.pc pkgcfg/rz_parse.pc pkgcfg/rz_egg.pc pkgcfg/rz_crypto.pc ; do # SUBDIRS
|
||||
if [ -f "${VPATH}/${A}.acr" ]; then
|
||||
SD_TARGET=${A}
|
||||
else
|
||||
if [ -d "${VPATH}/${A}" ]; then
|
||||
SD_TARGET=${A}/Makefile
|
||||
mkdir -p ${A}
|
||||
else
|
||||
echo "ERROR: Cannot find ${VPATH}/${A}.acr" >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
ocho "creating ${SD_TARGET}"
|
||||
mkdir -p $(echo ${A} | sed -e "s,/`basename ${A}`$,,g")
|
||||
cat ${VPATH}/${SD_TARGET}.acr | \
|
||||
eval sed -e "s,@VPATH@,${VPATH}/${A},g" ${SEDFLAGS} > ${SD_TARGET}.tmp
|
||||
|
||||
for A in ${ENVWORDS}; do
|
||||
VALUE=`eval echo "$"${A}`
|
||||
if [ "$VALUE" = 0 ]; then ## FALSE
|
||||
MARK="##${A}##"
|
||||
if [ -n "`grep \"${MARK}\" ${SD_TARGET}.tmp`" ]; then
|
||||
mv ${SD_TARGET}.tmp ${SD_TARGET}.tmp2
|
||||
cat ${SD_TARGET}.tmp2 | MARK=$MARK $AWK 'BEGIN{a=0;}{if($1==ENVIRON["MARK"]){if(a)a=0;else a=1}else{if(!a)print;}}' > ${SD_TARGET}.tmp
|
||||
fi
|
||||
fi
|
||||
done
|
||||
mv ${SD_TARGET}.tmp ${SD_TARGET} && rm -f ${SD_TARGET}.tmp2
|
||||
if [ ! $? = 0 ]; then echo Cannot write target file ; control_c ; fi
|
||||
done
|
||||
|
||||
do_remove
|
||||
if [ "$QUIET" = 0 ]; then
|
||||
echo
|
||||
echo "Final report:"
|
||||
for A in RZ_CHECKS_LEVEL WANT_RZ_TEST PREFIX HAVE_LIB_GMP HAVE_OPENSSL HAVE_LIBUV USE_CAPSTONE HAVE_PTRACE USE_PTRACE_WRAP HAVE_FORK VERSION USE_LIB_ZIP USE_LIB_MAGIC USE_LIB_XXHASH DEBUGGER CC USERCC HAVE_ARC4RANDOM_UNIFORM HAVE_EXPLICIT_BZERO HAVE_EXPLICIT_MEMSET WANT_DYLINK USEROSTYPE LIBVERSION BUILD HOST TARGET ; do
|
||||
eval VAL="\$${A}"
|
||||
[ -z "${VAL}" ] && VAL="(null)"
|
||||
echo " - ${A} = ${VAL}"
|
||||
done
|
||||
fi
|
||||
|
|
@ -1,251 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Script to configure "staticability" of plugins
|
||||
# author: pancake // nopcode
|
||||
# update: 2010-01-14
|
||||
#
|
||||
|
||||
LANG=C
|
||||
LC_ALL=C
|
||||
LOADLIBS=1
|
||||
|
||||
export LANG
|
||||
export LC_ALL
|
||||
|
||||
list () {
|
||||
for a in $STATIC ; do echo "static $a" ; done
|
||||
for a in $SHARED ; do echo "shared $a" ; done
|
||||
exit 0
|
||||
}
|
||||
|
||||
help () {
|
||||
echo "Usage: ./configure-plugins [options]"
|
||||
echo " -n do nothing.. do not generate any file"
|
||||
echo " --list list all static and shared plugins"
|
||||
echo " --rm-static [dir] remove plugins that are already in core from dir"
|
||||
echo " --static [name ..] define named plugin as static"
|
||||
echo " --shared [name ..] define named plugin as shared"
|
||||
echo " --help, -h display this helpful message"
|
||||
echo "NOTE: static plugins are compiled inside the owner library"
|
||||
exit 0
|
||||
}
|
||||
|
||||
cfg=./plugins.cfg
|
||||
|
||||
if [ ! -f "$cfg" ]; then
|
||||
cp -f ./plugins.def.cfg plugins.cfg
|
||||
fi
|
||||
|
||||
load () {
|
||||
if [ -e $cfg ]; then
|
||||
echo "configure-plugins: Loading $cfg .."
|
||||
. $cfg
|
||||
else
|
||||
echo "configure-plugins: Loading $1 .."
|
||||
. "$1" #plugins.def.cfg
|
||||
fi
|
||||
}
|
||||
|
||||
save () {
|
||||
cp $cfg plugins.cfg
|
||||
# echo "STATIC=\"$STATIC\"" > $cfg
|
||||
# echo "SHARED=\"$SHARED\"" >>$cfg
|
||||
}
|
||||
|
||||
generate_configh () {
|
||||
plugins=""
|
||||
oldlib=""
|
||||
for a in ${STATIC} ; do
|
||||
lib=$(echo $a | cut -d . -f 1) # library
|
||||
plg=$(echo $a | cut -d . -f 2) # plugin name
|
||||
if [ ! "$oldlib" = "$lib" ]; then
|
||||
[ -n "$oldlib" ] && echo " 0"
|
||||
oldlib=$lib
|
||||
if type perl > /dev/null 2>&1 ; then
|
||||
uclib=$(echo $lib | perl -pe 'tr/[a-z]/[A-Z]/')
|
||||
else
|
||||
uclib=$(echo $lib | tr '[a-z]' '[A-Z]')
|
||||
fi
|
||||
echo
|
||||
echo "#define RZ_${uclib}_STATIC_PLUGINS \\"
|
||||
plugins="${plugins} __${uclib}"
|
||||
fi
|
||||
echo " &rz_${lib}_plugin_${plg}, \\"
|
||||
done
|
||||
[ -n "$oldlib" ] && echo " 0"
|
||||
|
||||
# FILL EMPTY PLUGIN ARRAYS WITH LOVE
|
||||
for a in ${SHARED} ; do
|
||||
lib=$(echo $a | cut -d . -f 1) # library
|
||||
plg=$(echo $a | cut -d . -f 2) # plugin name
|
||||
if [ ! "$oldlib" = "$lib" ]; then
|
||||
oldlib=$lib
|
||||
if type perl > /dev/null 2>&1; then
|
||||
uclib=$(echo $lib | perl -pe 'tr/[a-z]/[A-Z]/')
|
||||
else
|
||||
uclib=$(echo $lib | tr '[a-z]' '[A-Z]')
|
||||
fi
|
||||
if [ -z "`echo ${plugins} | grep __${uclib}`" ]; then
|
||||
plugins="${plugins} __${uclib}"
|
||||
echo
|
||||
echo "#define RZ_${uclib}_STATIC_PLUGINS 0"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
generate_configmk () {
|
||||
plugins=""
|
||||
oldlib=""
|
||||
for a in ${STATIC} ; do
|
||||
lib=$(echo $a | cut -d . -f 1) # library
|
||||
plg=$(echo $a | cut -d . -f 2) # plugin name
|
||||
if [ ! "$oldlib" = "$lib" ]; then
|
||||
[ -n "$oldlib" ] && printf "\n"
|
||||
oldlib=$lib
|
||||
if type perl > /dev/null 2>&1 ; then
|
||||
uclib=$(echo $lib | perl -pe 'tr/[a-z]/[A-Z]/')
|
||||
else
|
||||
uclib=$(echo $lib | tr '[a-z]' '[A-Z]')
|
||||
fi
|
||||
printf "STATIC_${uclib}_PLUGINS= "
|
||||
plugins="${plugins} __${uclib}"
|
||||
fi
|
||||
printf "p/${plg}.mk "
|
||||
done
|
||||
|
||||
echo
|
||||
|
||||
# fill the holes with love
|
||||
for a in ${SHARED} ; do
|
||||
lib=$(echo $a | cut -d . -f 1) # library
|
||||
if type perl > /dev/null 2>&1 ; then
|
||||
uclib=$(echo $lib | perl -pe 'tr/[a-z]/[A-Z]/')
|
||||
else
|
||||
uclib=$(echo $lib | tr '[a-z]' '[A-Z]')
|
||||
fi
|
||||
if [ -z "`echo ${plugins} | grep __${uclib}`" ]; then
|
||||
plugins="${plugins} __${uclib}"
|
||||
echo "STATIC_${uclib}_PLUGINS="
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
generate () {
|
||||
echo "configure-plugins: Generating librz/config.h .."
|
||||
cat librz/config.h.head > librz/config.h
|
||||
echo "#define RZ_LOADLIBS ${LOADLIBS}" >> librz/config.h
|
||||
generate_configh >> librz/config.h
|
||||
cat librz/config.h.tail >> librz/config.h
|
||||
|
||||
echo "configure-plugins: Generating librz/config.mk .."
|
||||
cat librz/config.mk.head > librz/config.mk
|
||||
generate_configmk >> librz/config.mk
|
||||
cat librz/config.mk.tail >> librz/config.mk
|
||||
return
|
||||
}
|
||||
|
||||
add () {
|
||||
for a in $1 ; do [ $a = $2 ] && return ; done ; echo $1 $2
|
||||
}
|
||||
|
||||
sub () {
|
||||
n="" ; for a in $1 ; do [ $a = $2 ] && continue ; n="$n $a" ; done ; echo $n
|
||||
}
|
||||
|
||||
|
||||
echo | sort -t. > /dev/null 2>&1
|
||||
if [ $? = 0 ]; then
|
||||
SORT="sort -t."
|
||||
else
|
||||
SORT="sort"
|
||||
fi
|
||||
|
||||
dosort () {
|
||||
( for a in $1 ; do echo $a ; done ) | tr _ Z | ${SORT} | tr Z _
|
||||
#( for a in $1 ; do echo $a ; done ) | sort -t. --key=1,1d
|
||||
}
|
||||
|
||||
sort_vars () {
|
||||
STATIC=$(dosort "$STATIC")
|
||||
SHARED=$(dosort "$SHARED")
|
||||
}
|
||||
|
||||
make_static () {
|
||||
STATIC=$(add "$STATIC" $1)
|
||||
SHARED=$(sub "$SHARED" $1)
|
||||
}
|
||||
|
||||
make_shared () {
|
||||
SHARED=$(add "$SHARED" $1)
|
||||
STATIC=$(sub "$STATIC" $1)
|
||||
}
|
||||
|
||||
make_ () { : ; }
|
||||
|
||||
|
||||
MODE=""
|
||||
DONOTHING=0
|
||||
DEFCFG=./plugins.def.cfg
|
||||
|
||||
rmstatic() {
|
||||
C=0
|
||||
if [ -z "$1" ]; then
|
||||
echo "Missing argument"
|
||||
exit 1
|
||||
fi
|
||||
for a in ${STATIC} ; do
|
||||
b="`echo $a | tr . _`"
|
||||
for ext in dll dylib so ; do
|
||||
f="$b.$ext"
|
||||
if [ -f "$f" ]; then
|
||||
C=$(($C+1))
|
||||
printf " $C found\r"
|
||||
#echo "rm -f $f"
|
||||
rm -f "$f"
|
||||
fi
|
||||
done
|
||||
done
|
||||
echo "Removed $C shared plugins that are already static"
|
||||
}
|
||||
|
||||
RMSTATIC=-
|
||||
|
||||
while : ; do
|
||||
[ -z "$1" ] && break
|
||||
case "$1" in
|
||||
"--static") MODE=static ; ;;
|
||||
"--shared") MODE=shared ; ;;
|
||||
"--without-gpl") DEFCFG=./plugins.nogpl.cfg ;;
|
||||
"--disable-loadlibs") LOADLIBS=0 ;;
|
||||
"--rm-static") RMSTATIC="$2" ; ;;
|
||||
"--list") sort_vars ; list ; ;;
|
||||
"-n") DONOTHING=1 ; ;;
|
||||
"-h"|"--help") help ; ;;
|
||||
*) eval make_$MODE $1 ; ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
load ${DEFCFG}
|
||||
sort_vars
|
||||
|
||||
if [ - != "${RMSTATIC}" ]; then
|
||||
if [ -z "${RMSTATIC}" ]; then
|
||||
echo "Missing argument" >&2
|
||||
exit
|
||||
fi
|
||||
if [ -d "${RMSTATIC}" ]; then
|
||||
cd "${RMSTATIC}" && rmstatic "${RMSTATIC}"
|
||||
fi
|
||||
exit 0
|
||||
fi
|
||||
|
||||
[ ${DONOTHING} = 0 ] && generate
|
||||
|
||||
echo SHARED: ${SHARED}
|
||||
echo STATIC: ${STATIC}
|
||||
|
||||
save
|
||||
|
||||
exit 0
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
#!/bin/sh
|
||||
case "$1" in
|
||||
--report|-r|--version|-qV|--quiet-version|--help)
|
||||
: # nothing to do here
|
||||
;;
|
||||
*)
|
||||
[ plugins.def.cfg -nt ./plugins.cfg ] && rm -f plugins.cfg
|
||||
./configure-plugins $*
|
||||
;;
|
||||
esac
|
||||
69
env.sh
69
env.sh
|
|
@ -1,69 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
getabsolutepath() {
|
||||
[ -d "$1" ] && { cd "$1"; echo "$(pwd -P)"; } ||
|
||||
{ cd "$(dirname "$1")"; echo "$(pwd -P)/$(basename "$1")"; }
|
||||
}
|
||||
|
||||
pfx=$(getabsolutepath "$1")
|
||||
|
||||
if [ -z "$1" ]; then
|
||||
echo "Usage: ./env.sh [destdir|prefix] [program]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -d "$pfx" ]; then
|
||||
echo "Cannot find $pfx directory"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Support DESTDIR
|
||||
if [ -d "$pfx/usr/bin" ]; then
|
||||
pfx="$pfx/usr"
|
||||
fi
|
||||
|
||||
new_env='
|
||||
RZ_ENV_IS_SET=1
|
||||
RZ_LIBR_PLUGINS=${pfx}/lib/rizin
|
||||
PATH=$pfx/bin:${PATH}
|
||||
LD_LIBRARY_PATH=$pfx/lib:$LD_LIBRARY_PATH
|
||||
DYLD_LIBRARY_PATH=$pfx/lib:$DYLD_LIBRARY_PATH
|
||||
PKG_CONFIG_PATH=$pfx/lib/pkgconfig:$PKG_CONFIG_PATH
|
||||
'
|
||||
|
||||
shift
|
||||
if [ "$RZ_ENV_IS_SET" = 1 ]; then
|
||||
echo "Nested call"
|
||||
exec $*
|
||||
exit $?
|
||||
fi
|
||||
|
||||
if [ -z "$*" ]; then
|
||||
echo
|
||||
echo "==> Entering rizin environment shell..."
|
||||
echo
|
||||
echo $new_env $* \
|
||||
| sed -e 's, ,\n,g' \
|
||||
| sed -e 's,^, ,g' \
|
||||
| sed -e 's,$, \\,'
|
||||
echo
|
||||
export PS1="rz-env.sh$ "
|
||||
eval $new_env $SHELL
|
||||
echo
|
||||
echo "==> Back to system shell..."
|
||||
echo
|
||||
else
|
||||
if [ "$#" -gt 1 ]; then
|
||||
par=""
|
||||
p=0
|
||||
while : ; do
|
||||
p=$(($p+1))
|
||||
[ $p -gt $# ] && break
|
||||
a=`eval echo "\$\{$p\}"`
|
||||
par="$par\"$a\" "
|
||||
done
|
||||
eval $new_env $par
|
||||
else
|
||||
eval $new_env $*
|
||||
fi
|
||||
fi
|
||||
45
global.mk
45
global.mk
|
|
@ -1,45 +0,0 @@
|
|||
ifeq ($(_INCLUDE_GLOBAL_MK_),)
|
||||
_INCLUDE_GLOBAL_MK_=1
|
||||
DESTDIR=
|
||||
COMPILER?=gcc
|
||||
|
||||
TOP:=$(dir $(lastword $(MAKEFILE_LIST)))
|
||||
LTOP:=$(TOP)/librz
|
||||
STOP:=$(TOP)/shlr
|
||||
BTOP:=$(TOP)/binrz
|
||||
|
||||
ifeq ($(MAKEFLAGS),s)
|
||||
SILENT=1
|
||||
else
|
||||
SILENT=
|
||||
endif
|
||||
|
||||
ifndef USE_GIT_URLS
|
||||
GIT_PREFIX=https://
|
||||
else
|
||||
GIT_PREFIX=git://
|
||||
endif
|
||||
|
||||
# verbose error messages everywhere
|
||||
STATIC_DEBUG=0
|
||||
|
||||
rmdblslash=$(subst //,/,$(subst //,/,$(subst /$$,,$1)))
|
||||
|
||||
.c:
|
||||
ifneq ($(SILENT),)
|
||||
@echo LD $<
|
||||
endif
|
||||
$(CC) $(LDFLAGS) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
.c.o:
|
||||
ifneq ($(SILENT),)
|
||||
@echo "CC $(shell basename $<)"
|
||||
endif
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
-include $(TOP)/config-user.mk
|
||||
-include $(TOP)/mk/platform.mk
|
||||
-include $(TOP)/mk/${COMPILER}.mk
|
||||
|
||||
WWWROOT=${DATADIR}/rizin/${VERSION}/www
|
||||
endif
|
||||
294
librz/Makefile
294
librz/Makefile
|
|
@ -1,294 +0,0 @@
|
|||
include ../global.mk
|
||||
include config.mk
|
||||
include ../config-user.mk
|
||||
include ../mk/platform.mk
|
||||
include ../mk/${COMPILER}.mk
|
||||
include ${SHLR}/zip/deps.mk
|
||||
|
||||
DESTDIR:=$(DESTDIR)
|
||||
PREFIX?=${PWD}/../prefix
|
||||
OBJCOPY?=objcopy
|
||||
|
||||
S=$
|
||||
B=`
|
||||
PWD=$(shell pwd)
|
||||
|
||||
include libs.mk
|
||||
|
||||
.PHONY: $(LIBS)
|
||||
|
||||
all:
|
||||
ifneq ($(LIBS0),)
|
||||
$(MAKE) $(LIBS0)
|
||||
endif
|
||||
ifneq ($(LIBS1),)
|
||||
$(MAKE) $(LIBS1)
|
||||
endif
|
||||
ifneq ($(LIBS2),)
|
||||
$(MAKE) $(LIBS2)
|
||||
endif
|
||||
ifneq ($(LIBS3),)
|
||||
$(MAKE) $(LIBS3)
|
||||
endif
|
||||
ifneq ($(LIBS4),)
|
||||
$(MAKE) $(LIBS4)
|
||||
endif
|
||||
ifneq ($(LIBS5),)
|
||||
$(MAKE) $(LIBS5)
|
||||
endif
|
||||
ifneq ($(LIBS6),)
|
||||
$(MAKE) $(LIBS6)
|
||||
endif
|
||||
ifneq ($(LIBS7),)
|
||||
$(MAKE) $(LIBS7)
|
||||
endif
|
||||
ifneq ($(LIBS8),)
|
||||
$(MAKE) $(LIBS8)
|
||||
endif
|
||||
ifeq ($(WITH_LIBRZ),1)
|
||||
$(MAKE) librz.${EXT_AR}
|
||||
$(MAKE) librz.${EXT_SO}
|
||||
endif
|
||||
|
||||
ifeq ($(WITH_LIBRZ),1)
|
||||
|
||||
ifeq ($(CC),emcc)
|
||||
MLFLAGS=
|
||||
else
|
||||
ifeq ($(OSTYPE),darwin)
|
||||
MLFLAGS+=-install_name @rpath/librz.dylib
|
||||
endif
|
||||
ifeq ($(OSTYPE),ios)
|
||||
MLFLAGS+=-install_name @rpath/librz.dylib
|
||||
MLFLAGS+=-fembed-bitcode
|
||||
endif
|
||||
endif
|
||||
LDFLAGS+=${SSL_LDFLAGS}
|
||||
# XXX version-script only works with shlib as output
|
||||
#ifeq ($(OSTYPE),linux)
|
||||
#PLFLAGS+=--version-script ./ld.script
|
||||
#endif
|
||||
# from env: ALFLAGS+=$(ALFLAGS)
|
||||
|
||||
# ${PARTIALLD} $(ALFLAGS) $(MLFLAGS) $(PLFLAGS) -o .librz/$$(basename $${LIB}.a).o $${LIB}
|
||||
.librz: $(wildcard */librz_*.${EXT_AR}) ../shlr/librz_shlr.${EXT_AR}
|
||||
rm -rf .librz
|
||||
mkdir -p .librz
|
||||
for LIB in $^ ; do \
|
||||
${PARTIALLD} $(ALFLAGS) $(MLFLAGS) $(PLFLAGS) -o .librz/$$(basename $${LIB}.a).o $${LIB} ; \
|
||||
done
|
||||
ifeq ($(OSTYPE),linux)
|
||||
for LIB in .librz/* ; do $(OBJCOPY) --localize-hidden $$LIB ; done
|
||||
endif
|
||||
ifeq ($(OSTYPE),gnulinux)
|
||||
for LIB in .librz/* ; do $(OBJCOPY) --localize-hidden $$LIB ; done
|
||||
endif
|
||||
ifeq ($(OSTYPE),android)
|
||||
for LIB in .librz/* ; do $(OBJCOPY) --localize-hidden $$LIB ; done
|
||||
endif
|
||||
ifeq ($(OSTYPE),bsd)
|
||||
for LIB in .librz/* ; do $(OBJCOPY) --localize-hidden $$LIB ; done
|
||||
endif
|
||||
|
||||
_libr.${EXT_AR}: .librz
|
||||
-${AR} -rs $@ .librz/*.o
|
||||
|
||||
# this code should be in do-ar-sh not inlined here..
|
||||
|
||||
.librz: $(wildcard */librz_*.${EXT_AR}) ../shlr/librz_shlr.${EXT_AR}
|
||||
rm -rf .librz
|
||||
mkdir -p .librz
|
||||
-for LIB in $^ ; do \
|
||||
BN=`basename $$LIB` ; \
|
||||
mkdir -p .librz/$$BN ; \
|
||||
echo "( cd .librz/$$BN ; pwd ; du -hs ../../$$LIB; ${AR} -x ../../$$LIB )" ; \
|
||||
( cd .librz/$$BN ; pwd ; du -hs ../../$$LIB; ${AR} -x ../../$$LIB ) ; \
|
||||
done
|
||||
|
||||
librz.${EXT_AR}: .librz
|
||||
-${AR} -rs $@ .librz/*/*.o
|
||||
|
||||
E+=../shlr/yxml/libyxml.${EXT_AR}
|
||||
E+=../shlr/ar/librz_ar.${EXT_AR}
|
||||
E+=../shlr/winkd/librz_winkd.${EXT_AR}
|
||||
E+=../shlr/qnx/lib/libqnxr.${EXT_AR}
|
||||
E+=../shlr/bochs/lib/libbochs.${EXT_AR}
|
||||
E+=../shlr/rizin-shell-parser/libshell-parser.${EXT_AR}
|
||||
E+=../shlr/tree-sitter/libtree-sitter.${EXT_AR}
|
||||
#ifeq ($(COMPILER),ios-sdk)
|
||||
#E+=../shlr/sdb/src/libsdb.${EXT_AR}
|
||||
#endif
|
||||
#ifneq ($(OSTYPE),android)
|
||||
#E+=../shlr/sdb/src/libsdb.${EXT_AR}
|
||||
#endif
|
||||
|
||||
ifeq ($(USE_CAPSTONE),1)
|
||||
E+=$(CAPSTONE_LDFLAGS)
|
||||
else
|
||||
E+=../shlr/capstone/libcapstone.${EXT_AR}
|
||||
endif
|
||||
|
||||
ifeq ($(OSTYPE),darwin)
|
||||
librz_LDFLAGS=-dynamiclib -shared
|
||||
else
|
||||
librz_LDFLAGS=-shared
|
||||
endif
|
||||
|
||||
librz.${EXT_SO}: .librz
|
||||
ifeq (${COMPILER},emscripten)
|
||||
echo nothing to do here
|
||||
else
|
||||
$(CC) -fvisibility=hidden $(MLFLAGS) ${LINK} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} $(librz_LDFLAGS) -o librz.${EXT_SO} \
|
||||
.librz/*/*.o \
|
||||
../shlr/gdb/lib/libgdbr.${EXT_AR} ../shlr/java/librz_java.${EXT_AR} \
|
||||
../shlr/librz_shlr.${EXT_AR} ../shlr/mpc/libmpc.${EXT_AR} $(E) \
|
||||
../librz/util/librz_util.${EXT_AR}
|
||||
endif
|
||||
|
||||
else
|
||||
|
||||
# WITH_LIBRZ=0
|
||||
|
||||
librz.${EXT_SO}:
|
||||
$(MAKE) librz.${EXT_SO} WITH_LIBRZ=1
|
||||
|
||||
librz.${EXT_AR}:
|
||||
$(MAKE) librz.${EXT_AR} WITH_LIBRZ=1
|
||||
endif
|
||||
|
||||
../shlr/librz_shlr.${EXT_AR}:
|
||||
$(MAKE) -C ../shlr librz_shlr.${EXT_AR}
|
||||
|
||||
$(LIBS):
|
||||
@echo "DIR $@"
|
||||
@$(MAKE) -C $@
|
||||
|
||||
pkgcfg:
|
||||
@for lib in ${LIBS}; do $(MAKE) -C $${lib} pkgcfg; done
|
||||
$(MAKE) -C asm pkgcfg NAME=librz RZ_DEPS="rz_`echo ${LIBS}|sed -e 's, , rz_,g'`"
|
||||
# TODO: Magically generate librz.pc.acr here using LIBS and so :)
|
||||
|
||||
install-pkgconfig:
|
||||
${INSTALL_DIR} "${DESTDIR}${LIBDIR}/pkgconfig"
|
||||
for FILE in ../pkgcfg/*.pc ; do \
|
||||
rm -f "${DESTDIR}${LIBDIR}/pkgconfig/$$FILE" ; \
|
||||
${INSTALL_DATA} $$FILE "${DESTDIR}${LIBDIR}/pkgconfig" ; done
|
||||
|
||||
install-includes:
|
||||
@-rm -f "${DESTDIR}${INCLUDEDIR}/librz/sflib"
|
||||
@-rm -f "${DESTDIR}${INCLUDEDIR}/librz"
|
||||
${INSTALL_DIR} "${DESTDIR}${INCLUDEDIR}/librz"
|
||||
(cd include && for FILE in *.h ; do ${INSTALL_DATA} $$FILE "${DESTDIR}${INCLUDEDIR}/librz" ; done)
|
||||
${INSTALL_DIR} "${DESTDIR}${INCLUDEDIR}/librz/sflib"
|
||||
(cd include/sflib && for DIR in * ; do \
|
||||
${INSTALL_DIR} "${DESTDIR}${INCLUDEDIR}/librz/sflib/$$DIR" ; \
|
||||
for FILE in $$DIR/*.h ; do \
|
||||
${INSTALL_DATA} $$FILE "${DESTDIR}${INCLUDEDIR}/librz/sflib/$$FILE" ; \
|
||||
done ; \
|
||||
done)
|
||||
${INSTALL_DIR} "${DESTDIR}${INCLUDEDIR}/librz/sdb"
|
||||
(cd ../shlr/sdb/src && for FILE in *.h ; do \
|
||||
${INSTALL_DATA} $$FILE "${DESTDIR}${INCLUDEDIR}/librz/sdb/$$FILE" ; \
|
||||
done)
|
||||
${INSTALL_DIR} "${DESTDIR}${INCLUDEDIR}/librz/rz_util"
|
||||
(cd include/rz_util && for FILE in * ; do \
|
||||
${INSTALL_DATA} $$FILE "${DESTDIR}${INCLUDEDIR}/librz/rz_util/$$FILE" ; done)
|
||||
${INSTALL_DIR} "${DESTDIR}${INCLUDEDIR}/librz/rz_crypto"
|
||||
(cd include/rz_crypto && for FILE in * ; do \
|
||||
${INSTALL_DATA} $$FILE "${DESTDIR}${INCLUDEDIR}/librz/rz_crypto/$$FILE" ; done)
|
||||
|
||||
symstall install-symlink:
|
||||
@cd .. && \
|
||||
mkdir -p "${DESTDIR}${BINDIR}" \
|
||||
"${DESTDIR}${INCLUDEDIR}" \
|
||||
"${DESTDIR}${LIBDIR}/pkgconfig" \
|
||||
"${DESTDIR}${LIBDIR}/rizin/${VERSION}" ; \
|
||||
rm -rf "${DESTDIR}${INCLUDEDIR}/librz" && ln -fs "${PWD}/include" "${DESTDIR}${INCLUDEDIR}/librz" ; \
|
||||
rm -rf "${DESTDIR}${INCLUDEDIR}/librz/sdb" && ln -fs "${PWD}/../shlr/sdb/src" "${DESTDIR}${INCLUDEDIR}/librz/sdb" ; \
|
||||
$(MAKE) install-pkgconfig-symlink ; \
|
||||
$(foreach lib,${LIBS}, \
|
||||
ln -fs "${PWD}/$(lib)/librz_$(lib).${EXT_SO}" \
|
||||
"${DESTDIR}${LIBDIR}/librz_$(lib).${EXT_SO}" ; \
|
||||
ln -fs "${PWD}/$(lib)/librz_$(lib).${EXT_SO}" \
|
||||
"${DESTDIR}${LIBDIR}/$(call libname-version,librz_$(lib).${EXT_SO},${LIBVERSION})" ; \
|
||||
ln -fs "${PWD}/$(lib)/librz_$(lib).${EXT_AR}" "${DESTDIR}${LIBDIR}/librz_$(lib).${EXT_AR}" ; \
|
||||
$(foreach module,$(wildcard $(lib)/p/*.${EXT_SO}), \
|
||||
ln -fs "${PWD}/$(module)" "${DESTDIR}${LIBDIR}/rizin/${VERSION}/" ; \
|
||||
) \
|
||||
) \
|
||||
cd "${DESTDIR}${LIBDIR}/rizin" ; rm -f last ; ln -fs "${VERSION}" last
|
||||
|
||||
install: install-includes install-pkgconfig
|
||||
# TODO :Use INSTALL_DATA_DIR instead of mkdir
|
||||
# libraries
|
||||
@${INSTALL_DIR} "${DESTDIR}${LIBDIR}"
|
||||
@$(foreach lib,$(shell find * -type f -iname "*.${EXT_SO}" | grep -vE '^librz\.${EXT_SO}$$' | grep -v '(lib|parse)/t/' | grep lib | grep -v /bin/ | grep -v /p/), \
|
||||
echo " ${DESTDIR}${LIBDIR}/$(call libpath-to-name-version,$(lib),${LIBVERSION})"; \
|
||||
rm -f "${DESTDIR}${LIBDIR}/$(call libpath-to-name-version,$(lib),${LIBVERSION})"; \
|
||||
${INSTALL_LIB} "$(lib)" "${DESTDIR}${LIBDIR}/$(call libpath-to-name-version,$(lib),${LIBVERSION})"; \
|
||||
( cd "${DESTDIR}${LIBDIR}" ; ln -fs "$(call libpath-to-name-version,$(lib),${LIBVERSION})" "$(call libpath-to-name,$(lib))" ) ; \
|
||||
)
|
||||
lib=librz.$(EXT_SO) ; if [ -f "$$lib" ]; then \
|
||||
${INSTALL_LIB} "$$lib" "${DESTDIR}${LIBDIR}/$$lib"; \
|
||||
fi
|
||||
# object archives
|
||||
@for FILE in `find * -type f -iname "*.${EXT_AR}"` ; do \
|
||||
echo " ${DESTDIR}${LIBDIR}/$$FILE"; ${INSTALL_DATA} $$FILE "${DESTDIR}${LIBDIR}" ; done || true
|
||||
# plugins
|
||||
@${INSTALL_DIR} "${DESTDIR}${LIBDIR}/rizin/${VERSION}"
|
||||
@for FILE in `find */p -perm -u+x -type f | grep -v exe | grep -v dll | grep ${EXT_SO}`; \
|
||||
do echo " ${DESTDIR}${LIBDIR}/rizin/${VERSION}/$$FILE"; \
|
||||
${INSTALL_LIB} "$$FILE" "${DESTDIR}${LIBDIR}/rizin/${VERSION}" ; done
|
||||
cd "${DESTDIR}${LIBDIR}/rizin" ; ln -fs "${VERSION}" last
|
||||
|
||||
deinstall uninstall:
|
||||
# libraries
|
||||
-@for FILE in `find * | grep -e '\.${EXT_SO}$$' | grep -v 'lib/t' | grep lib` ; do \
|
||||
FILE=`echo $$FILE | awk -F / '{ print $$NF; }'`; \
|
||||
echo "${DESTDIR}${LIBDIR}/$$FILE" ; rm -f "${DESTDIR}${LIBDIR}/$$FILE" ; done
|
||||
# object archives
|
||||
-@for FILE in `find * | grep -e '\.${EXT_AR}$$'` ; do \
|
||||
FILE=`echo $$FILE | awk -F / '{ print $$NF; }'`; \
|
||||
echo "${DESTDIR}${LIBDIR}/$$FILE" ; rm -f "${DESTDIR}${LIBDIR}/$$FILE" ; done
|
||||
# includes
|
||||
-if [ -h "${DESTDIR}${INCLUDEDIR}/librz" ]; then \
|
||||
rm -f "${DESTDIR}${INCLUDEDIR}/librz" ; \
|
||||
else \
|
||||
(cd include && for FILE in * ; do rm -f "${DESTDIR}${INCLUDEDIR}/librz/$$FILE" ; done) ; \
|
||||
fi
|
||||
# programs
|
||||
-@for FILE in `find */t -perm -u+x -type f | grep 2`; do \
|
||||
FILE=`echo $$FILE|awk -F / '{ print $$NF; }'`; \
|
||||
echo "${DESTDIR}${BINDIR}/$$FILE" ; rm -f "${DESTDIR}${BINDIR}/$$FILE" ; done
|
||||
# plugins
|
||||
-@for FILE in `find */p -perm -u+x -type f`; do \
|
||||
FILE="${DESTDIR}${LIBDIR}/rizin/${VERSION}/`echo $$FILE|awk -F / '{ print $$NF; }'`"; \
|
||||
echo $$FILE ; rm -f $$FILE ; done
|
||||
rm -rf "${DESTDIR}${LIBDIR}/rizin/${VERSION}"
|
||||
rm -f "${DESTDIR}${LIBDIR}/pkgconfig/librz.pc"
|
||||
rm -f "${DESTDIR}${LIBDIR}/pkgconfig/rz_"*.pc
|
||||
# test programs
|
||||
rm -rf "${DESTDIR}${BINDIR}/librz-test"
|
||||
# TODO: use for FILE in LIBS (like in binrz/Makefile)
|
||||
rm -rf "${DESTDIR}${INCLUDEDIR}/librz"
|
||||
rm -rf "${DESTDIR}${LIBDIR}/librz_*.so.${LIBVERSION}"
|
||||
rm -rf "${DESTDIR}${LIBDIR}/librz_*.so.0"
|
||||
rm -rf "${DESTDIR}${LIBDIR}/librz_*.so"
|
||||
rm -rf "${DESTDIR}${LIBDIR}/librz_*.${EXT_AR}"
|
||||
rm -rf "${DESTDIR}${LIBDIR}/librz.so"*
|
||||
rm -rf "${DESTDIR}${LIBDIR}/librz.${EXT_AR}"
|
||||
rm -rf "${DESTDIR}${LIBDIR}/librz.so"*
|
||||
rm -rf "${DESTDIR}${LIBDIR}/librz.${EXT_AR}"
|
||||
rm -rf "${DESTDIR}${DATADIR}/doc/rizin"
|
||||
@echo librz aka rizin has been uninstalled from PREFIX=${DESTDIR}${PREFIX}
|
||||
|
||||
clean:
|
||||
for LIB in ${LIBS}; do ( cd $${LIB} && $(MAKE) clean ); done
|
||||
rm -rf .librz librz.${LIB_SO} librz.${LIB_AR}
|
||||
|
||||
mrproper:
|
||||
rm -rf .librz librz.${LIB_SO} librz.${LIB_AR}
|
||||
for LIB in ${LIBS}; do ( cd $${LIB} && $(MAKE) mrproper ); done
|
||||
|
||||
.PHONY: sloc mrproper clean pkgcfg install deinstall uninstall librz
|
||||
.PHONY: install-includes install-pkgconfig install-symlink all
|
||||
|
|
@ -1,60 +0,0 @@
|
|||
include ../config.mk
|
||||
|
||||
EXTRA_TARGETS+=do
|
||||
EXTRA_CLEAN=doclean
|
||||
CFLAGS+=-I..
|
||||
|
||||
NAME=rz_analysis
|
||||
RZ_DEPS=rz_util rz_reg rz_syscall rz_search rz_cons rz_flag rz_hash rz_crypto rz_parse
|
||||
CFLAGS+=-DRZ_PLUGIN_INCORE -Iarch -I$(TOP)/shlr
|
||||
CFLAGS+=-I$(LTOP)/asm/arch/include
|
||||
|
||||
LDFLAGS+=${BN_LIBS}
|
||||
|
||||
CURDIR=p/
|
||||
|
||||
include p/capstone.mk
|
||||
LDFLAGS+=$(CS_LDFLAGS)
|
||||
include $(STOP)/java/deps.mk
|
||||
LDFLAGS+=$(LINK)
|
||||
|
||||
.PHONY: all plugins libs ${EXTRA_CLEAN}
|
||||
|
||||
all: plugins
|
||||
|
||||
plugins: ${LIBSO} ${LIBAR}
|
||||
@${MAKE} -C p all
|
||||
|
||||
include ${STATIC_ANALYSIS_PLUGINS}
|
||||
|
||||
STATIC_OBJS=$(addprefix $(LTOP)/analysis/p/,$(STATIC_OBJ))
|
||||
OBJLIBS=meta.o reflines.o op.o fcn.o var.o block.o
|
||||
OBJLIBS+=cond.o value.o cc.o class.o diff.o type.o type_pdb.o dwarf_process.o
|
||||
OBJLIBS+=hint.o analysis.o data.o xrefs.o esil.o sign.o
|
||||
OBJLIBS+=switch.o cycles.o esil_dfg.o
|
||||
OBJLIBS+=esil_sources.o esil_interrupt.o esil_cfg.o
|
||||
OBJLIBS+=esil_stats.o esil_trace.o flirt.o labels.o
|
||||
OBJLIBS+=pin.o vtable.o rtti.o
|
||||
OBJLIBS+=rtti_msvc.o rtti_itanium.o jmptbl.o function.o
|
||||
OBJLIBS+=serialize_analysis.o
|
||||
ASMOBJS+=$(LTOP)/asm/arch/xtensa/gnu/xtensa-modules.o
|
||||
ASMOBJS+=$(LTOP)/asm/arch/xtensa/gnu/xtensa-isa.o
|
||||
ASMOBJS+=$(LTOP)/asm/arch/xtensa/gnu/elf32-xtensa.o
|
||||
|
||||
OBJS=${STATIC_OBJS} ${OBJLIBS} ${ASMOBJS}
|
||||
|
||||
test tests: tests-esil
|
||||
|
||||
tests-esil:
|
||||
cd ../../test ; \
|
||||
sh run_tests.sh t.esil
|
||||
|
||||
.PHONY: do doclean
|
||||
|
||||
do:
|
||||
${MAKE} -C d
|
||||
|
||||
doclean:
|
||||
${MAKE} -C d clean
|
||||
|
||||
include $(LTOP)/rules.mk
|
||||
|
|
@ -1,130 +0,0 @@
|
|||
include ../../../global.mk
|
||||
F=
|
||||
F+= types
|
||||
F+= types-16
|
||||
F+= types-32
|
||||
F+= types-64
|
||||
F+= types-android
|
||||
F+= types-darwin
|
||||
F+= types-windows
|
||||
F+= types-x86-windows-32
|
||||
F+= types-x86-windows-64
|
||||
F+= types-linux
|
||||
F+= types-x86-macos-64
|
||||
F+= types-arm-ios-16
|
||||
F+= types-arm-ios-32
|
||||
F+= types-arm-ios-64
|
||||
F+= spec
|
||||
F+= cc-x86-64
|
||||
F+= cc-x86-32
|
||||
F+= cc-x86-16
|
||||
F+= cc-mips-32
|
||||
F+= cc-mips-64
|
||||
F+= cc-m68k-32
|
||||
F+= cc-sparc-32
|
||||
F+= cc-arm-64
|
||||
F+= cc-arm-32
|
||||
F+= cc-arm-16
|
||||
F+= cc-avr-8
|
||||
F+= cc-ppc-32
|
||||
F+= cc-ppc-64
|
||||
F+= cc-xtensa-32
|
||||
F+= cc-riscv-64
|
||||
F+= cc-hexagon-32
|
||||
F+= cc-spc700-16
|
||||
F+= cc-sysz-64
|
||||
|
||||
WIN_TYPES=
|
||||
WIN_TYPES+= bcrypt
|
||||
WIN_TYPES+= cfgmgr32
|
||||
WIN_TYPES+= combaseapi
|
||||
WIN_TYPES+= commctrl
|
||||
WIN_TYPES+= consoleapi2
|
||||
WIN_TYPES+= dbghelp
|
||||
WIN_TYPES+= evntrace
|
||||
WIN_TYPES+= fileapi
|
||||
WIN_TYPES+= libloaderapi
|
||||
WIN_TYPES+= memoryapi
|
||||
WIN_TYPES+= ncrypt
|
||||
WIN_TYPES+= objbase
|
||||
WIN_TYPES+= oleauto
|
||||
WIN_TYPES+= processthreadsapi
|
||||
WIN_TYPES+= psapi
|
||||
WIN_TYPES+= securitybaseapi
|
||||
WIN_TYPES+= shellapi
|
||||
WIN_TYPES+= shlwapi
|
||||
WIN_TYPES+= synchapi
|
||||
WIN_TYPES+= sysinfoapi
|
||||
WIN_TYPES+= threadpoolapiset
|
||||
WIN_TYPES+= userenv
|
||||
WIN_TYPES+= winbase
|
||||
WIN_TYPES+= wincred
|
||||
WIN_TYPES+= wincrypt
|
||||
WIN_TYPES+= winhttp
|
||||
WIN_TYPES+= winldap
|
||||
WIN_TYPES+= winnls
|
||||
WIN_TYPES+= winreg
|
||||
WIN_TYPES+= winsock2
|
||||
WIN_TYPES+= winsvc
|
||||
WIN_TYPES+= winuser
|
||||
WIN_TYPES+= ws2spi
|
||||
|
||||
include $(TOP)/config-user.mk
|
||||
HOST_CC?=gcc
|
||||
|
||||
F_SDB=$(addsuffix .sdb,$F)
|
||||
|
||||
SDBPATH=$(LTOP)/../shlr/sdb/
|
||||
ifeq ($(BUILD_OS),windows)
|
||||
BUILD_EXT_EXE=.exe
|
||||
else
|
||||
BUILD_EXT_EXE=
|
||||
endif
|
||||
SDB=$(SDBPATH)/sdb${BUILD_EXT_EXE}
|
||||
|
||||
FCNSIGNPATH=$(DESTDIR)$(DATADIR)/rizin/$(VERSION)/fcnsign
|
||||
|
||||
all: ${SDB}
|
||||
@$(MAKE) compile
|
||||
|
||||
compile: ${F_SDB}
|
||||
|
||||
linux-x86-32.sdb: linux-x86-32
|
||||
|
||||
types-windows.sdb: EXTRA_FILES = $(addsuffix .sdb.txt,$(addprefix types-windows_,$(WIN_TYPES)))
|
||||
|
||||
%.sdb:%.sdb.txt $(EXTRA_FILES)
|
||||
ifneq ($(SILENT),)
|
||||
@echo SDB $@
|
||||
@rm -f $@
|
||||
@cat $< $(EXTRA_FILES) | ${SDB} $@ =
|
||||
@test -f $@
|
||||
else
|
||||
rm -f $@
|
||||
cat $< $(EXTRA_FILES) | ${SDB} $@ =
|
||||
test -f $@
|
||||
endif
|
||||
|
||||
clean:
|
||||
rm -f *.sdb
|
||||
|
||||
${SDB}:
|
||||
@echo "Cannot find ${SDB}"
|
||||
@false
|
||||
|
||||
.PHONY: all clean install install-symlink symstall
|
||||
|
||||
install: ${F_SDB}
|
||||
rm -rf "${FCNSIGNPATH}"
|
||||
mkdir -p "${FCNSIGNPATH}"
|
||||
cp -f *.sdb "${FCNSIGNPATH}"
|
||||
|
||||
CWD=$(shell pwd)
|
||||
symstall install-symlink: ${F_SDB}
|
||||
cd ../../.. && mkdir -p "${FCNSIGNPATH}" && \
|
||||
for FILE in $(shell cd $(TOP)/librz/analysis/d ; ls *.sdb); do \
|
||||
ln -fs "$(CWD)/$$FILE" "$(FCNSIGNPATH)/$$FILE" ; \
|
||||
done
|
||||
|
||||
uninstall:
|
||||
rm -rf "${FCNSIGNPATH}"
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_6502=analysis_6502.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_6502}
|
||||
TARGET_6502=analysis_6502.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_6502}
|
||||
|
||||
${TARGET_6502}: ${OBJ_6502}
|
||||
${CC} $(call libname,analysis_6502) ${LDFLAGS} ${CFLAGS} -o analysis_6502.${EXT_SO} ${OBJ_6502}
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_6502_CS=analysis_6502_cs.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_6502_CS}
|
||||
TARGET_6502_CS=analysis_6502_cs.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_6502_CS}
|
||||
|
||||
${TARGET_6502_CS}: ${OBJ_6502_CS}
|
||||
${CC} $(call libname,analysis_6502_cs) ${LDFLAGS} ${CFLAGS} -o analysis_6502_cs.${EXT_SO} ${OBJ_6502_CS}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
OBJ_8051=analysis_8051.o
|
||||
CFLAGS+=-I../asm/arch/8051
|
||||
|
||||
STATIC_OBJ+=${OBJ_8051}
|
||||
#OBJ_8051+=../../../../../../../../../../../../../../../../../../../../${LTOP}/asm/arch/8051/8051.o
|
||||
#OBJ_8051+=${LTOP}/asm/arch/8051/8051.o
|
||||
#OBJ_8051+=../../asm/arch/8051/8051.o
|
||||
TARGET_8051=analysis_8051.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_8051}
|
||||
|
||||
${TARGET_8051}: ${OBJ_8051}
|
||||
${CC} $(call libname,analysis_z80) ${LDFLAGS} ${CFLAGS} -o analysis_8051.${EXT_SO} ${OBJ_8051}
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
include ../../config.mk
|
||||
include ../../../mk/platform.mk
|
||||
|
||||
CFLAGS+=-I../../include -I../arch -Wall -shared $(PIC_CFLAGS) ${LDFLAGS_LIB} ${LDFLAGS_LINKPATH}..
|
||||
CFLAGS+=-L../../util -lrz_util -L../../analysis -lrz_analysis -L../../reg -lrz_reg -L../../crypto -lrz_crypto
|
||||
LDFLAGS+=${LINK}
|
||||
|
||||
CURDIR=
|
||||
|
||||
ifeq ($(WITHPIC),1)
|
||||
all: ${ALL_TARGETS}
|
||||
|
||||
ALL_TARGETS=
|
||||
# TODO: rename to enabled plugins
|
||||
ARCHS=null.mk ppc_gnu.mk ppc_cs.mk arm_gnu.mk avr.mk xap.mk dalvik.mk sh.mk ebc.mk gb.mk malbolge.mk ws.mk h8300.mk cr16.mk v850.mk msp430.mk sparc_gnu.mk sparc_cs.mk spc700.mk x86_cs.mk cris.mk 6502.mk snes.mk riscv.mk vax.mk xtensa.mk rsp.mk mcore.mk tricore.mk
|
||||
include $(ARCHS)
|
||||
|
||||
clean:
|
||||
-rm -f *.${EXT_SO} *.o ${STATIC_OBJ}
|
||||
|
||||
mrproper: clean
|
||||
-rm -f *.d ../arch/*/*/*.d
|
||||
|
||||
.PHONY: all clean mrproper
|
||||
else
|
||||
all clean mrproper:
|
||||
|
||||
.PHONY: all clean mrproper
|
||||
endif
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_AMD29K=analysis_amd29k.o ../../asm/arch/amd29k/amd29k.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_AMD29K}
|
||||
TARGET_AMD29K=analysis_amd29k.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_AMD29K}
|
||||
|
||||
${TARGET_AMD29K}: ${OBJ_AMD29K}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_amd29k) $(CS_CFLAGS) \
|
||||
-o analysis_amd29k.${EXT_SO} ${OBJ_AMD29K} $(CS_LDFLAGS)
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_ARC=analysis_arc.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_ARC}
|
||||
TARGET_ARC=analysis_arc.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_ARC}
|
||||
|
||||
${TARGET_ARC}: ${OBJ_ARC}
|
||||
${CC} $(call libname,analysis_arc) ${LDFLAGS} ${CFLAGS} -o analysis_arc.${EXT_SO} ${OBJ_ARC}
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
N=analysis_arm_cs
|
||||
OBJ_ARM_CS=analysis_arm_cs.o
|
||||
|
||||
include $(CURDIR)capstone.mk
|
||||
|
||||
STATIC_OBJ+=${OBJ_ARM_CS}
|
||||
|
||||
TARGET_ARM_CS=$(N).${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_ARM_CS}
|
||||
|
||||
${TARGET_ARM_CS}: ${OBJ_ARM_CS}
|
||||
${CC} ${CFLAGS} $(call libname,$(N)) $(CS_CFLAGS) \
|
||||
-o $(TARGET_ARM_CS) ${OBJ_ARM_CS} $(CS_LDFLAGS)
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
N=analysis_arm_gnu
|
||||
OBJ_ARM=analysis_arm_gnu.o ../../asm/arch/arm/winedbg/be_arm.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_ARM}
|
||||
TARGET_ARM=$(N).${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_ARM}
|
||||
CFLAGS +=-I../asm/arch/include
|
||||
|
||||
${TARGET_ARM}: ${OBJ_ARM}
|
||||
${CC} $(call libname,$(N)) ${LDFLAGS} ${CFLAGS} \
|
||||
-o $(TARGET_ARM) $(OBJ_ARM)
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_AVR=analysis_avr.o
|
||||
OBJ_AVR+=../../asm/arch/avr/avr_disasm.o
|
||||
OBJ_AVR+=../../asm/arch/avr/format.o
|
||||
OBJ_AVR+=../../asm/arch/avr/disasm.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_AVR}
|
||||
TARGET_AVR=analysis_avr.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_AVR}
|
||||
|
||||
${TARGET_AVR}: ${OBJ_AVR}
|
||||
${CC} $(call libname,analysis_avr) ${CFLAGS} -o analysis_avr.${EXT_SO} ${OBJ_AVR}
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_BF=analysis_bf.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_BF}
|
||||
TARGET_BF=analysis_bf.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_BF}
|
||||
|
||||
${TARGET_BF}: ${OBJ_BF}
|
||||
${CC} $(call libname,analysis_bf) ${LDFLAGS} ${CFLAGS} -o analysis_bf.${EXT_SO} ${OBJ_BF}
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
|
||||
ifeq ($(USE_CAPSTONE),1)
|
||||
# use system capstone
|
||||
CS_CFLAGS=${CAPSTONE_CFLAGS}
|
||||
CS_LDFLAGS=${CAPSTONE_LDFLAGS}
|
||||
else
|
||||
# use capstone from shlr/capstone
|
||||
CS_CFLAGS=-I${SHLR}/capstone/include
|
||||
CS_CFLAGS=-I${SHLR}/capstone/include/capstone
|
||||
CS_LDFLAGS=$(SHLR)/capstone/libcapstone.a
|
||||
#SHARED_OBJ+=${CS_LDFLAGS}
|
||||
endif
|
||||
|
||||
ifeq ($(CS_CFLAGS_INCLUDED),)
|
||||
CFLAGS+=$(CS_CFLAGS)
|
||||
CS_CFLAGS_INCLUDED=Yes
|
||||
endif
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_CHIP8=analysis_chip8.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_CHIP8}
|
||||
TARGET_CHIP8=analysis_chip8.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_CHIP8}
|
||||
|
||||
${TARGET_CHIP8}: ${OBJ_CHIP8}
|
||||
${CC} $(call libname,analysis_chip8) ${CFLAGS} -o analysis_chip8.${EXT_SO} ${OBJ_CHIP8}
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
OBJ_CR16=analysis_cr16.o
|
||||
CFLAGS+=-I../asm/arch/cr16/
|
||||
|
||||
STATIC_OBJ+=${OBJ_CR16}
|
||||
#OBJ_CR16+=../../../../../../../../../../../../../../../../../../../../${LTOP}/asm/arch/cr16/cr16_disas.o
|
||||
OBJ_CR16+=../../asm/arch/cr16/cr16_disas.o
|
||||
TARGET_CR16=analysis_cr16.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_CR16}
|
||||
|
||||
${TARGET_CR16}: ${OBJ_CR16} ${SHARED_OBJ}
|
||||
$(call pwd)
|
||||
${CC} $(call libname,analysis_cr16) ${CFLAGS} \
|
||||
-o ${TARGET_CR16} ${OBJ_CR16}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_CRIS=analysis_cris.o
|
||||
|
||||
STATIC_OBJ+=$(OBJ_CRIS)
|
||||
TARGET_CRIS=analysis_cris.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_CRIS}
|
||||
|
||||
${TARGET_CRIS}: ${OBJ_CRIS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_cris) \
|
||||
-o analysis_cris.${EXT_SO} ${OBJ_CRIS}
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_DALVIK=analysis_dalvik.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_DALVIK}
|
||||
TARGET_DALVIK=analysis_dalvik.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_DALVIK}
|
||||
|
||||
${TARGET_DALVIK}: ${OBJ_DALVIK}
|
||||
${CC} $(call libname,analysis_dalvik) ${LDFLAGS} ${CFLAGS} -o analysis_dalvik.${EXT_SO} ${OBJ_DALVIK}
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
OBJ_EBC=analysis_ebc.o
|
||||
CFLAGS+=-I../asm/arch/ebc/
|
||||
|
||||
STATIC_OBJ+=${OBJ_EBC}
|
||||
#OBJ_EBC+=../../../../../../../../../../../../../../../../../../../../${LTOP}/asm/arch/ebc/ebc_disas.o
|
||||
OBJ_EBC+=../../asm/arch/ebc/ebc_disas.o
|
||||
TARGET_EBC=analysis_ebc.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_EBC}
|
||||
|
||||
${TARGET_EBC}: ${OBJ_EBC} ${SHARED_OBJ}
|
||||
$(call pwd)
|
||||
${CC} $(call libname,analysis_ebc) ${CFLAGS} \
|
||||
-o ${TARGET_EBC} ${OBJ_EBC}
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_GB=analysis_gb.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_GB}
|
||||
TARGET_GB=analysis_gb.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_GB}
|
||||
|
||||
CFLAGS += -Iarch/gb/
|
||||
|
||||
${TARGET_GB}: ${OBJ_GB}
|
||||
${CC} $(call libname,analysis_gb) ${LDFLAGS} ${CFLAGS} \
|
||||
-o ${TARGET_GB} ${OBJ_GB}
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
OBJ_H8300=analysis_h8300.o
|
||||
CFLAGS+=-I../asm/arch/h8300/
|
||||
|
||||
STATIC_OBJ+=${OBJ_H8300}
|
||||
#OBJ_H8300+=../../../../../../../../../../../../../../../../../../../../${LTOP}/asm/arch/h8300/h8300_disas.o
|
||||
OBJ_H8300+=../../asm/arch/h8300/h8300_disas.o
|
||||
TARGET_H8300=analysis_h8300.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_H8300}
|
||||
|
||||
${TARGET_H8300}: ${OBJ_H8300} ${SHARED_OBJ}
|
||||
$(call pwd)
|
||||
${CC} $(call libname,analysis_h8300) ${CFLAGS} \
|
||||
-o ${TARGET_H8300} ${OBJ_H8300}
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
OBJ_HEXAGON=analysis_hexagon.o
|
||||
OBJ_HEXAGON+=../../asm/arch/hexagon/hexagon.o
|
||||
OBJ_HEXAGON+=../../asm/arch/hexagon/hexagon_disas.o
|
||||
OBJ_HEXAGON+=../../analysis/arch/hexagon/hexagon_analysis.o
|
||||
|
||||
CFLAGS +=-I../asm/arch/hexagon
|
||||
CFLAGS +=-I../analysis/arch/hexagon
|
||||
|
||||
STATIC_OBJ+=${OBJ_HEXAGON}
|
||||
TARGET_HEXAGON=analysis_hexagon.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_HEXAGON}
|
||||
|
||||
${TARGET_HEXAGON}: ${OBJ_HEXAGON}
|
||||
${CC} $(call libname,analysis_hexagon) ${LDFLAGS} ${CFLAGS} \
|
||||
-o $(TARGET_HEXAGON) $(OBJ_HEXAGON)
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_I4004=analysis_i4004.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_I4004}
|
||||
TARGET_I4004=analysis_i4004.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_I4004}
|
||||
|
||||
${TARGET_I4004}: ${OBJ_I4004}
|
||||
${CC} $(call libname,analysis_i4004) ${CFLAGS} -o analysis_i4004.${EXT_SO} ${OBJ_I4004}
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_I8080=analysis_i8080.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_I8080}
|
||||
TARGET_I8080=analysis_i8080.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_I8080}
|
||||
|
||||
${TARGET_I8080}: ${OBJ_I8080}
|
||||
${CC} $(call libname,analysis_z80) ${LDFLAGS} ${CFLAGS} -o analysis_i8080.${EXT_SO} ${OBJ_I8080}
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
OBJ_JAVA=analysis_java.o
|
||||
SHARED2_JAVA=$(addprefix ../,${SHARED_JAVA})
|
||||
|
||||
OBJ_JAVA+=${SHARED2_JAVA}
|
||||
|
||||
STATIC_OBJ+=${OBJ_JAVA}
|
||||
TARGET_JAVA=analysis_java.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_JAVA}
|
||||
|
||||
${TARGET_JAVA}: ${OBJ_JAVA}
|
||||
${CC} $(call libname,analysis_java) ${CFLAGS} \
|
||||
-o analysis_java.${EXT_SO} \
|
||||
${OBJ_JAVA} ${SHARED2_JAVA} \
|
||||
$(SHLR)/java/librz_java.$(EXT_AR) \
|
||||
$(SHLR)/sdb/src/libsdb.$(EXT_AR)
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
OBJ_M680X_CS=analysis_m680x_cs.o
|
||||
|
||||
include ${CURDIR}capstone.mk
|
||||
|
||||
STATIC_OBJ+=$(OBJ_M680X_CS)
|
||||
|
||||
TARGET_M680X_CS=analysis_m680x_cs.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_M680X_CS}
|
||||
|
||||
${TARGET_M680X_CS}: ${OBJ_M680X_CS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_m680x_cs) $(CS_CFLAGS) \
|
||||
-o analysis_m680x_cs.${EXT_SO} ${OBJ_M680X_CS} $(CS_LDFLAGS)
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
OBJ_M68K_CS=analysis_m68k_cs.o
|
||||
|
||||
include ${CURDIR}capstone.mk
|
||||
|
||||
STATIC_OBJ+=$(OBJ_M68K_CS)
|
||||
|
||||
TARGET_M68K_CS=analysis_m68k_cs.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_M68K_CS}
|
||||
|
||||
${TARGET_M68K_CS}: ${OBJ_M68K_CS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_m68k_cs) $(CS_CFLAGS) \
|
||||
-o analysis_m68k_cs.${EXT_SO} ${OBJ_M68K_CS} $(CS_LDFLAGS)
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_MALBOLGE=analysis_malbolge.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_MALBOLGE}
|
||||
TARGET_MALBOLGE=analysis_malbolge.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_MALBOLGE}
|
||||
|
||||
${TARGET_MALBOLGE}: ${OBJ_MALBOLGE}
|
||||
${CC} $(call libname,analysis_malbolge) ${LDFLAGS} ${CFLAGS} -o analysis_malbolge.${EXT_SO} ${OBJ_MALBOLGE}
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
OBJ_MCORE=analysis_mcore.o ../../asm/arch/mcore/mcore.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_MCORE}
|
||||
|
||||
TARGET_MCORE=analysis_mcore.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_MCORE}
|
||||
|
||||
${TARGET_MCORE}: ${OBJ_MCORE}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_mcore) $(CS_LDFLAGS) \
|
||||
-o analysis_mcore.${EXT_SO} ${OBJ_MCORE}
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_MIPS_CS=analysis_mips_cs.o
|
||||
|
||||
include $(CURDIR)capstone.mk
|
||||
|
||||
STATIC_OBJ+=$(OBJ_MIPS_CS)
|
||||
TARGET_MIPS_CS=analysis_mips_cs.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_MIPS_CS}
|
||||
|
||||
${TARGET_MIPS_CS}: ${OBJ_MIPS_CS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_mips_cs) $(CS_CFLAGS) \
|
||||
-o analysis_mips_cs.${EXT_SO} ${OBJ_MIPS_CS} $(CS_LDFLAGS)
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
N=analysis_mips_gnu
|
||||
OBJ_MIPS=$(N).o
|
||||
|
||||
include p/capstone.mk
|
||||
|
||||
STATIC_OBJ+=${OBJ_MIPS}
|
||||
TARGET_MIPS=$(N).${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_MIPS}
|
||||
|
||||
${TARGET_MIPS}: ${OBJ_MIPS}
|
||||
${CC} $(call libname,$(N)) ${CFLAGS} ${CS_CFLAGS} \
|
||||
-o $(TARGET_MIPS) ${OBJ_MIPS} ${CS_LDFLAGS}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
OBJ_msp430=analysis_msp430.o
|
||||
CFLAGS+=-I../asm/arch/msp430/
|
||||
|
||||
STATIC_OBJ+=${OBJ_msp430}
|
||||
OBJ_msp430+=../../asm/arch/msp430/msp430_disas.o
|
||||
TARGET_msp430=analysis_msp430.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_msp430}
|
||||
|
||||
${TARGET_msp430}: ${OBJ_msp430} ${SHARED_OBJ}
|
||||
$(call pwd)
|
||||
${CC} $(call libname,analysis_msp430) ${CFLAGS} \
|
||||
-o ${TARGET_msp430} ${OBJ_msp430}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_NIOS2=analysis_nios2.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_NIOS2}
|
||||
TARGET_NIOS2=analysis_nios2.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_NIOS2}
|
||||
|
||||
${TARGET_NIOS2}: ${OBJ_NIOS2}
|
||||
${CC} $(call libname,analysis_nios2) ${LDFLAGS} ${CFLAGS} \
|
||||
-o analysis_nios2.${EXT_SO} ${OBJ_NIOS2}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_NULL=analysis_null.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_NULL}
|
||||
TARGET_NULL=analysis_null.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_NULL}
|
||||
|
||||
${TARGET_NULL}: ${OBJ_NULL}
|
||||
${CC} $(call libname,analysis_null) ${LDFLAGS} \
|
||||
${CFLAGS} -o analysis_null.${EXT_SO} ${OBJ_NULL}
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_OR1K=analysis_or1k.o
|
||||
OBJ_OR1K+=../../asm/arch/or1k/or1k_disas.o
|
||||
CFLAGS+=-I../asm/arch/or1k
|
||||
|
||||
STATIC_OBJ+=${OBJ_OR1K}
|
||||
TARGET_OR1K=analysis_or1k.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_OR1K}
|
||||
|
||||
${TARGET_OR1K}: ${OBJ_OR1K}
|
||||
${CC} $(call libname,analysis_nios2) ${LDFLAGS} ${CFLAGS} \
|
||||
-o analysis_or1k.${EXT_SO} ${OBJ_OR1K}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_PIC=analysis_pic.o
|
||||
|
||||
STATIC_OBJ+=$(OBJ_PIC)
|
||||
OBJ_PIC+=../../asm/arch/pic/pic_midrange.o
|
||||
TARGET_PIC=analysis_pic.$(EXT_SO)
|
||||
|
||||
ALL_TARTGETS+=$(TARGET_PIC)
|
||||
|
||||
$(TARGET_PIC): $(OBJ_PIC)
|
||||
$(CC) $(call libname,analysis_pic) ${LDFLAGS} ${CFLAGS} -o analysis_pic.$(EXT_SO) $(OBJ_PIC)
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_PPC_CS=analysis_ppc_cs.o ../../asm/arch/ppc/libvle/vle.o
|
||||
|
||||
include $(CURDIR)capstone.mk
|
||||
|
||||
STATIC_OBJ+=${OBJ_PPC_CS}
|
||||
TARGET_PPC_CS=analysis_ppc_cs.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_PPC_CS}
|
||||
|
||||
${TARGET_PPC_CS}: ${OBJ_PPC_CS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_ppc_cs) $(CS_CFLAGS) \
|
||||
-o analysis_ppc_cs.${EXT_SO} ${OBJ_PPC_CS} $(CS_LDFLAGS)
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_PPC=analysis_ppc_gnu.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_PPC}
|
||||
TARGET_PPC=analysis_ppc_gnu.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_PPC}
|
||||
|
||||
${TARGET_PPC}: ${OBJ_PPC}
|
||||
${CC} $(call libname,analysis_ppc_gnu) ${CFLAGS} \
|
||||
-o analysis_ppc_gnu.${EXT_SO} ${OBJ_PPC}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
OBJ_propeller=analysis_propeller.o
|
||||
CFLAGS+=-I../asm/arch/propeller/
|
||||
|
||||
STATIC_OBJ+=${OBJ_propeller}
|
||||
OBJ_propeller+=../../asm/arch/propeller/propeller_disas.o
|
||||
TARGET_propeller=analysis_propeller.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_propeller}
|
||||
|
||||
${TARGET_propeller}: ${OBJ_propeller} ${SHARED_OBJ}
|
||||
$(call pwd)
|
||||
${CC} $(call libname,analysis_propeller) ${CFLAGS} \
|
||||
-o ${TARGET_propeller} ${OBJ_propeller}
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
PYC_ASM_ROOT=../../asm/arch/pyc/
|
||||
OBJ_PYC=analysis_pyc.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_10.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_11.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_12.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_13.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_14.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_15.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_16.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_20.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_21.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_22.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_23.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_24.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_25.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_26.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_27.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_2x.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_30.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_31.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_32.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_33.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_34.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_35.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_36.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_37.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_38.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_39.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_3x.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_analysis.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode_arg_fmt.o
|
||||
OBJ_PYC+=$(PYC_ASM_ROOT)/opcode.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_PYC}
|
||||
TARGET_PYC=analysis_pyc.$(EXT_SO)
|
||||
|
||||
ALL_TARGETS+=${TARGET_PYC}
|
||||
CFLAGS+=-I$(PYC_ROOT)
|
||||
|
||||
${TARGET_PYC}: ${OBJ_PYC}
|
||||
${CC} $(call libname,analysis_pyc) ${CFLAGS} $(LDFLAGS) -o ${TARGET_PYC} ${OBJ_PYC} -lrz_util
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_RISCV=analysis_riscv.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_RISCV}
|
||||
TARGET_RISCV=analysis_riscv.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_RISCV}
|
||||
|
||||
${TARGET_RISCV}: ${OBJ_RISCV}
|
||||
${CC} $(call libname,analysis_RISCV) ${LDFLAGS} ${CFLAGS} -o analysis_riscv.${EXT_SO} ${OBJ_RISCV}
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_RISCV_CS=analysis_riscv_cs.o
|
||||
|
||||
include $(CURDIR)capstone.mk
|
||||
|
||||
STATIC_OBJ+=$(OBJ_RISCV_CS)
|
||||
TARGET_RISCV_CS=analysis_riscv_cs.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_RISCV_CS}
|
||||
|
||||
${TARGET_RISCV_CS}: ${OBJ_RISCV_CS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_riscv_cs) $(CS_CFLAGS) \
|
||||
-o analysis_riscv_cs.${EXT_SO} ${OBJ_RISCV_CS} $(CS_LDFLAGS)
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_RSP=analysis_rsp.o
|
||||
#RSP_ROOT=$(LIBRZ)/asm/arch/rsp
|
||||
CFLAGS+=-I../asm/arch/rsp
|
||||
|
||||
STATIC_OBJ+=${OBJ_RSP}
|
||||
OBJ_RSP+=../../asm/arch/rsp/rsp_idec.o
|
||||
TARGET_RSP=analysis_rsp.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_RSP}
|
||||
|
||||
${TARGET_RSP}: ${OBJ_RSP}
|
||||
${CC} $(call libname,analysis_rsp) ${LDFLAGS} ${CFLAGS} -o ${TARGET_RSP} ${OBJ_RSP}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_SH=analysis_sh.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_SH}
|
||||
TARGET_SH=analysis_sh.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_SH}
|
||||
|
||||
${TARGET_SH}: ${OBJ_SH}
|
||||
${CC} $(call libname,analysis_sh) ${LDFLAGS} \
|
||||
${CFLAGS} -o analysis_sh.${EXT_SO} ${OBJ_SH}
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_SNES=analysis_snes.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_SNES}
|
||||
TARGET_SNES=analysis_snes.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_SNES}
|
||||
|
||||
${TARGET_SNES}: ${OBJ_SNES}
|
||||
${CC} $(call libname,analysis_snes) ${LDFLAGS} ${CFLAGS} -o analysis_snes.${EXT_SO} ${OBJ_SNES}
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_SPARC_CS=analysis_sparc_cs.o
|
||||
|
||||
include ${CURDIR}capstone.mk
|
||||
|
||||
STATIC_OBJ+=$(OBJ_SPARC_CS)
|
||||
TARGET_SPARC_CS=analysis_sparc_cs.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_SPARC_CS}
|
||||
|
||||
${TARGET_SPARC_CS}: ${OBJ_SPARC_CS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_sparc_cs) $(CS_CFLAGS) \
|
||||
-o analysis_sparc_cs.${EXT_SO} ${OBJ_SPARC_CS} $(CS_LDFLAGS)
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_SPARC=analysis_sparc_gnu.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_SPARC}
|
||||
TARGET_SPARC=analysis_sparc_gnu.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_SPARC}
|
||||
|
||||
${TARGET_SPARC}: ${OBJ_SPARC}
|
||||
${CC} $(call libname,analysis_sparc_gnu) ${CFLAGS} -o analysis_sparc_gnu.${EXT_SO} ${OBJ_SPARC}
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_spc700=analysis_spc700.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_spc700}
|
||||
TARGET_spc700=analysis_spc700.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_spc700}
|
||||
|
||||
${TARGET_spc700}: ${OBJ_spc700}
|
||||
${CC} $(call libname,analysis_spc700) ${LDFLAGS} ${CFLAGS} -o analysis_spc700.${EXT_SO} ${OBJ_spc700}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
OBJ_SYSTEMZ_CS=analysis_sysz.o
|
||||
|
||||
include p/capstone.mk
|
||||
|
||||
STATIC_OBJ+=${OBJ_SYSTEMZ_CS}
|
||||
|
||||
TARGET_SYSTEMZ_CS=analysis_sysz.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_SYSTEMZ_CS}
|
||||
|
||||
${TARGET_SYSTEMZ_CS}: ${OBJ_SYSTEMZ_CS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_sysz) $(CS_LDFLAGS) \
|
||||
-o analysis_sysz.${EXT_SO} ${OBJ_SYSTEMZ_CS}
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
OBJ_TMS320=analysis_tms320.o
|
||||
OBJ_TMS320+=analysis_tms320_c55x_plus.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_TMS320}
|
||||
#OBJ_TMS320+=../../../../../../../../../../../${LTOP}/asm/arch/tms320/tms320_dasm.o
|
||||
#ROOT=../../../../../../../../../../../../../../../../../../../../../${LTOP}
|
||||
ROOT=../../
|
||||
OBJ_TMS320+=$(ROOT)/asm/arch/tms320/tms320_dasm.o
|
||||
OBJ_TMS320+=$(ROOT)/asm/arch/tms320/c55x_plus/ins.o
|
||||
OBJ_TMS320+=$(ROOT)/asm/arch/tms320/c55x_plus/c55plus.o
|
||||
OBJ_TMS320+=$(ROOT)/asm/arch/tms320/c55x_plus/c55plus_decode.o
|
||||
OBJ_TMS320+=$(ROOT)/asm/arch/tms320/c55x_plus/decode_funcs.o
|
||||
OBJ_TMS320+=$(ROOT)/asm/arch/tms320/c55x_plus/utils.o
|
||||
OBJ_TMS320+=$(ROOT)/asm/arch/tms320/c55x_plus/hashtable.o
|
||||
OBJ_TMS320+=$(ROOT)/asm/arch/tms320/c55x_plus/hashvector.o
|
||||
TARGET_TMS320=analysis_tms320.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_TMS320}
|
||||
|
||||
${TARGET_TMS320}: ${OBJ_TMS320} ${SHARED_OBJ}
|
||||
${CC} $(call libname,analysis_tms320) ${CFLAGS} \
|
||||
-I../../include/ -o ${TARGET_TMS320} ${OBJ_TMS320}
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_TMS3264C64X_CS=analysis_tms320c64x.o
|
||||
|
||||
include ${CURDIR}capstone.mk
|
||||
|
||||
STATIC_OBJ+=$(OBJ_TMS3264C64X_CS)
|
||||
TARGET_TMS3264C64X_CS=analysis_tms320c64x.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_TMS3264C64X_CS}
|
||||
|
||||
${TARGET_TMS3264C64X_CS}: ${OBJ_TMS3264C64X_CS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_tms320c64x) $(CS_CFLAGS) \
|
||||
-o analysis_tms320c64x.${EXT_SO} ${OBJ_TMS3264C64X_CS} $(CS_LDFLAGS)
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_TRICORE=analysis_tricore.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_TRICORE}
|
||||
TARGET_TRICORE=analysis_tricore.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_TRICORE}
|
||||
|
||||
${TARGET_TRICORE}: ${OBJ_TRICORE}
|
||||
${CC} $(call libname,analysis_tricore) ${LDFLAGS} ${CFLAGS} \
|
||||
-o $(TARGET_TRICORE) $(OBJ_TRICORE)
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
OBJ_V810=analysis_v810.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_V810}
|
||||
OBJ_V810+=../../asm/arch/v810/v810_disas.o
|
||||
TARGET_V810=analysis_v810.${EXT_SO}
|
||||
|
||||
CFLAGS+=-I../asm/arch/v810/
|
||||
|
||||
ALL_TARGETS+=${TARGET_V810}
|
||||
|
||||
${TARGET_V810}: ${OBJ_V810} ${SHARED_OBJ}
|
||||
$(call pwd)
|
||||
${CC} $(call libname,analysis_v810) ${CFLAGS} \
|
||||
-I../../asm/arch/v810/ -o ${TARGET_V810} ${OBJ_V810}
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
OBJ_V850=analysis_v850.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_V850}
|
||||
#OBJ_V850+=../../../../../../../../../../../../../../../../../../../../${LTOP}/asm/arch/v850/v850_disas.o
|
||||
OBJ_V850+=../../asm/arch/v850/v850_disas.o
|
||||
TARGET_V850=analysis_v850.${EXT_SO}
|
||||
|
||||
CFLAGS+=-I../asm/arch/v850/
|
||||
|
||||
ALL_TARGETS+=${TARGET_V850}
|
||||
|
||||
${TARGET_V850}: ${OBJ_V850} ${SHARED_OBJ}
|
||||
$(call pwd)
|
||||
${CC} $(call libname,analysis_v850) ${CFLAGS} \
|
||||
-I../../asm/arch/v850/ -o ${TARGET_V850} ${OBJ_V850}
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_VAX=analysis_vax.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_VAX}
|
||||
TARGET_VAX=analysis_vax.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_VAX}
|
||||
|
||||
${TARGET_VAX}: ${OBJ_VAX}
|
||||
${CC} $(call libname,analysis_vax) ${CFLAGS} -o analysis_vax.${EXT_SO} ${OBJ_VAX}
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_WASM=analysis_wasm.o
|
||||
CFLAGS+=-I$(WASM_ROOT)
|
||||
|
||||
STATIC_OBJ+=${OBJ_WASM}
|
||||
TARGET_WASM=analysis_wasm.${EXT_SO}
|
||||
# results in dupped symbol when building statically
|
||||
#OBJ_WASM+=../../asm/arch/wasm/wasm.o
|
||||
|
||||
ALL_TARGETS+=${TARGET_WASM}
|
||||
|
||||
${TARGET_WASM}: ${OBJ_WASM}
|
||||
${CC} $(call libname,analysis_wasm) ${LDFLAGS} ${CFLAGS} -o analysis_wasm.${EXT_SO} ${OBJ_WASM}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_WS=analysis_ws.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_WS}
|
||||
TARGET_WS=analysis_ws.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_WS}
|
||||
|
||||
${TARGET_WS}: ${OBJ_WS}
|
||||
${CC} $(call libname,analysis_ws) ${LDFLAGS} ${CFLAGS} \
|
||||
-o analysis_ws.${EXT_SO} ${OBJ_WS}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
OBJ_X86_CS=analysis_x86_cs.o
|
||||
|
||||
include $(CURDIR)capstone.mk
|
||||
|
||||
STATIC_OBJ+=$(OBJ_X86_CS)
|
||||
|
||||
TARGET_X86_CS=analysis_x86_cs.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_X86_CS}
|
||||
|
||||
${TARGET_X86_CS}: ${OBJ_X86_CS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_x86_cs) $(CS_CFLAGS) \
|
||||
-o analysis_x86_cs.${EXT_SO} ${OBJ_X86_CS} $(CS_LDFLAGS)
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
OBJ_XAP=analysis_xap.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_XAP}
|
||||
TARGET_XAP=analysis_xap.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_XAP}
|
||||
|
||||
${TARGET_XAP}: ${OBJ_XAP}
|
||||
${CC} $(call libname,analysis_xap) ${CFLAGS} -o analysis_xap.${EXT_SO} ${OBJ_XAP}
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
OBJ_XCORE_CS=analysis_xcore_cs.o
|
||||
|
||||
include p/capstone.mk
|
||||
|
||||
STATIC_OBJ+=${OBJ_XCORE_CS}
|
||||
TARGET_XCORE_CS=analysis_xcore_cs.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_XCORE_CS}
|
||||
|
||||
${TARGET_XCORE_CS}: ${OBJ_XCORE_CS}
|
||||
${CC} ${CFLAGS} $(call libname,analysis_xcore_cs) $(CS_CFLAGS) \
|
||||
-o analysis_xcore_cs.${EXT_SO} ${OBJ_XCORE_CS} $(CS_LDFLAGS)
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_XTENSA=analysis_xtensa.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_XTENSA}
|
||||
TARGET_XTENSA=analysis_xtensa.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=$(TARGET_XTENSA)
|
||||
|
||||
$(TARGET_XTENSA): $(OBJ_XTENSA)
|
||||
$(CC) $(call libname,analysis_xtensa) -I$(LTOP)/asm/arch/include/ \
|
||||
$(LDFLAGS) $(CFLAGS) -o analysis_xtensa.$(EXT_SO) $(OBJ_XTENSA)
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OBJ_Z80=analysis_z80.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_Z80}
|
||||
TARGET_Z80=analysis_z80.${EXT_SO}
|
||||
|
||||
ALL_TARGETS+=${TARGET_Z80}
|
||||
|
||||
${TARGET_Z80}: ${OBJ_Z80}
|
||||
${CC} $(call libname,analysis_z80) ${LDFLAGS} ${CFLAGS} \
|
||||
-o analysis_z80.${EXT_SO} ${OBJ_Z80}
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
include ../../global.mk
|
||||
|
||||
NAME=rz_asm
|
||||
RZ_DEPS=rz_syscall rz_lang rz_util rz_parse
|
||||
RZ_DEPS+=rz_flag rz_cons rz_reg
|
||||
CFLAGS+=-DRZ_PLUGIN_INCORE -Iarch/include -Iarch -I../../shlr
|
||||
CURDIR=p/
|
||||
|
||||
include $(TOP)/librz/config.mk
|
||||
|
||||
include p/capstone.mk
|
||||
LDFLAGS+=${CS_LDFLAGS}
|
||||
include $(STOP)/java/deps.mk
|
||||
include $(STOP)/capstone.mk
|
||||
|
||||
.PHONY: all plugins
|
||||
|
||||
EXTRA_CLEAN=doclean
|
||||
|
||||
all: plugins
|
||||
|
||||
doclean:
|
||||
@cd d && ${MAKE} clean
|
||||
@cd p && ${MAKE} clean
|
||||
rm -f `find arch/| grep '\.o$$'`
|
||||
|
||||
plugins: ${LIBSO} ${LIBAR}
|
||||
${MAKE} -C d all
|
||||
${MAKE} -C p all
|
||||
|
||||
include ${STATIC_ASM_PLUGINS}
|
||||
STATIC_OBJS=$(subst ..,p/..,$(subst asm_,p/asm_,$(STATIC_OBJ)))
|
||||
OBJS=${STATIC_OBJS} asm.o acode.o aop.o binutils_as.o
|
||||
OBJS+=${SHARED2_OBJ}
|
||||
|
||||
include $(TOP)/librz/rules.mk
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
all:
|
||||
gcc -I../../../include armass.c -DMAIN -lrz_util
|
||||
./a.out
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
CC=clang
|
||||
all:
|
||||
${CC} -I. -I ../../../arch/include *.c
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
CC?=gcc
|
||||
|
||||
all:
|
||||
${CC} -DTEST=1 -O0 -g disasm.c
|
||||
|
||||
clean:
|
||||
rm -f ./a.out
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
all:
|
||||
gcc -Wall *.c
|
||||
|
||||
clean:
|
||||
rm -f *.d *.o a.out
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
include ../../config-user.mk
|
||||
include ../../mk/${COMPILER}.mk
|
||||
|
||||
CFLAGS+=-fPIC
|
||||
OBJS=ebc_disas.o
|
||||
|
||||
all: out
|
||||
|
||||
#out: ${OBJS}
|
||||
# ${CC} -g ${LDFLAGS} ${CFLAGS} -I. ${OBJS}
|
||||
|
||||
#clean:
|
||||
# rm -rf ${OBJS} a.out
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
all:
|
||||
git clone https://github.com/myri/lanai-binutils.git
|
||||
mkdir -p gnu
|
||||
cp -f include/opcode/lanai.h ../include/opcode
|
||||
cp -f opcodes/lanai-*.c gnu/
|
||||
rm -rf lanai-binutils
|
||||
|
||||
|
|
@ -1,37 +0,0 @@
|
|||
FILES=6502 8051 m68k x86 arc arm avr LH5801 ppc z80 mips sparc sh malbolge xtensa
|
||||
FILES+=i8080 java i4004 dalvik msp430 lm32 sysz tms320 riscv propeller v810 v850
|
||||
FILES+=pic18c chip8 tricore
|
||||
F_SDB=$(addsuffix .sdb,${FILES})
|
||||
SDB=../../../shlr/sdb/sdb
|
||||
|
||||
CFLAGS+=-fvisibility=hidden
|
||||
LDFLAGS+=-fvisibility=hidden
|
||||
include ../../../config-user.mk
|
||||
|
||||
all: ${F_SDB}
|
||||
|
||||
%.sdb:%.sdb.txt
|
||||
${SDB} $@ = < $<
|
||||
test -f $@
|
||||
|
||||
clean:
|
||||
rm -f *.sdb
|
||||
|
||||
.PHONY: all clean install install-symlink symstall uninstall
|
||||
|
||||
# XXX rmdblslash not defined, but doesnt warns about it
|
||||
OPDIR=${DESTDIR}${DATADIR}/rizin/${VERSION}/opcodes
|
||||
|
||||
install: ${F_SDB}
|
||||
-rm -rf "${OPDIR}"
|
||||
mkdir -p "${OPDIR}"
|
||||
cp -f *.sdb "${OPDIR}"
|
||||
|
||||
#that sed is a workaround for mingw's pwd
|
||||
CWD=$(shell pwd)
|
||||
symstall install-symlink: ${F_SDB}
|
||||
mkdir -p "${OPDIR}"
|
||||
for FILE in *.sdb ; do ln -fs "${CWD}/$$FILE" "${OPDIR}/$$FILE" ; done
|
||||
|
||||
uninstall:
|
||||
rm -rf "${OPDIR}"
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
OBJ_6502=asm_6502.o
|
||||
|
||||
STATIC_OBJ+=${OBJ_6502}
|
||||
TARGET_6502=asm_6502.${EXT_SO}
|
||||
|
||||
ifeq ($(WITHPIC),1)
|
||||
ALL_TARGETS+=${TARGET_6502}
|
||||
|
||||
${TARGET_6502}: ${OBJ_6502}
|
||||
${CC} ${call libname,asm_6502} ${CFLAGS} -o ${TARGET_6502} ${OBJ_6502}
|
||||
endif
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
OBJ_6502_CS=asm_6502_cs.o
|
||||
|
||||
include p/capstone.mk
|
||||
|
||||
STATIC_OBJ+=${OBJ_6502_CS}
|
||||
SHARED_OBJ+=${SHARED_6502_CS}
|
||||
TARGET_6502_CS=asm_6502_cs.${EXT_SO}
|
||||
|
||||
ifeq ($(WITHPIC),1)
|
||||
ALL_TARGETS+=${TARGET_6502_CS}
|
||||
|
||||
${TARGET_6502_CS}: ${OBJ_6502_CS}
|
||||
${CC} $(call libname,asm_6502_cs) ${LDFLAGS} ${CFLAGS} $(CS_LDFLAGS) \
|
||||
-o ${TARGET_6502_CS} ${OBJ_6502_CS} ${SHARED2_6502_CS}
|
||||
endif
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
OBJ_8051=asm_8051.o
|
||||
OBJ_8051+=../arch/8051/8051_ass.o
|
||||
CFLAGS+=-I./arch/8051/
|
||||
|
||||
STATIC_OBJ+=${OBJ_8051}
|
||||
TARGET_8051=asm_8051.${EXT_SO}
|
||||
|
||||
ifeq ($(WITHPIC),1)
|
||||
ALL_TARGETS+=${TARGET_8051}
|
||||
|
||||
${TARGET_8051}: ${OBJ_8051}
|
||||
${CC} $(call libname,asm_8051) ${LDFLAGS} ${CFLAGS} \
|
||||
-o ${TARGET_8051} ${OBJ_8051}
|
||||
endif
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
include ../../config.mk
|
||||
include ../../../mk/platform.mk
|
||||
|
||||
CFLAGS+=-I$(TOP)/shlr -I../../include -I../arch/ -I../arch/include
|
||||
CFLAGS+=-Wall -shared ${PIC_CFLAGS} ${LDFLAGS_LIB} ${LDFLAGS_LINKPATH}..
|
||||
LDFLAGS+=-L../../util -L../../flag
|
||||
ifeq ($(CC),cccl)
|
||||
LDFLAGS+=${LINK} -llibrz_flag -llibrz_util
|
||||
else
|
||||
LDFLAGS+=${LINK} -lrz_flag -lrz_util
|
||||
endif
|
||||
|
||||
CURDIR=
|
||||
|
||||
ifeq ($(WITHPIC),1)
|
||||
all: ${ALL_TARGETS}
|
||||
|
||||
ALL_TARGETS=
|
||||
# TODO: rename to enabled plugins
|
||||
ARCHS=mips_gnu.mk x86_cs.mk sparc_cs.mk sparc_gnu.mk java.mk bf.mk arm_gnu.mk dalvik.mk
|
||||
ARCHS+=x86_as.mk x86_nz.mk cris_gnu.mk vax.mk
|
||||
ARCHS+=ppc_gnu.mk ppc_as.mk ppc_cs.mk xap.mk x86_nasm.mk avr.mk
|
||||
ARCHS+=sh.mk arm_winedbg.mk tms320.mk gb.mk snes.mk ebc.mk malbolge.mk ws.mk
|
||||
ARCHS+=6502.mk h8300.mk cr16.mk v850.mk spc700.mk propeller.mk msp430.mk i4004.mk
|
||||
ARCHS+=lh5801.mk v810.mk mcs96.mk lm32.mk
|
||||
ARCHS+=riscv.mk rsp.mk mcore.mk
|
||||
include $(ARCHS)
|
||||
|
||||
clean:
|
||||
-rm -f *.${EXT_SO} *.o ${STATIC_OBJ}
|
||||
|
||||
mrproper: clean
|
||||
-rm -f *.d ../arch/*/*/*.d
|
||||
|
||||
.PHONY: all clean mrproper
|
||||
else
|
||||
all clean mrproper:
|
||||
|
||||
.PHONY: all clean mrproper
|
||||
endif
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue