mirror of
https://github.com/frida/releng.git
synced 2026-11-07 09:36:02 -10:00
c25f4fe937658b9355f28f7204818815464117de
Some repos carry more submodules than releng, and had to tweak the check locally. Look at what git reports instead.
releng
Build system infrastructure to ensure fast and consistent builds across projects.
Intended to be used as a git submodule at /releng in projects.
Setting up a new project
- Set up the repo:
$ git init my-project
$ cd my-project
$ git submodule add https://github.com/frida/releng.git
$ cp releng/meson-scripts/* .
$ echo -e '/build/\n/deps/' > .gitignore
- Create
meson.buildcontaining:
project('my-project', 'vala', version: '1.0.0')
executable('hello', 'hello.vala', dependencies: dependency('glib-2.0'))
- Create
hello.valacontaining:
int main (string[] args) {
print ("Hello World from Vala!\n");
return 0;
}
- Build and run:
$ make
$ ./build/hello
Hello World from Vala!
$
Cross-compiling
iOS
$ ./configure --host=ios-arm64
$ make
Android
$ ./configure --host=android-arm64
$ make
Raspberry Pi
$ sudo apt-get install g++-arm-linux-gnueabihf
$ ./configure --host=arm-linux-gnueabihf
$ make
Apple OSes from Linux
Install Limbo with its binfmt handlers and a sysroot containing Xcode, then point releng at the sysroot:
$ export LIMBO_SYSROOT=$HOME/macos
$ ./configure --host=macos-arm64e
$ make
Languages
Python
87%
C
8.9%
JavaScript
1.7%
Shell
1.6%
Batchfile
0.5%
Other
0.3%