Commit Graph

272 Commits

Author SHA1 Message Date
Nguyen Anh Quynh
8aa6fce278 Revert "Makefile: avoid generating capstone.pc if BUILD_CORE_ONLY=yes"
This reverts commit 35d4e449e1.
2015-01-28 05:21:18 +08:00
Nguyen Anh Quynh
35d4e449e1 Makefile: avoid generating capstone.pc if BUILD_CORE_ONLY=yes 2015-01-28 04:54:31 +08:00
Nguyen Anh Quynh
c00bc358b1 fix BUILD_CORE_ONLY option of Makefile, so we can do 'BUILD_CORE_ONLY=yes make.sh' 2015-01-28 04:42:34 +08:00
Nguyen Tan Cong
39fd154139 Edit setup.py to build python binding with make.sh 2015-01-28 00:35:44 +07:00
Nguyen Anh Quynh
b16dc856a8 Makefile: check target should also run test_iter 2014-11-02 08:21:34 +08:00
Nguyen Anh Quynh
fff1307980 Makefile: simplify generate-pkgcfg by using INCDIR. reviewed by Pancake 2014-10-02 16:14:26 +08:00
Nguyen Anh Quynh
e702b55507 Makefile: do not remove old libs in install 'target' 2014-10-02 16:01:00 +08:00
Nguyen Anh Quynh
984d45068c Makefile: add 'check' target 2014-10-01 16:42:29 +08:00
baguette
86e845056d renamed CAPSTONE_NO_ATT to CAPSTONE_X86_ATT_DISABLE, added options to makefile, cmake, compile.txt 2014-08-17 20:59:05 +02:00
Ole André Vadla Ravnås
b202b914f9 Simplify universal builds by relying on the linker to do the right thing 2014-07-04 23:38:20 +02:00
Ole André Vadla Ravnås
6583f069a7 Fix universal build support for Mac and iOS 2014-07-04 23:09:19 +02:00
Nguyen Anh Quynh
8c0ab867a1 rename CCLD to LINK 2014-06-03 23:43:53 +07:00
Nguyen Anh Quynh
0936b56c54 rename libcapstone.dll to capstone.dll, libcapstone.lib to capstone.lib for Windows platform 2014-06-04 00:26:33 +08:00
Nguyen Anh Quynh
c80d840ffc add XCore architecture 2014-05-26 23:02:48 +08:00
Nguyen Anh Quynh
f260c2023e fix some conflicts when merging msvc2 into next 2014-05-19 11:32:55 +08:00
danghvu
e1c7a21cae Avoid modifying the raw LDFLAGS directly 2014-05-14 02:13:36 -05:00
Nguyen Anh Quynh
7cc5e9b8f0 Makefile: clean target should delete libs created by all ways of building 2014-05-14 15:07:16 +08:00
Nguyen Anh Quynh
76087d2c33 rename static library extension to .lib for cross-windows building 2014-05-14 14:53:51 +08:00
Nguyen Anh Quynh
506890863c x86: assembly syntax is irrelevant in Diet mode. this optimization reduces library size to only 180KB on OSX 2014-05-14 12:26:53 +08:00
danghvu
ad66420061 Switch to cd && make from make -C 2014-05-12 14:27:38 -05:00
Nguyen Anh Quynh
91a19232a2 Makefile: do not overwritte LDFLAGS with null value 2014-05-11 01:13:36 +08:00
Nguyen Anh Quynh
55b8ecd7bd Makefile: do not overwritte LDFLAGS with null value 2014-05-11 01:04:05 +08:00
Nguyen Anh Quynh
b07523ff26 Merge branch 'next' into msvc2 2014-05-10 19:46:37 +08:00
Nguyen Anh Quynh
87a3f6915d Makefile: define CAPSTONE_USE_SYS_DYN_MEM macro for consistency 2014-05-10 19:26:32 +08:00
Nguyen Anh Quynh
595386c668 do not overwrite LDFLAGS in tests/Makefile 2014-05-10 15:50:38 +08:00
Nguyen Anh Quynh
58a0047d43 Makefile: put common functions into functions.mk 2014-05-01 22:53:52 +08:00
Ole André Vadla Ravnås
927fcbcf88 Makefile: make it possible to avoid building static/shared library 2014-05-01 16:06:11 +02:00
Ole André Vadla Ravnås
f536d4014b Makefile: implement a "silent rules" approach
The old behavior is still available through `make V=1`. This is similar
to the Linux kernel and newer versions of automake.
2014-05-01 16:06:03 +02:00
Ole André Vadla Ravnås
c20b049d04 Makefile: detect Apple toolchain instead of relying on uname
This allows cross-compiling for Android on a Mac.
2014-05-01 16:05:58 +02:00
Ole André Vadla Ravnås
24094ee7e9 Makefile: fix install target when building out-of-tree 2014-05-01 16:05:53 +02:00
Nguyen Anh Quynh
375f03c230 Makefile: build tests in the old way if BUILDDIR is not defined. this fixes a bug introduced by some recent changes by Ole André Vadla Ravnås 2014-04-30 07:19:18 +08:00
Ole André Vadla Ravnås
7a7343945d Makefile: allow BUILDDIR to be a relative path 2014-04-30 00:06:41 +02:00
Nguyen Anh Quynh
6ae472fe36 Makefile: avoid redefining BUILDDIR, so we can remove its directory in clean target 2014-04-29 16:29:55 +08:00
Nguyen Anh Quynh
5519a68812 Makefile: fix clean targets and put all test binaries under BUILDIR/tests/ 2014-04-29 16:24:30 +08:00
Nguyen Anh Quynh
df60ada2ad Merge branch 'feature/build-out-of-tree' of https://github.com/frida/capstone into config 2014-04-29 15:13:55 +08:00
Ole André Vadla Ravnås
35f937d2db Adapt core build system to allow building out-of-tree
Simply define `BUILDDIR` to where you would like build output to go.
2014-04-29 09:00:34 +02:00
Nguyen Anh Quynh
e31327da14 rename USE_SYS_DYN_MEM to CAPSTONE_USE_SYS_DYN_MEM for consistency with other options 2014-04-29 14:25:15 +08:00
Nguyen Anh Quynh
77af9fb9c6 Allow user to specify compiler optimization flags via CFLAGS at compile time. suggested by Ole André Vadla Ravnås 2014-04-29 07:11:55 +08:00
Nguyen Anh Quynh
360bf1e6ff handle special systems putting x86_64 libs into lib64/ in make.sh, not in Makefile 2014-04-14 13:38:00 +08:00
Nguyen Anh Quynh
af0e937d19 make.sh: copy capstone.pc to the right dir for pkgconfig. adapted from patches of Ben Nagy & Pancake 2014-04-12 23:10:46 +08:00
Nguyen Anh Quynh
9b4b377433 Makefile: rename to PKGCFCGDIR to PKGCFGDIR. patch by Pancake 2014-04-12 18:06:54 +08:00
Nguyen Anh Quynh
e3606d90a2 Makefile: no more pkgconfig hack 2014-04-12 18:02:55 +08:00
Nguyen Anh Quynh
70ec05dad3 Makefile: fix lib64 setup for x64 non-OSX (including Linux) 2014-04-08 23:48:30 +08:00
Nguyen Anh Quynh
ad6cc985d7 Makefile: on x64, prefer /usr/lib64, if it is existent, over /usr/lib. bug reported & fix suggested by @chaostheory88 2014-04-08 23:34:44 +08:00
Nguyen Anh Quynh
4011d7374d revert pkgconfig.mk 2014-03-31 20:47:35 +08:00
Nguyen Anh Quynh
719e9da011 Makefile: OSX need -dynamiclib option 2014-03-30 22:29:46 +08:00
Nguyen Anh Quynh
cad464d097 Makefile: OSX need -dynamiclib option 2014-03-30 22:29:03 +08:00
Nguyen Anh Quynh
2d201349fa Makefile: -share option is not for Darwin 2014-03-30 22:26:15 +08:00
Nguyen Anh Quynh
927b2add31 Makefile: -share option is not for Darwin 2014-03-30 22:25:16 +08:00
Nguyen Anh Quynh
59a53c1d3a Makefile: make current_version & compatibility_version use pkgconfig.mk on OSX 2014-03-29 22:48:55 +08:00
Nguyen Anh Quynh
189e83a486 Makefile: add a check for Brew compilation environment (HOMEBREW_CAPSTONE=1) 2014-03-29 22:48:43 +08:00
Nguyen Anh Quynh
aca71c0714 Makefile: make current_version & compatibility_version use pkgconfig.mk on OSX 2014-03-29 22:47:23 +08:00
Nguyen Anh Quynh
6606ebd719 Makefile: add a check for Brew compilation environment (HOMEBREW_CAPSTONE=1) 2014-03-29 22:36:05 +08:00
Nguyen Anh Quynh
235a274fa0 Makefile: move UNAME_S calculation advance 2014-03-29 21:10:15 +08:00
Nguyen Anh Quynh
1d447534d3 Makefile: no lib64 for OSX 2014-03-29 21:09:56 +08:00
Nguyen Anh Quynh
bc78f3a84f Makefile: move UNAME_S calculation advance 2014-03-29 21:09:35 +08:00
Nguyen Anh Quynh
dbe27845ad Makefile: no lib64 for OSX 2014-03-29 21:07:37 +08:00
Nguyen Anh Quynh
0b81a91547 Merge branch 'next' of https://github.com/aquynh/capstone into next 2014-03-28 10:30:30 +08:00
Nguyen Anh Quynh
81d930ad1f Makefile: X86-reduce & Diet options should compile with size optimization 2014-03-28 10:28:57 +08:00
Nguyen Anh Quynh
71264b2d5c no more diet.h 2014-03-27 21:04:57 +08:00
Nguyen Anh Quynh
c78ed98531 Revert "no more diet.h"
This reverts commit 02d04698d1.
2014-03-27 21:04:10 +08:00
Nguyen Anh Quynh
02d04698d1 no more diet.h 2014-03-27 21:03:47 +08:00
Nguyen Anh Quynh
5721d1ba28 no more diet.h 2014-03-27 21:01:08 +08:00
Nguyen Anh Quynh
731f73fd80 Makefile: make config.mk the dependency of object files 2014-03-27 17:54:44 +08:00
Nguyen Anh Quynh
aeb0c406ec Makefile: make config.mk the dependency of object files 2014-03-27 17:54:27 +08:00
Nguyen Anh Quynh
12e6ebcb94 remove the useless diet.h 2014-03-27 17:15:18 +08:00
Nguyen Anh Quynh
901631eaed remove the useless diet.h 2014-03-27 17:14:57 +08:00
Nguyen Anh Quynh
59b5489d8e x86: rename X86_COMPACT to X86_REDUCE. suggested by Pancake 2014-03-27 10:54:44 +08:00
Nguyen Anh Quynh
9518148e6f add X86_COMPACT option. also add CS_SUPPORT_X86_COMPACT. made Python support this change 2014-03-25 23:20:41 +08:00
Nguyen Anh Quynh
a8fb48c5b3 support dylib versioning for OSX 2014-03-25 11:32:03 +08:00
Nguyen Anh Quynh
e2bdcf064c support dylib versioning for OSX 2014-03-25 11:31:32 +08:00
Nguyen Anh Quynh
1c9b1a6a35 Makefile: move the calculation of API_MAJOR advance. this fixes versioning lib for OSX 2014-03-25 06:49:17 +08:00
pancake
bac8cc70ec Use versioned library names on Darwin too 2014-03-25 06:49:03 +08:00
pancake
6d09b90585 Fix proper versioned lib symlink for linux 2014-03-25 06:48:48 +08:00
pancake
066791e28e Use relative path in versioned symlink lib 2014-03-25 06:48:33 +08:00
Nguyen Anh Quynh
315f02df36 Makefile: move the calculation of API_MAJOR advance. this fixes versioning lib for OSX 2014-03-25 06:43:19 +08:00
Nguyen Anh Quynh
477e6bffb5 Makefile: do not need to calculate UNAME_S two times 2014-03-24 10:25:22 +08:00
Oliver Pinter
3bb71e735a build: added DragonFly BSD
Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
2014-03-24 10:20:21 +08:00
Oliver Pinter
dc5a2b1cc4 build: simplify
Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
2014-03-24 10:20:04 +08:00
Oliver Pinter
f01fb5be6a build: improve build
* on FreeBSD systems lib and libdata directory differs
* rename INSTALL_LIBRARY to INSTALL_LIB, see details in
  http://www.freebsd.org/doc/en/books/porters-handbook/install.html

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
2014-03-24 10:11:30 +08:00
Nguyen Anh Quynh
9ef5f395ae Makefile: remove old libs before installing 2014-03-18 09:29:50 +08:00
Nguyen Anh Quynh
9361e91f0c link version lib to .so file for Linux 2014-03-17 17:31:33 +08:00
Nguyen Anh Quynh
017f184038 fix soname for Linux - get it right now 2014-03-17 11:30:10 +08:00
Nguyen Anh Quynh
1ed8bb6cad typo 2014-03-10 23:14:30 -07:00
Nguyen Anh Quynh
f4f7253cdb make dist should also generate ZIP file 2014-03-11 12:29:16 +08:00
Nguyen Anh Quynh
a5f42cf59e fix soname to use CS_API_MAJOR for library versioning (linux) 2014-03-11 11:34:28 +08:00
Nguyen Anh Quynh
56db6390ec update for 2.1.1 stable release 2014-03-11 11:24:46 +08:00
Nguyen Anh Quynh
abd77900b9 fix soname 2014-03-11 10:33:55 +08:00
Nguyen Anh Quynh
c79ad392fb set proper SONAME to libray versioning 2014-03-11 10:20:23 +08:00
Nguyen Anh Quynh
c77cf3a18f only turn off some string check functions with _FORTIFY_SOURCE=0 for OSX when USE_SYS_DYN_MEM=yes 2014-03-07 22:06:51 +08:00
Nguyen Anh Quynh
3ff259c0ec support -extra level version for pkgconfig. this is useful when we release bugfix version 2014-03-07 17:11:18 +08:00
Nguyen Anh Quynh
c76d8d03ba remove string check & stack protector when compiling diet engine 2014-03-06 23:19:26 +08:00
Nguyen Anh Quynh
296a23148a Makefile: disassembler -> disassembly 2014-03-05 23:50:41 +08:00
Nguyen Anh Quynh
2844cc5131 Makefile: rename variable MACHINE to UNAME_M 2014-03-05 23:49:14 +08:00
Nguyen Anh Quynh
4a328ca765 make *.inc dependency of each arch 2014-02-28 23:09:04 +08:00
Nguyen Anh Quynh
8690959804 diet.h depends on config.mk. patch by Pancake 2014-02-28 11:23:28 +08:00
Nguyen Anh Quynh
5bbbfcec16 Makefile: do not regenerate diet.h if it is existent - patched by Pancake. this also deletes diet.h for clean target 2014-02-28 10:51:04 +08:00
Nguyen Anh Quynh
a4f37e075a add comments for diet.h (auto-gen from Makefile) 2014-02-28 10:23:14 +08:00
pancake
addb192d8f Fix race condition in Makefile 2014-02-28 02:44:07 +01:00
Nguyen Anh Quynh
3626a35314 correct last commit: #undef CAPSTONE_DIET, not #undefine 2014-02-24 15:34:11 +08:00
Nguyen Anh Quynh
a347d6573c have CAPSTONE_DIET explicity undefined when undesired 2014-02-24 15:31:41 +08:00
Nguyen Anh Quynh
be6b5e84cd add dist target for Makefile 2014-02-24 15:30:19 +08:00
Nguyen Anh Quynh
2b63b07302 fix the last patch on Macport path comparison 2014-02-24 15:26:20 +08:00
Nguyen Anh Quynh
8f856c773e install pkgconfig.pc at the right place for OSX: considering Brew & Macport only 2014-02-24 15:17:40 +08:00
Nguyen Anh Quynh
fc83a439e5 add diet compile option (CAPSTONE_DIET option in config.mk). This reduces binary size by around 40% 2014-02-22 23:26:27 +08:00
pancake
26943331c6 Use versioned library names on Darwin too 2014-02-04 08:37:55 +01:00
pancake
e030e1880e Fix proper versioned lib symlink for linux 2014-02-04 08:36:22 +01:00
pancake
3f15a9edcf Use relative path in versioned symlink lib 2014-02-04 08:12:15 +01:00
Nguyen Anh Quynh
99caa9bd08 Makefile: do not need to calculate UNAME_S two times 2014-03-24 10:28:22 +08:00
Nguyen Anh Quynh
3b94ec8345 Merge branch 'next' of https://github.com/opntr/capstone into bsd 2014-03-24 09:52:36 +08:00
Oliver Pinter
25efded52f build: added DragonFly BSD
Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
2014-03-23 19:10:13 +01:00
Oliver Pinter
a83a887352 build: simplify
Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
2014-03-23 19:01:33 +01:00
Oliver Pinter
c5ecae58d8 build: improve build
* on FreeBSD systems lib and libdata directory differs
* rename INSTALL_LIBRARY to INSTALL_LIB, see details in
  http://www.freebsd.org/doc/en/books/porters-handbook/install.html

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
2014-03-23 02:22:56 +01:00
Nguyen Anh Quynh
48a14ca4ce add SystemZ arch 2014-03-23 08:35:45 +08:00
Nguyen Anh Quynh
7df338ca21 Makefile: remove old libs before installing 2014-03-18 09:28:48 +08:00
Nguyen Anh Quynh
c0c0d529cf link version lib to .so file for Linux 2014-03-17 17:32:12 +08:00
Nguyen Anh Quynh
6d5381e0b5 fix soname setup for linux 2014-03-17 10:37:08 +08:00
Nguyen Anh Quynh
ce371a7c71 Makefile: fix SONAME 2014-03-12 12:53:51 +08:00
Nguyen Anh Quynh
e05be68e1a fix soname 2014-03-11 10:33:01 +08:00
Nguyen Anh Quynh
a733fc4126 Merge branch 'master' into next 2014-03-11 10:21:20 +08:00
Nguyen Anh Quynh
05e27138ae core: add Sparc arch 2014-03-10 11:58:57 +08:00
Nguyen Anh Quynh
186d501826 Makefile: generate .tgz file for dist target (rather than tar.gz) 2014-01-22 18:46:20 +08:00
Nguyen Anh Quynh
f328f30fd9 rename mapping.c, mapping.h, module.c to have arch prefix. suggested by Alex Ionescu 2014-01-20 09:47:21 +08:00
Nguyen Anh Quynh
9dfdae6421 x86: add new instructions: FSETPM, SALC, GETSEC & INT1. bug reported by Pancake 2014-01-19 22:40:31 +08:00
Nguyen Anh Quynh
a580d92e05 make dist should distribute all source, and accept tagname (so we can do 'make dist TAG=2.0-rc1' 2014-01-18 12:47:15 +08:00
pancake
35cef7f7c0 add 'dist' make target 2014-01-18 03:42:15 +01:00
Nguyen Anh Quynh
64d4083c8f add solaris support, and add make.sh 2014-01-17 20:55:21 +08:00
Nguyen Anh Quynh
d80cede9a3 last change to support BSD broke cross-comple. fix Makefile so cross-compile work again 2014-01-16 21:07:59 +08:00
Oliver Pinter
22062e05f7 build: update compile.sh to support bsd systems
build: switch from hardcoded gcc to default c compiler

On FreeBSD /usr used by base system, use PREFIX=/usr/local instead.
On BSD systems gnu "make" has the name "gmake".

	modified:   Makefile
	modified:   compile.sh

Signed-off-by: Oliver Pinter <op@crysys.hu>
2014-01-16 12:27:01 +01:00
Nguyen Anh Quynh
9cc56a3322 arm: update core 2014-01-15 16:01:55 +08:00
Nguyen Anh Quynh
75ef2426ea mips: update core 2014-01-14 23:08:20 +08:00
danghvu
701b850af9 Fix: bug that static link does not know constructor 2014-01-09 11:14:40 +07:00
Nguyen Anh Quynh
d63ddac32d Makefile: delete capstone.pc for clean target 2014-01-09 10:35:58 +08:00
Nguyen Anh Quynh
fedca3455f remove the left-over csharp related stuff from Makefile 2014-01-07 14:52:20 +08:00
Nguyen Anh Quynh
59492c2688 enable system's my_malloc/calloc/realloc/free via compile time option 2014-01-05 23:41:31 +08:00
Nguyen Anh Quynh
f1d489b949 ppc: support details information 2014-01-05 00:00:05 +08:00
Nguyen Anh Quynh
35240566c6 copy all include files for install target. bug spotted by Pancake 2014-01-04 09:18:48 +08:00
Nguyen Anh Quynh
c0b63dc42c Makefile: correctly set /usr/lib64 as installed dir for Gentoo 64-bit 2014-01-01 22:07:41 +08:00
Nguyen Anh Quynh
5e107abdd1 some minor fixes for Makefile 2013-12-31 23:38:28 +08:00
Nguyen Anh Quynh
42c6b1acc7 initial support for PPC 2013-12-30 00:15:25 +08:00
Nguyen Anh Quynh
a09bd630cf remove old redundant module related macros in Makefile 2013-12-27 23:49:11 +08:00
Nguyen Anh Quynh
4ebdd216f1 add SONAME for .so library. issue reported by Anton Bolshakov 2013-12-25 23:54:45 +08:00
Nguyen Anh Quynh
9f0e6c24ae on x86_64, install libs to /usr/lib64 if /usr/lib is inexistent. bug reported by Anton Bolshakov 2013-12-25 22:47:28 +08:00
Nguyen Anh Quynh
0655fe4b50 revert a wrong push on PKGCFGF 2013-12-22 13:23:20 +08:00
danghvu
8cd8c4078e Revert to allow multiple arch compilations 2013-12-21 21:28:34 -06:00
Nguyen Anh Quynh
39a42eddfb Change the way of supporting arch modularization
- Always use libapstone.so as library name, no matter which archs are compiled in.

- Add new API cs_support() to check if a particular arch is supported.

- Change cs_version(): return hexical version which encodes both major & minor version.
    the return value can be comparable.

- Bump API version to 1.1
2013-12-22 10:40:58 +08:00
Nguyen Anh Quynh
f185180436 cleaner implementation for arch modularization 2013-12-21 12:16:47 +08:00
Nguyen Anh Quynh
31baeb570f Merge branch 'next' of https://github.com/aquynh/capstone into module 2013-12-21 10:01:02 +08:00
danghvu
02db488199 Either all arch or only one of them 2013-12-20 00:57:12 -06:00
danghvu
6f52bf9997 Move arch config into config.mk 2013-12-19 22:43:01 -06:00