-DPOSITION_INDEPENDENT_CODE=ON

This commit is contained in:
DubbleClick 2025-05-31 14:41:35 +07:00
parent 2dbcbc6963
commit ad3860981a
21 changed files with 21 additions and 6 deletions

View File

@ -19,7 +19,7 @@ class glfw extends MacOSLibraryBase
{ {
// compile // compile
shell()->cd(SOURCE_PATH . '/ext-glfw/vendor/glfw') shell()->cd(SOURCE_PATH . '/ext-glfw/vendor/glfw')
->exec("cmake . {$this->builder->makeCmakeArgs()} -DBUILD_SHARED_LIBS=OFF -DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF") ->exec("cmake . {$this->builder->makeCmakeArgs()} -DBUILD_SHARED_LIBS=OFF -DPOSITION_INDEPENDENT_CODE=ON -DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF")
->exec("make -j{$this->builder->concurrency}") ->exec("make -j{$this->builder->concurrency}")
->exec('make install'); ->exec('make install');
// patch pkgconf // patch pkgconf

View File

@ -33,6 +33,7 @@ class libxml2 extends MacOSLibraryBase
"-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " . "-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'-DLIBXML2_WITH_ICONV=ON ' . '-DLIBXML2_WITH_ICONV=ON ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
"-DLIBXML2_WITH_ZLIB={$enable_zlib} " . "-DLIBXML2_WITH_ZLIB={$enable_zlib} " .
"-DLIBXML2_WITH_ICU={$enable_icu} " . "-DLIBXML2_WITH_ICU={$enable_icu} " .
"-DLIBXML2_WITH_LZMA={$enable_xz} " . "-DLIBXML2_WITH_LZMA={$enable_xz} " .

View File

@ -30,6 +30,7 @@ trait brotli
'-DCMAKE_INSTALL_PREFIX=' . BUILD_ROOT_PATH . ' ' . '-DCMAKE_INSTALL_PREFIX=' . BUILD_ROOT_PATH . ' ' .
'-DCMAKE_INSTALL_LIBDIR=lib ' . '-DCMAKE_INSTALL_LIBDIR=lib ' .
'-DSHARE_INSTALL_PREFIX=' . BUILD_ROOT_PATH . ' ' . '-DSHARE_INSTALL_PREFIX=' . BUILD_ROOT_PATH . ' ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'..' '..'
) )

View File

@ -60,7 +60,7 @@ trait curl
'LIBS' => $this->getLibExtraLibs(), 'LIBS' => $this->getLibExtraLibs(),
]) ])
->exec('sed -i.save s@\${CMAKE_C_IMPLICIT_LINK_LIBRARIES}@@ ../CMakeLists.txt') ->exec('sed -i.save s@\${CMAKE_C_IMPLICIT_LINK_LIBRARIES}@@ ../CMakeLists.txt')
->execWithEnv("cmake {$this->builder->makeCmakeArgs()} -DBUILD_SHARED_LIBS=OFF -DBUILD_CURL_EXE=OFF -DBUILD_LIBCURL_DOCS=OFF {$extra} ..") ->execWithEnv("cmake {$this->builder->makeCmakeArgs()} -DPOSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_CURL_EXE=OFF -DBUILD_LIBCURL_DOCS=OFF {$extra} ..")
->execWithEnv("make -j{$this->builder->concurrency}") ->execWithEnv("make -j{$this->builder->concurrency}")
->execWithEnv('make install'); ->execWithEnv('make install');
// patch pkgconf // patch pkgconf

View File

@ -31,6 +31,7 @@ trait freetype
->execWithEnv( ->execWithEnv(
"cmake {$this->builder->makeCmakeArgs()} -DFT_DISABLE_HARFBUZZ=ON " . "cmake {$this->builder->makeCmakeArgs()} -DFT_DISABLE_HARFBUZZ=ON " .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
"{$extra_libs}.." "{$extra_libs}.."
) )
->execWithEnv('make clean') ->execWithEnv('make clean')

View File

@ -25,7 +25,7 @@ trait gmssl
'LDFLAGS' => $this->getLibExtraLdFlags(), 'LDFLAGS' => $this->getLibExtraLdFlags(),
'LIBS' => $this->getLibExtraLibs(), 'LIBS' => $this->getLibExtraLibs(),
]) ])
->execWithEnv("cmake {$this->builder->makeCmakeArgs()} -DBUILD_SHARED_LIBS=OFF ..") ->execWithEnv("cmake {$this->builder->makeCmakeArgs()} -DBUILD_SHARED_LIBS=OFF -DPOSITION_INDEPENDENT_CODE=ON ..")
->execWithEnv("cmake --build . -j {$this->builder->concurrency}") ->execWithEnv("cmake --build . -j {$this->builder->concurrency}")
->execWithEnv('make install'); ->execWithEnv('make install');
} }

