FRET-LibAFL/just/libafl-qemu-libpng.just
WorksButNotTested 728b1216bb
Librasan (#3023)
* Fixes to main

* Add librasan

* Party like it's 2024

* Fix snapshot module to work with guest asan

* Fix guest_asan module

* Fixes to runner

* Fix linking issues using a REL

* Fix qemu_launcher

* Change modify_mapping to a method

* Fix gasan_test

* Remove debug from Justfile

* Optimize release build of librasan

* Set ulimit for qasan and gasan tests

* Tidy up symbol renaming

* Add missing symbols for PPC

* Change to support rustix 1.0.0

* Canonicalize the CUSTOM_ASAN_PATH

* Review changes

* Restructure backends

* release_max_level_info

* More review changes

* Clippy fixes

* Changes to reduce the burden on the CI

* Fix macos clippy

---------

Co-authored-by: Your Name <you@example.com>
2025-03-10 17:27:55 +01:00

82 lines
1.7 KiB
Plaintext

import "libafl-qemu.just"
# Useful rules to build libpng for multiple architecture.
OPTIMIZATIONS := env("OPTIMIZATIONS", if ARCH == "ppc" { "no" } else { "yes" })
DEPS_DIR := TARGET_DIR / "deps"
[unix]
target_dir:
mkdir -p {{ TARGET_DIR }}
[unix]
deps_dir:
mkdir -p {{ DEPS_DIR }}
[unix]
arch_dir:
mkdir -p {{ ARCH }}
[unix]
zlib_wget: deps_dir
#!/bin/bash
wget \
-O "{{ DEPS_DIR }}/zlib-1.2.13.tar.gz" \
https://zlib.net/fossils/zlib-1.2.13.tar.gz
tar \
zxvf {{ DEPS_DIR }}/zlib-1.2.13.tar.gz \
-C {{ DEPS_DIR }}
[unix]
zlib: zlib_wget
#!/bin/bash
source {{ DOTENV }}
rm -rf {{ TARGET_DIR }}/build-zlib/
mkdir {{ TARGET_DIR }}/build-zlib/
cd {{ TARGET_DIR }}/build-zlib/ && \
CC=$CROSS_CC \
CFLAGS=$CROSS_CFLAGS \
{{ DEPS_DIR }}/zlib-1.2.13/configure \
--prefix=./zlib
make -j install
[unix]
libpng_wget: deps_dir
wget \
-O "{{ DEPS_DIR }}/v1.6.37.tar.gz" \
https://github.com/glennrp/libpng/archive/refs/tags/v1.6.37.tar.gz
tar \
-xvf "{{ DEPS_DIR }}/v1.6.37.tar.gz" \
-C {{ DEPS_DIR }}
[unix]
libpng: arch_dir zlib libpng_wget
#!/bin/bash
source {{ DOTENV }}
rm -rf {{ TARGET_DIR }}/build-png/
mkdir {{TARGET_DIR}}/build-png/
cd {{ TARGET_DIR }}/build-png/ && \
CC=$CROSS_CC \
CFLAGS="$CROSS_CFLAGS -I"{{ TARGET_DIR }}/build-zlib/zlib/lib"" \
LDFLAGS=-L"{{ TARGET_DIR }}/build-zlib/zlib/lib" \
{{ DEPS_DIR }}/libpng-1.6.37/configure \
--enable-shared=no \
--with-pic=yes \
--enable-hardware-optimizations={{ OPTIMIZATIONS }} \
--host={{ ARCH }}
make -j -C {{ TARGET_DIR }}/build-png/