Commit Graph

237 Commits

Author SHA1 Message Date
pancake
cd153c0260 After release version bump 2022-12-23 01:04:10 +01:00
pancake
7c55e4b61a Release 5.8.0 - codename: icebucket 2022-12-23 00:40:31 +01:00
pancake
560d5efced
Update to the latest sdb (2.0.0)
* Experiments to integrate the custom heap into r2 will be based on the sdb implementation
2022-12-07 19:08:21 +01:00
pancake
ccb7351b5e
Merge RParse into RAsm ##api 2022-12-03 02:26:41 +01:00
pancake
a79add6dff
Update sdb to remove double include paths ##build
* Updated pkg-config paths
2022-11-19 01:05:18 +01:00
pancake
46e25f8844 Remove anal.malbolge and fix CI r_esil issues ##arch 2022-11-13 22:38:58 +01:00
pancake
b47140ea8d
Add support for statically compiled themes ##cons 2022-11-02 10:57:15 +01:00
pancake
79c401bb6d Add the acr --enable-threadsafety flag and the same for meson ##build
* Initial support for protecting critical sections
2022-09-23 22:07:49 +02:00
condret
4040c6529b Update r_arch related meson.build file 2022-09-23 04:38:35 +02:00
pancake
aab694d655 First arch plugin (arch.null), implement basic lib api ##arch
* Still far from usable, no dynamic plugin loading
* No way to retrieve a decoder yet
2022-09-21 08:22:55 +02:00
pancake
f6383a05f3 Introduce the new r_arch library, just the skeleton ##arch 2022-09-18 03:41:39 +02:00
pancake
1944e59783 Remove some more r_hash leftovers 2022-09-16 10:46:24 +02:00
pancake
edb73b0ff8 Bump r2 version in the meson to 5.7.9 2022-09-15 18:27:10 +02:00
pancake
a6e0d6c480 Merge rhash into rcrypto and improve apis ##api
* Update meson and make build systems
* Remove leftovers and unused dependencies
2022-09-15 11:25:40 +02:00
pancake
18220d39df Change build order as long as now bin depends on fs ##build
* Add bin.zip for meson builds
* bin.fs now uses the fs apis
2022-09-15 00:23:21 +02:00
pancake
8e965bef30 Release 5.7.8 - codename "boredom" 2022-09-13 18:08:16 +02:00
Richard Patel
e319a7a71e add libFuzzer integration, r_run_parseline test ##fuzz 2022-08-21 22:35:28 +02:00
pancake
a1c68b92dd After release version bump 2022-08-01 19:39:03 +02:00
pancake
2913f019f9 Release 5.7.6 - codename mapi 2022-08-01 16:56:33 +02:00
pancake
34323f2c30
GIT_TAP=$R2_VERSION if no .git is found ##build 2022-08-01 15:57:50 +02:00
Sergi Àlvarez i Capilla
3805619337 After release version bump 2022-07-07 02:08:15 +02:00
Sergi Àlvarez i Capilla
5bc3bf4e6c Release 5.7.4 2022-07-07 00:40:00 +02:00
pancake
986271aa15 After release version bump 2022-06-23 13:30:58 +02:00
Sergi Àlvarez i Capilla
1ec4d1bae9 Release 5.7.2 - codename: "Snow Floppa" 2022-06-22 02:11:35 +02:00
pancake
8818039731 After release version bump (5.7.1) 2022-06-03 01:55:33 +02:00
pancake
09569c1d5c Release 5.7.0 - Shining Darkness 2022-05-31 03:15:26 +02:00
pancake
8b81e8fe14 After release version bump. Expect ABI breaks until 5.7.0 is out 2022-04-19 01:46:10 +02:00
pancake
d94100d386 Release 5.6.8 - Codename: remora 2022-04-19 01:03:53 +02:00
Sergi Àlvarez i Capilla
7412ed4869 After release version bump 2022-03-23 11:52:05 +01:00
Sergi Àlvarez i Capilla
866a80ffbb Release 5.6.6 2022-03-22 17:42:38 +01:00
Sergi Àlvarez i Capilla
447128d1f2 After-release version bump 2022-03-03 12:26:58 +01:00
pancake
b636941cef Release 5.6.4 2022-02-28 12:30:02 +01:00
pancake
a7386c4b83 After release version bump 2022-02-18 01:51:10 +01:00
Sergi Àlvarez i Capilla
2984f4d460 Release 5.6.2 2022-02-15 14:46:50 +01:00
Sergi Àlvarez i Capilla
e13fb7d183 Support building with system-provided lz4 library ##build 2022-02-15 11:43:50 +01:00
Bernhard M. Wiedemann
a2b0bfa4eb Rework SOURCE_DATE_EPOCH to be portable 2022-02-14 01:49:41 +01:00
Bernhard M. Wiedemann
dbc7606eda Allow to override build date with SOURCE_DATE_EPOCH
in order to make builds reproducible.
See https://reproducible-builds.org/ for why this is good
and https://reproducible-builds.org/specs/source-date-epoch/
for the definition of this variable.
This date call only works with GNU date.