View File

@ -26,6 +26,7 @@ trait libaom
"-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " . "-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " .
'-DCMAKE_BUILD_TYPE=Release ' . '-DCMAKE_BUILD_TYPE=Release ' .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DAOM_TARGET_CPU=generic ' . '-DAOM_TARGET_CPU=generic ' .
'..' '..'
) )

View File

@ -27,7 +27,7 @@ trait libavif
'LDFLAGS' => $this->getLibExtraLdFlags(), 'LDFLAGS' => $this->getLibExtraLdFlags(),
'LIBS' => $this->getLibExtraLibs(), 'LIBS' => $this->getLibExtraLibs(),
]) ])
->execWithEnv("cmake {$this->builder->makeCmakeArgs()} -DBUILD_SHARED_LIBS=OFF -DAVIF_LIBYUV=OFF ..") ->execWithEnv("cmake {$this->builder->makeCmakeArgs()} -DBUILD_SHARED_LIBS=OFF -DPOSITION_INDEPENDENT_CODE=ON -DAVIF_LIBYUV=OFF ..")
->execWithEnv("cmake --build . -j {$this->builder->concurrency}") ->execWithEnv("cmake --build . -j {$this->builder->concurrency}")
->execWithEnv('make install'); ->execWithEnv('make install');
// patch pkgconfig // patch pkgconfig

View File

@ -26,6 +26,7 @@ trait libde265
"-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " . "-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " .
'-DCMAKE_BUILD_TYPE=Release ' . '-DCMAKE_BUILD_TYPE=Release ' .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DENABLE_SDL=OFF ' . // Disable SDL, currently not supported '-DENABLE_SDL=OFF ' . // Disable SDL, currently not supported
'..' '..'
) )

View File

@ -53,6 +53,7 @@ trait libevent
'cmake ' . 'cmake ' .
'-DCMAKE_INSTALL_PREFIX=' . BUILD_ROOT_PATH . ' ' . '-DCMAKE_INSTALL_PREFIX=' . BUILD_ROOT_PATH . ' ' .
"-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " . "-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DCMAKE_BUILD_TYPE=Release ' . '-DCMAKE_BUILD_TYPE=Release ' .
'-DEVENT__LIBRARY_TYPE=STATIC ' . '-DEVENT__LIBRARY_TYPE=STATIC ' .
'-DEVENT__DISABLE_BENCHMARK=ON ' . '-DEVENT__DISABLE_BENCHMARK=ON ' .

View File

@ -27,6 +27,7 @@ trait libheif
"-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " . "-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " .
'-DCMAKE_BUILD_TYPE=Release ' . '-DCMAKE_BUILD_TYPE=Release ' .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DWITH_EXAMPLES=OFF ' . '-DWITH_EXAMPLES=OFF ' .
'-DWITH_GDK_PIXBUF=OFF ' . '-DWITH_GDK_PIXBUF=OFF ' .
'-DBUILD_TESTING=OFF ' . '-DBUILD_TESTING=OFF ' .

View File

@ -27,6 +27,7 @@ trait librabbitmq
'-DCMAKE_BUILD_TYPE=Release ' . '-DCMAKE_BUILD_TYPE=Release ' .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'-DBUILD_STATIC_LIBS=ON ' . '-DBUILD_STATIC_LIBS=ON ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'..' '..'
) )
->exec("cmake --build . -j {$this->builder->concurrency}") ->exec("cmake --build . -j {$this->builder->concurrency}")

View File

@ -27,6 +27,7 @@ trait libssh2
'-DCMAKE_INSTALL_PREFIX=' . BUILD_ROOT_PATH . ' ' . '-DCMAKE_INSTALL_PREFIX=' . BUILD_ROOT_PATH . ' ' .
'-DCMAKE_INSTALL_LIBDIR=lib ' . '-DCMAKE_INSTALL_LIBDIR=lib ' .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DBUILD_EXAMPLES=OFF ' . '-DBUILD_EXAMPLES=OFF ' .
'-DBUILD_TESTING=OFF ' . '-DBUILD_TESTING=OFF ' .
"-DENABLE_ZLIB_COMPRESSION={$enable_zlib} " . "-DENABLE_ZLIB_COMPRESSION={$enable_zlib} " .

View File

