2012-02-18 00:49:59 +00:00
|
|
|
-include config-user.mk
|
2010-01-15 00:32:28 +00:00
|
|
|
include global.mk
|
2009-03-05 12:15:28 +00:00
|
|
|
|
2012-02-17 12:55:54 +00:00
|
|
|
STRIP?=strip
|
2011-07-20 22:50:16 +00:00
|
|
|
ifneq ($(shell bsdtar -h 2>/dev/null|grep bsdtar),)
|
|
|
|
TAR=bsdtar czvf
|
2011-07-18 22:12:36 +00:00
|
|
|
else
|
|
|
|
TAR=tar -czvf
|
|
|
|
endif
|
2011-05-15 02:31:08 +00:00
|
|
|
PWD=$(shell pwd)
|
2010-10-29 01:38:43 +00:00
|
|
|
REMOTE=radare.org:/srv/http/radareorg/get/beta
|
|
|
|
|
2010-10-29 01:10:10 +00:00
|
|
|
all: plugins.cfg
|
|
|
|
${MAKE} libr
|
|
|
|
${MAKE} binr
|
2010-01-13 22:42:49 +00:00
|
|
|
|
|
|
|
plugins.cfg:
|
2011-05-15 23:47:01 +00:00
|
|
|
@if [ ! -e config-user.mk ]; then echo ; \
|
|
|
|
echo " Please, run ./configure first" ; echo ; exit 1 ; fi
|
2010-01-13 22:42:49 +00:00
|
|
|
./configure-plugins
|
2010-01-12 18:57:33 +00:00
|
|
|
|
2012-08-10 09:35:38 +00:00
|
|
|
farm:
|
|
|
|
./sys/farm/run.sh
|
|
|
|
|
2010-01-12 18:57:33 +00:00
|
|
|
libr:
|
2009-07-16 00:30:20 +00:00
|
|
|
cd libr && ${MAKE} all
|
2009-02-05 21:08:46 +00:00
|
|
|
|
2010-05-28 15:15:20 +00:00
|
|
|
binr:
|
|
|
|
cd binr && ${MAKE} all
|
|
|
|
|
2010-10-17 23:51:00 +00:00
|
|
|
w32:
|
2010-10-29 01:38:43 +00:00
|
|
|
make clean
|
2010-10-17 23:51:00 +00:00
|
|
|
# TODO: add support for debian
|
2010-10-28 12:11:19 +00:00
|
|
|
./configure --without-ssl --without-gmp --with-compiler=i486-mingw32-gcc --with-ostype=windows --host=i486-unknown-windows
|
2010-10-17 23:51:00 +00:00
|
|
|
make
|
|
|
|
|
2012-09-02 23:27:52 +00:00
|
|
|
.PHONY: depgraph.png
|
|
|
|
depgraph.png:
|
|
|
|
cd libr ; perl depgraph.pl | dot -Tpng -odepgraph.png
|
|
|
|
|
|
|
|
android:
|
|
|
|
@if [ -z "$(NDK_ARCH)" ]; then echo "Set NDK_ARCH=[arm|mips|x86]" ; false; fi
|
|
|
|
sys/android-${NDK_ARCH}.sh
|
|
|
|
|
2010-01-15 16:02:04 +00:00
|
|
|
w32dist:
|
2010-04-12 00:22:52 +00:00
|
|
|
rm -rf radare2-w32-${VERSION} w32dist
|
2010-01-15 16:02:04 +00:00
|
|
|
mkdir w32dist
|
2011-09-23 10:25:06 +00:00
|
|
|
for a in `find libr | grep -e dll$$`; do cp $$a w32dist ; done
|
|
|
|
for a in `find binr | grep -e exe$$`; do cp $$a w32dist ; done
|
2010-06-28 00:12:35 +00:00
|
|
|
rm w32dist/plugin.dll
|
2011-11-29 17:31:26 +00:00
|
|
|
mkdir -p w32dist/radare2/${VERSION}/magic
|
|
|
|
cp -f libr/magic/d/default/* w32dist/radare2/${VERSION}/magic
|
2011-10-24 10:07:12 +00:00
|
|
|
mkdir -p w32dist/radare2/${VERSION}/syscall
|
|
|
|
cp -f libr/syscall/d/*.sdb w32dist/radare2/${VERSION}/syscall
|
2011-11-12 00:52:31 +00:00
|
|
|
mkdir -p w32dist/radare2/${VERSION}/opcodes
|
|
|
|
cp -f libr/asm/d/*.sdb w32dist/radare2/${VERSION}/opcodes
|
2011-10-24 10:07:12 +00:00
|
|
|
mkdir -p w32dist/share/doc/radare2
|
2011-11-29 02:14:27 +00:00
|
|
|
mkdir -p w32dist/include/libr
|
|
|
|
cp libr/include/*.h w32dist/include/libr
|
|
|
|
#mkdir -p w32dist/include/libr/sflib
|
2011-10-24 10:07:12 +00:00
|
|
|
cp -f doc/fortunes w32dist/share/doc/radare2
|
2010-01-15 16:02:04 +00:00
|
|
|
mv w32dist radare2-w32-${VERSION}
|
2011-10-12 01:24:19 +00:00
|
|
|
rm -f radare2-w32-${VERSION}.zip
|
2010-01-15 16:02:04 +00:00
|
|
|
zip -r radare2-w32-${VERSION}.zip radare2-w32-${VERSION}
|
|
|
|
|
2010-10-29 01:38:43 +00:00
|
|
|
w32beta: w32dist
|
|
|
|
scp radare2-w32-${VERSION}.zip ${REMOTE}
|
2011-05-17 23:35:52 +00:00
|
|
|
cd r2-bindings ; $(MAKE) w32dist
|
|
|
|
scp radare2-bindings-w32-${VERSION}.zip ${REMOTE}
|
2010-10-29 01:38:43 +00:00
|
|
|
|
2010-01-13 22:42:49 +00:00
|
|
|
clean:
|
2012-09-04 00:09:01 +00:00
|
|
|
for a in libr binr shlr ; do (cd $$a ; ${MAKE} clean) ; done
|
2010-01-13 22:42:49 +00:00
|
|
|
|
2010-07-13 09:59:55 +00:00
|
|
|
mrproper:
|
2012-09-04 00:09:01 +00:00
|
|
|
for a in libr binr shlr ; do ( cd $$a ; ${MAKE} mrproper) ; done
|
2012-09-03 23:46:12 +00:00
|
|
|
rm -f config-user.mk plugins.cfg libr/config.h
|
|
|
|
rm -f libr/include/r_userconf.h libr/config.mk
|
2010-06-15 12:10:42 +00:00
|
|
|
rm -f pkgcfg/*.pc
|
2009-06-15 02:44:05 +00:00
|
|
|
|
2009-07-16 00:30:20 +00:00
|
|
|
pkgcfg:
|
2010-01-22 13:19:10 +00:00
|
|
|
cd libr && ${MAKE} pkgcfg
|
2009-07-16 00:30:20 +00:00
|
|
|
|
2010-03-12 17:46:11 +00:00
|
|
|
install-man:
|
2011-07-03 11:06:16 +00:00
|
|
|
mkdir -p ${MDR}/man1
|
|
|
|
for a in man/*.1 ; do ${INSTALL_MAN} $$a ${MDR}/man1 ; done
|
|
|
|
cd ${MDR}/man1 && ln -fs radare2.1 r2.1
|
2010-06-18 15:52:30 +00:00
|
|
|
|
|
|
|
install-man-symlink:
|
2011-07-03 11:06:16 +00:00
|
|
|
mkdir -p ${MDR}/man1
|
2011-07-13 09:30:25 +00:00
|
|
|
cd man && for a in *.1 ; do ln -fs ${PWD}/man/$$a ${MDR}/man1/$$a ; done
|
2011-07-03 11:06:16 +00:00
|
|
|
cd ${MDR}/man1 && ln -fs radare2.1 r2.1
|
2010-03-12 17:46:11 +00:00
|
|
|
|
2011-02-17 00:22:15 +00:00
|
|
|
install-doc:
|
2011-03-13 19:27:28 +00:00
|
|
|
${INSTALL_DIR} ${PFX}/share/doc/radare2
|
|
|
|
for a in doc/* ; do ${INSTALL_DATA} $$a ${PFX}/share/doc/radare2 ; done
|
2011-02-17 00:22:15 +00:00
|
|
|
|
|
|
|
install-doc-symlink:
|
2011-03-13 19:27:28 +00:00
|
|
|
${INSTALL_DIR} ${PFX}/share/doc/radare2
|
2012-02-14 17:10:01 +00:00
|
|
|
cd doc ; for a in * ; do ln -fs ${PWD}/doc/$$a ${PFX}/share/doc/radare2 ; done
|
2011-02-17 00:22:15 +00:00
|
|
|
|
2011-12-01 14:37:47 +00:00
|
|
|
DATADIRS=libr/asm/d libr/syscall/d libr/magic/d
|
|
|
|
#binr/ragg2/d
|
2012-09-06 01:12:54 +00:00
|
|
|
install: install-doc install-man install-www
|
2010-02-21 19:21:36 +00:00
|
|
|
cd libr && ${MAKE} install PARENT=1 PREFIX=${PREFIX} DESTDIR=${DESTDIR}
|
2010-05-29 01:30:36 +00:00
|
|
|
cd binr && ${MAKE} install PREFIX=${PREFIX} DESTDIR=${DESTDIR}
|
2011-11-29 02:14:27 +00:00
|
|
|
for a in ${DATADIRS} ; do \
|
|
|
|
(cd $$a ; ${MAKE} install LIBDIR=${LIBDIR} PREFIX=${PREFIX} DESTDIR=${DESTDIR} ); \
|
|
|
|
done
|
2012-02-01 01:22:43 +00:00
|
|
|
mkdir -p ${DESTDIR}/${LIBDIR}/radare2/${VERSION}/hud
|
|
|
|
cp -f libr/core/hud/main ${DESTDIR}/${LIBDIR}/radare2/${VERSION}/hud/
|
2009-02-05 21:28:33 +00:00
|
|
|
|
2012-09-06 01:12:54 +00:00
|
|
|
install-www:
|
|
|
|
rm -rf ${DESTDIR}/${WWWROOT}
|
|
|
|
mkdir -p ${DESTDIR}/${WWWROOT}
|
|
|
|
cp -rf shlr/www/* ${DESTDIR}/${WWWROOT}
|
|
|
|
|
|
|
|
symstall-www:
|
|
|
|
rm -rf ${DESTDIR}/${WWWROOT}
|
|
|
|
mkdir -p ${DESTDIR}/${WWWROOT}
|
|
|
|
cd ${DESTDIR}/${WWWROOT} ; for a in ${PWD}/shlr/www/* ; do \
|
|
|
|
ln -fs $$a ${DLIBDIR}/radare2/${VERSION}/www ; done
|
|
|
|
|
2012-09-03 23:46:12 +00:00
|
|
|
DLIBDIR=$(DESTDIR)/$(LIBDIR)
|
|
|
|
|
2011-02-27 20:56:13 +00:00
|
|
|
install-pkgconfig-symlink:
|
2012-09-03 23:46:12 +00:00
|
|
|
@${INSTALL_DIR} ${DLIBDIR}/pkgconfig
|
|
|
|
cd pkgcfg ; for a in *.pc ; do ln -fs $${PWD}/$$a ${DLIBDIR}/pkgconfig/$$a ; done
|
2011-02-27 20:56:13 +00:00
|
|
|
|
2012-09-06 01:12:54 +00:00
|
|
|
symstall install-symlink: install-man-symlink install-doc-symlink install-pkgconfig-symlink symstall-www
|
2010-05-24 15:51:51 +00:00
|
|
|
cd libr && ${MAKE} install-symlink PREFIX=${PREFIX} DESTDIR=${DESTDIR}
|
2010-06-15 11:10:46 +00:00
|
|
|
cd binr && ${MAKE} install-symlink PREFIX=${PREFIX} DESTDIR=${DESTDIR}
|
2012-09-03 23:46:12 +00:00
|
|
|
for a in ${DATADIRS} ; do (\
|
|
|
|
cd $$a ; \
|
|
|
|
echo $$a ; \
|
|
|
|
${MAKE} install-symlink LIBDIR=${LIBDIR} PREFIX=${PREFIX} DESTDIR=${DESTDIR} ); \
|
2011-11-29 02:14:27 +00:00
|
|
|
done
|
2012-09-03 23:46:12 +00:00
|
|
|
mkdir -p ${DLIBDIR}/radare2/${VERSION}/hud
|
|
|
|
ln -fs ${PWD}/libr/core/hud/main ${DLIBDIR}/radare2/${VERSION}/hud/main
|
2010-05-24 15:51:51 +00:00
|
|
|
|
2011-03-28 08:24:01 +00:00
|
|
|
deinstall uninstall:
|
2010-02-21 19:21:36 +00:00
|
|
|
cd libr && ${MAKE} uninstall PARENT=1 PREFIX=${PREFIX} DESTDIR=${DESTDIR}
|
2010-06-15 11:10:46 +00:00
|
|
|
cd binr && ${MAKE} uninstall PARENT=1 PREFIX=${PREFIX} DESTDIR=${DESTDIR}
|
2011-10-14 08:09:53 +00:00
|
|
|
cd libr/syscall/d && ${MAKE} uninstall PARENT=1 PREFIX=${PREFIX} DESTDIR=${DESTDIR} LIBDIR=${LIBDIR}
|
2011-03-28 08:24:01 +00:00
|
|
|
@echo
|
|
|
|
@echo "Run 'make purge' to also remove installed files from previous versions of r2"
|
|
|
|
@echo
|
|
|
|
|
2012-02-17 12:23:58 +00:00
|
|
|
purge-doc:
|
|
|
|
rm -rf ${DESTDIR}/${PREFIX}/share/doc/radare2
|
|
|
|
cd man ; for a in *.1 ; do rm -f ${MDR}/man1/$$a ; done
|
|
|
|
rm -f ${MDR}/man1/r2.1
|
|
|
|
|
2012-08-06 15:34:01 +00:00
|
|
|
R2BINS=$(shell cd binr ; echo r*2)
|
2012-02-17 12:23:58 +00:00
|
|
|
purge-dev:
|
|
|
|
rm -rf ${DESTDIR}/${LIBDIR}/libr_*.a
|
|
|
|
rm -rf ${DESTDIR}/${LIBDIR}/pkgconfig/r_*.pc
|
|
|
|
rm -rf ${DESTDIR}/${INCLUDEDIR}/libr
|
|
|
|
rm -f ${DESTDIR}/${LIBDIR}/radare2/${VERSION}/-*
|
|
|
|
# XXX: this must be in purge-sym ?
|
2012-08-06 15:34:01 +00:00
|
|
|
-for a in ${R2BINS} ; do ${STRIP} -s ${DESTDIR}/${BINDIR}/$$a 2> /dev/null ; done
|
|
|
|
-for a in ${DESTDIR}/${LIBDIR}/libr_*.so ; do ${STRIP} -s $$a ; done
|
2012-02-17 12:23:58 +00:00
|
|
|
|
|
|
|
purge: purge-doc purge-dev
|
2012-08-06 15:34:01 +00:00
|
|
|
for a in ${R2BINS} ; do rm -f ${DESTDIR}/${BINDIR}/$$a ; done
|
2011-11-26 04:14:03 +00:00
|
|
|
rm -f ${DESTDIR}/${BINDIR}/ragg2-cc
|
2011-11-02 01:01:24 +00:00
|
|
|
rm -f ${DESTDIR}/${LIBDIR}/libr_*
|
2011-07-19 09:25:11 +00:00
|
|
|
rm -rf ${DESTDIR}/${LIBDIR}/radare2
|
|
|
|
rm -rf ${DESTDIR}/${INCLUDEDIR}/libr
|
2009-03-06 00:38:23 +00:00
|
|
|
|
2011-05-17 23:35:52 +00:00
|
|
|
beta: dist r2-bindings-dist
|
2010-10-28 01:30:15 +00:00
|
|
|
scp ../radare2-${VERSION}.tar.gz ${REMOTE}
|
2011-07-19 09:25:11 +00:00
|
|
|
scp r2-bindings-${VERSION}.tar.gz ${REMOTE}
|
2010-10-28 01:30:15 +00:00
|
|
|
|
2011-10-24 09:38:33 +00:00
|
|
|
version:
|
|
|
|
@echo ${VERSION}
|
|
|
|
|
2011-05-17 23:35:52 +00:00
|
|
|
r2-bindings-dist:
|
|
|
|
cd r2-bindings && ${MAKE} dist
|
2010-03-14 18:36:44 +00:00
|
|
|
|
2009-03-05 12:15:28 +00:00
|
|
|
dist:
|
2012-08-13 16:06:24 +00:00
|
|
|
git log $$(git show-ref `git tag |tail -n1`)..HEAD > ChangeLog
|
2012-09-03 23:46:12 +00:00
|
|
|
DIR=`basename $$PWD` ; \
|
2012-08-13 23:48:39 +00:00
|
|
|
FILES=`git ls-files | sed -e s,^,radare2-${VERSION}/,` ; \
|
2012-09-03 23:46:12 +00:00
|
|
|
cd .. && mv $${DIR} radare2-${VERSION} && \
|
2012-08-13 16:06:24 +00:00
|
|
|
${TAR} radare2-${VERSION}.tar.gz $${FILES} radare2-${VERSION}/ChangeLog ;\
|
2012-09-03 23:46:12 +00:00
|
|
|
mv radare2-${VERSION} $${DIR}
|
2009-04-25 11:29:39 +00:00
|
|
|
|
|
|
|
shot:
|
|
|
|
DATE=`date '+%Y%m%d'` ; \
|
2012-08-13 16:06:24 +00:00
|
|
|
FILES=`git ls-files | sed -e s,^,radare2-${DATE}/,` ; \
|
2009-04-25 11:29:39 +00:00
|
|
|
cd .. && mv radare2 radare2-$${DATE} && \
|
2011-07-18 22:12:36 +00:00
|
|
|
${TAR} radare2-$${DATE}.tar.gz $${FILES} ;\
|
2009-04-25 11:29:39 +00:00
|
|
|
mv radare2-$${DATE} radare2 && \
|
2009-09-25 02:13:40 +00:00
|
|
|
scp radare2-$${DATE}.tar.gz radare.org:/srv/http/radareorg/get/shot
|
2009-08-22 01:54:24 +00:00
|
|
|
|
2012-09-03 23:46:12 +00:00
|
|
|
tests:
|
2012-08-28 15:50:49 +00:00
|
|
|
@if [ -d r2-regressions ]; then \
|
2012-02-03 15:28:52 +00:00
|
|
|
cd r2-regressions ; git pull ; \
|
|
|
|
else \
|
|
|
|
git clone git://github.com/vext01/r2-regressions.git ; \
|
|
|
|
fi
|
|
|
|
cd r2-regressions ; ${MAKE}
|
|
|
|
|
2009-08-22 01:54:24 +00:00
|
|
|
include ${MKPLUGINS}
|
2009-03-05 12:15:28 +00:00
|
|
|
|
2011-10-24 09:38:33 +00:00
|
|
|
.PHONY: all clean mrproper install symstall uninstall deinstall dist shot pkgcfg
|
2012-09-03 23:46:12 +00:00
|
|
|
.PHONY: r2-bindings r2-bindings-dist libr binr install-man version w32dist tests
|