Also use UTC to be independent of timezone.

This is the equivalent of 6b260b87c3 for meson.

This PR was done while working on reproducible builds for openSUSE.
2022-02-13 18:58:11 +01:00
pancake
fa834609cd Update minor version 2022-02-06 16:01:35 +01:00
pancake
e9e600a9a4 Release 5.6.0 2022-02-02 13:29:26 +01:00
pancake
50bf4d5918
Simplify meson logic and use ole's PR to fix Windows ##build
* Kudos to @oleavr for reproducing, spotting and fixing the bug!
* Context https://github.com/mesonbuild/meson/pull/9918
2022-01-31 23:54:00 +01:00
pancake
d58e62e74c Fixes for w2019 (#19644) 2022-01-31 01:47:04 +01:00
Sergi Àlvarez i Capilla
e95d1d9999 After release version bump 2021-12-16 12:45:03 +01:00
Sergi Àlvarez i Capilla
1703da75e2 Release 5.5.4 2021-12-15 10:16:39 +01:00
pancake
79effabdf5 Release 5.5.2 2021-12-06 12:07:22 +01:00
pancake
4b39d625ee msvc's Z7 compiles with symbols instead of the uncomfortable PDBs 2021-11-26 16:30:13 +01:00
Sergi Àlvarez i Capilla
eea44aa303 After release version bump 2021-11-16 14:45:53 +01:00
pancake
ab6353c5c9 Release 5.5.0 - 希 Nozomi 2021-11-15 03:10:56 +01:00
pancake
7362d74ae4
Use more join_paths along the meson 2021-11-14 22:25:05 +01:00
pancake
8b227868b8
Fix the windows CI workflows
* Use ninja -j2 in the CI, seems like there are less resources for windows
* Add windows configure+make+run CI workflow
* Use more join_paths()
2021-11-14 21:09:42 +01:00
pancake
657524aabc More meson simplifications 2021-11-14 02:35:57 +01:00
pancake
e5f8f9fa3d Add 'make clean' for windows 2021-11-14 02:04:05 +01:00
pancake
4c9fac84a0
Generate bin/d the same way as other sdb paths with meson ##build
* Add -Dwasan=true for meson to compile with msvc's address sanitizer
* Clear the prefix dir before installing, so we ensure it's more realistic
2021-11-14 00:57:35 +01:00
pancake
1c35c6142c Post-release version bump 2021-09-20 13:24:50 +02:00
pancake
84e6cc6a21 Release 5.4.2 2021-09-20 06:46:21 +02:00
pancake
3754ed89a0 Bump version to 5.4.1. From now on, odd versions are same as -git
* The reason for this is because debian, meson and cmake misbehave
  or don't handle dash suffixes, so let's just keep things simpler
2021-08-31 13:19:49 +02:00
pancake
5054be3555
Rename rvc2 to ravc2 to follow the ra*2 pattern ##tools (#18938) 2021-07-26 00:05:35 +02:00
pancake
3c416c54cc
Fix meson build and proper use of cgen ##build (#18920) 2021-07-21 17:22:39 +02:00
pancake
2e417ee938
Initial support for capstone-less compilations ##build 2021-06-21 17:48:00 +02:00
pancake
87c6bd0f2e go back to dev mode for 5.4.0-git 2021-06-17 01:51:44 +02:00
Sergi Àlvarez i Capilla
afe6d96aaf Release 5.3.1 2021-06-11 00:17:28 +02:00
pancake
b545c72017
Better handling of HAVE_SYSTEM, PTY, FORK, DYLINK and THREADS ##build 2021-06-10 13:52:29 +02:00
pancake
46ec83c5a0
Add use_cgen meson option ##build (#18766) 2021-05-27 23:56:28 +02:00
pancake
14e5afe6cf
Add initial rvc2 command ##shell (#18716) 2021-05-20 03:34:23 +02:00
pancake
c3953d64d6
Use gperf on anal/d and improve build and checks ##anal
* Add --without-gperf configure flag
* Update sdb to support gperf.foreach and faster ls.sort()
* Support cc and types sdb gperfs
* add r_str_newvf
* Honor HAVE_GPERF in more places
* Add CI job to build and test cmds with gperf
2021-05-20 00:22:20 +02:00
Michal Ambroz
bc3fe4a302
Improve the xxhash system library detection ##build
The pkgconfig module is named libxxhash on Debian/Fedora/RedHat/SuSE/Arch so I added libxxhash on first place.
Keeping the xxhash checked second.
2021-05-12 23:07:34 +02:00
Michal Ambroz
385925a37e
Make meson compatible with older versions (RHEL8 meson 0.49) (#18684) ##build
This patch makes it possible to build with older version of meson.
It is needed to build radare2 on RedHat Enterprise Linux 8 where the meson version 0.49 is older than on RHEL7+EPEL7 or Fedora.

Issues fixed:
- set minimum meson version down to 0.49 (version available in RHEL8)
- meson 0.49 has bug which prevents processing of '\' split-lines => build r2_version_number on single line
- on meson 0.49 the ternary operator is not possible to use with some constructs (subdir in add_install_scripts) => replace one ternary operator with if-else construct
2021-05-11 23:56:23 +02:00
pancake
5f5d05d9dc After release version bump 2021-04-24 17:59:49 +02:00
pancake
8399b8859b Release 5.2.1 2021-04-21 20:25:58 +02:00
pancake
f98bdc775f
Add dbg.wrap for changing want_ptrace at runtime ##debug (#18607) 2021-04-21 12:07:01 +02:00
pancake
4a04583bb3 Fix static builds with meson (duplicated tcc symbols) 2021-04-10 00:47:49 +02:00
pancake
26d12a4404
Fix meson build issues related to grub (#18554) ##build 2021-04-09 19:54:55 +02:00
pancake
70839e7ef3
Add plugins=nogrub option for meson ##build 2021-03-11 12:39:47 +01:00
pancake
ab48f55cc4
Add missing use_fork and use_dylink to meson ##build (#18398) 2021-03-01 20:20:24 +01:00
pancake
e8bbbf8322 Fix meson patch version issue with dash 2021-02-24 22:40:02 +01:00
pancake
d75ed755a3 Bump version for 5.2.0-git 2021-02-24 17:14:42 +01:00
pancake
92e39c18f7
Remove meson version hacks (#18373)
Co-authored-by: pancake <pancake@nopcode.org>
2021-02-21 01:51:08 +01:00
pancake
70f51531d0
Add use_ssl meson option to be in sync with acr behaviour ##build (#18358) 2021-02-13 04:10:24 +01:00
pancake
bd02bfd5c5
Update to sdb-1.7.0 (#18337) 2021-02-08 22:21:56 +01:00
Keegan Saunders
0939e57001
Support statically linking system OpenSSL ##build (#18296)
For projects that use radare2 as a subproject, allow OpenSSL to be
compiled statically into radare2 so the linker does not attempt to link
a dynamic library during static linking.

Co-authored-by: Keegan Saunders <meme@users.noreply.github.com>
2021-01-26 17:51:50 +01:00
pancake
cd6a439151
Add support for RAnal.ESIL plugins ##esil (#18206) 2021-01-24 16:39:45 +01:00
pancake
1184610971
Fix the CI badge and fully rewrite all the workflows to make sense ##build
* Windows, Linux, Static, macOS, Android, iOS builds published for every commit
* Kept coverage, coverity, fuzzing tests, lgtm and -Werror jobs
* Kill the continuos, the over-engineered matrix and other empty or unnecessary tasks (250 vs 900LOC)
* Jobs TODO: fatmac, termux and rpm (centos) packages
2021-01-12 13:41:21 +01:00
Filipe Laíns
163312bff3 fortunes: remove nsfw and creepy fortunes
These fortunes make a lot of people unconfortable and can be trigering
for some. Even if they are not active by default, they should have no
place here if you are trying to be a welcoming project.

There are a lot of other ways to be quirky and fun, I see no logical
reason to have these fortunes knowing they will negatively impact
people.

Signed-off-by: Filipe Laíns <lains@riseup.net>
2020-11-29 01:14:28 +01:00
Paul I
739feec0e0 Update meson.build 2020-11-12 15:14:42 +08:00
Damien Zammit
56fb85bff4
Revert "r2sdb: Install executable" (#17724)
This partially reverts commit 2a0d8fbe59
Fix meson warnings.
2020-09-29 11:22:43 +02:00
Damien Zammit
2a0d8fbe59
Install r2sdb, detect R2_HOME_SDB_FCNSIGN for r2extras custom CC ##build
* cc: Add autodetection for R2_HOME_SDB_FCNSIGN new location of custom calling conventions
* Fix r_file_exists not expanding tilde path
* r2sdb: Install executable
2020-09-24 12:26:53 +02:00
Florian Märkl
ed00e85e65
Use sdb == for generating dbs in meson (#17676) 2020-09-21 15:11:46 +02:00
Khairul Azhar Kasmiran
d9057505dc
Set RPATH/RUNPATH on r2 libs too if local (#17639) 2020-09-15 09:16:14 +02:00
Ole André Vadla Ravnås
8681963bce
Add Meson option to specify whether CLI tools should be built (#17625) ##build 2020-09-10 14:55:06 +02:00
Zi Fan
0ba897f5c9
Add network support for WinDbg/KD (KDNET) ##debug (#17340)
* Add network support for WinDbg/KD (KDNET) ##debug
* Add iob_net io_backend plugin for shlr/winkd
* Add Windows 10 (May 2019 Update) build 18362 profile
* Add r_hash_do_hmac_sha256 function to r_hash
* Change r_socket_connect to bind source port for UDP connection
2020-08-26 10:24:20 +08:00
Khairul Azhar Kasmiran
fb1190d248
meson install: Create shortcut/symlink to radare2 (#17463) 2020-08-18 18:22:17 +08:00
Riccardo Schirone
48c30dfd99
Support compilation with meson on old systems like CentOS6/DebianWheezy ##build (#17345)
* Compile tree-sitter and newshell parser with gnu99 if possible ##meson
* Make sure to use `-lrt` when needed to use clock_gettime ##meson
2020-07-27 12:25:06 +08:00
Riccardo Schirone
2d160f2509
Avoid sdb double headers (#17249) ##build
* Avoid duplication of SDB headers in libr/include

SDB is an external project and as such it should live in shlr. However,
for simplicity in dealing with the include flags, the SDB headers were
copied in libr/include as well. This patch just keeps the SDB files
confined in shlr/sdb and make sure various r_* libs use the headers from
there.

* Fix pkgconfig file generation
2020-07-21 10:28:43 +02:00
Riccardo Schirone
594b940b7c
Fixes some of the issues in Travis (#17267)
* Do not check with r_return_ if the convention is present

Let's just assume the NULL default in such a case, so that architectures
for which we don't have a defined calling convention can still be
processed somehow by the analysis code. It won't be precise, but it's
better than nothing.

Also add a warning message so users are aware when the calling
convention is not defined.

* Fix oob-read when # is at the end of the cmd string

* Do not set TMPDIR when the new value is the empty string

When TMPDIR is set to empty value, clang+ld behaves in weird ways and
you cannot compile files from within the r2 shell (e.g. when using #!c
or #!cpipe)

* Use meson and add -lasan to pkgconfig files when sanitizer are used
2020-07-16 20:47:30 +08:00
Riccardo Schirone
d6c9bd4542
Add support for binr/blob and fix android build ##meson ##build (#17150)
* Make sure meson can build with `system` = `android`.

* Add support for binr/blob in meson build

* Add also r_util as dependency

* Create sdb_version.py to get the SDBVER value from config.mk

* Set unknown sdb version if something fails
2020-07-05 10:53:37 +08:00
pancake
27a625065a
Fix #16781 - Add --without-dylink configure flag to disable libdl features ##build (#17173)
* Add `--without-dylink` configure flag to disable "libdl" features
* Add "WANT_DYLINK" option in Meson buildsystem

Co-authored-by: pancake <pancake@nopcode.org>
2020-07-02 11:58:12 +08:00
GustavoLCR
77cc18ba04
Fix R2_INCDIR on Windows (#16940) 2020-06-12 17:12:48 +08:00
GustavoLCR
04edfa82c1
Fix command injection on PDB download (#16966)
* Fix r_sys_mkdirp with absolute path on Windows
* Fix build with --with-openssl
* Use RBuffer in r_socket_http_answer()
* r_socket_http_answer: Fix read for big responses
* Implement r_str_escape_sh()
* Cleanup r_socket_connect() on Windows
* Fix socket being created without a protocol
* Fix socket connect with SSL ##socket
* Use select() in r_socket_ready()
* Fix read failing if received only protocol answer
* Fix double-free
* r_socket_http_get: Fail if req. SSL with no support
* Follow redirects in r_socket_http_answer()
* Fix r_socket_http_get result length with R2_CURL=1
* Also follow redirects
* Avoid using curl for downloading PDBs
* Use r_socket_http_get() on UNIXs
* Use WinINet API on Windows for r_socket_http_get()
* Fix command injection
* Fix r_sys_cmd_str_full output for binary data
* Validate GUID on PDB download
* Pass depth to socket_http_get_recursive()
* Remove 'r_' and '__' from static function names
* Fix is_valid_guid
* Fix for comments
2020-06-10 18:00:00 +02:00
Khairul Azhar Kasmiran
3662290b45
meson: Build rasign2 (#16831) 2020-05-17 00:36:43 +08:00
Eli Schwartz
03bc3c59b5
Add an option to build with system tree-sitter (#16679)
As of https://github.com/tree-sitter/tree-sitter/pull/602 it is possible
to install tree-sitter as a system shared library, and distributions that want to
be able to disable vendored code.
2020-04-23 13:54:52 +08:00
Riccardo Schirone
06ab29b93c
Compile new shell parser by default (#16660)
* Move radare2-shell-parser/tree-sitter into shlr
* compile new shell parser by default, available with cfg.newshell variable
* Add README for radare2-shell-parser
* Improve CI
* Add gitattributes file
2020-04-21 13:44:30 +02:00