@ -20,7 +20,7 @@ trait libuuid
shell()->cd($this->source_dir . '/build') shell()->cd($this->source_dir . '/build')
->exec( ->exec(
'cmake ' . 'cmake ' .
"{$this->builder->makeCmakeArgs()} " . "{$this->builder->makeCmakeArgs()} -DPOSITION_INDEPENDENT_CODE=ON " .
'..' '..'
) )
->exec("cmake --build . -j {$this->builder->concurrency}"); ->exec("cmake --build . -j {$this->builder->concurrency}");

View File

@ -20,7 +20,7 @@ trait libuv
FileSystem::resetDir($this->source_dir . '/build'); FileSystem::resetDir($this->source_dir . '/build');
// Start build // Start build
shell()->cd($this->source_dir . '/build') shell()->cd($this->source_dir . '/build')
->exec("cmake {$this->builder->makeCmakeArgs()} -DLIBUV_BUILD_SHARED=OFF ..") ->exec("cmake {$this->builder->makeCmakeArgs()} -DPOSITION_INDEPENDENT_CODE=ON -DLIBUV_BUILD_SHARED=OFF ..")
->exec("cmake --build . -j {$this->builder->concurrency}") ->exec("cmake --build . -j {$this->builder->concurrency}")
->exec('make install'); ->exec('make install');
// patch pkgconfig // patch pkgconfig

View File

@ -26,6 +26,7 @@ trait libwebp
'cmake ' . 'cmake ' .
$this->builder->makeCmakeArgs() . ' ' . $this->builder->makeCmakeArgs() . ' ' .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DWEBP_BUILD_EXTRAS=ON ' . '-DWEBP_BUILD_EXTRAS=ON ' .
'..' '..'
) )

View File

@ -41,6 +41,7 @@ trait libyaml
'-DCMAKE_BUILD_TYPE=Release ' . '-DCMAKE_BUILD_TYPE=Release ' .
'-DBUILD_TESTING=OFF ' . '-DBUILD_TESTING=OFF ' .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DCMAKE_INSTALL_PREFIX=/ ' . '-DCMAKE_INSTALL_PREFIX=/ ' .
"-DCMAKE_INSTALL_LIBDIR={$lib} " . "-DCMAKE_INSTALL_LIBDIR={$lib} " .
"-DCMAKE_INSTALL_INCLUDEDIR={$include} " . "-DCMAKE_INSTALL_INCLUDEDIR={$include} " .

View File

@ -36,6 +36,7 @@ trait libzip
'-DENABLE_GNUTLS=OFF ' . '-DENABLE_GNUTLS=OFF ' .
'-DENABLE_MBEDTLS=OFF ' . '-DENABLE_MBEDTLS=OFF ' .
'-DBUILD_SHARED_LIBS=OFF ' . '-DBUILD_SHARED_LIBS=OFF ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DBUILD_DOC=OFF ' . '-DBUILD_DOC=OFF ' .
'-DBUILD_EXAMPLES=OFF ' . '-DBUILD_EXAMPLES=OFF ' .
'-DBUILD_REGRESS=OFF ' . '-DBUILD_REGRESS=OFF ' .

View File

@ -28,6 +28,7 @@ trait mimalloc
'cmake ' . 'cmake ' .
'-DCMAKE_INSTALL_PREFIX=' . BUILD_ROOT_PATH . ' ' . '-DCMAKE_INSTALL_PREFIX=' . BUILD_ROOT_PATH . ' ' .
"-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " . "-DCMAKE_TOOLCHAIN_FILE={$this->builder->cmake_toolchain_file} " .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DCMAKE_BUILD_TYPE=Release ' . '-DCMAKE_BUILD_TYPE=Release ' .
$args . $args .
'..' '..'

View File

@ -24,6 +24,7 @@ trait snappy
"{$this->builder->makeCmakeArgs()} " . "{$this->builder->makeCmakeArgs()} " .
'-DSNAPPY_BUILD_TESTS=OFF ' . '-DSNAPPY_BUILD_TESTS=OFF ' .
'-DSNAPPY_BUILD_BENCHMARKS=OFF ' . '-DSNAPPY_BUILD_BENCHMARKS=OFF ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'../..' '../..'
) )
->exec("cmake --build . -j {$this->builder->concurrency}") ->exec("cmake --build . -j {$this->builder->concurrency}")

View File

@ -22,6 +22,7 @@ trait tidy
'cmake ' . 'cmake ' .
"{$this->builder->makeCmakeArgs()} " . "{$this->builder->makeCmakeArgs()} " .
'-DBUILD_SHARED_LIB=OFF ' . '-DBUILD_SHARED_LIB=OFF ' .
'-DPOSITION_INDEPENDENT_CODE=ON ' .
'-DSUPPORT_CONSOLE_APP=OFF ' . '-DSUPPORT_CONSOLE_APP=OFF ' .
'..' '..'
) )