diff --git a/src/SPC/builder/linux/library/libffi.php b/src/SPC/builder/linux/library/libffi.php index 870ece63..9d1c2d79 100644 --- a/src/SPC/builder/linux/library/libffi.php +++ b/src/SPC/builder/linux/library/libffi.php @@ -18,22 +18,22 @@ class libffi extends LinuxLibraryBase public function build(): void { [$lib, , $destdir] = SEPARATED_PATH; - $arch = getenv('SPC_ARCH'); shell()->cd($this->source_dir) - ->exec( + ->setEnv(['CFLAGS' => $this->getLibExtraCFlags(), 'LDFLAGS' => $this->getLibExtraLdFlags(), 'LIBS' => $this->getLibExtraLibs()]) + ->execWithEnv( './configure ' . '--enable-static ' . '--disable-shared ' . "--host={$arch}-unknown-linux " . "--target={$arch}-unknown-linux " . - '--prefix= ' . // use prefix=/ + '--prefix= ' . "--libdir={$lib}" ) - ->exec('make clean') - ->exec("make -j{$this->builder->concurrency}") - ->exec("make install DESTDIR={$destdir}"); + ->execWithEnv('make clean') + ->execWithEnv("make -j{$this->builder->concurrency}") + ->execWithEnv("make install DESTDIR={$destdir}"); if (is_file(BUILD_ROOT_PATH . '/lib64/libffi.a')) { copy(BUILD_ROOT_PATH . '/lib64/libffi.a', BUILD_ROOT_PATH . '/lib/libffi.a');