diff options
| author | prospanclaudebot <[email protected]> | 2026-07-17 23:04:47 +0000 |
|---|---|---|
| committer | prospanclaudebot <[email protected]> | 2026-07-17 23:04:47 +0000 |
| commit | 1eb78df95df8f37ba241aa91e7df3e11d0664a57 (patch) | |
| tree | 62461313259169339b355c523bee1c0aa2ea2a13 | |
| parent | 3e74c9b9667df6c4e128c0a995c4d5f99d2152e5 (diff) | |
| download | wasm-gcc-overlay-1eb78df95df8f37ba241aa91e7df3e11d0664a57.tar.gz wasm-gcc-overlay-1eb78df95df8f37ba241aa91e7df3e11d0664a57.zip | |
🌭 gcc-9999: симлинк реального драйвера вместо скелет-обёртки (xgcc not found)
Обёртка ссылалась на build-tree xgcc, в install его нет. Убрал --program-prefix,
автодетект установленного <target>-gcc в PREFIX/bin -> /usr/bin. WAT-чейн пока вручную.
Co-Authored-By: Claude Opus 4.8 <[email protected]>
| -rw-r--r-- | cross-wasm32-wasi/gcc/gcc-9999.ebuild | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/cross-wasm32-wasi/gcc/gcc-9999.ebuild b/cross-wasm32-wasi/gcc/gcc-9999.ebuild index 7fe89eb..2c8e536 100644 --- a/cross-wasm32-wasi/gcc/gcc-9999.ebuild +++ b/cross-wasm32-wasi/gcc/gcc-9999.ebuild @@ -34,7 +34,6 @@ src_configure() { econf \ --target="${CTARGET}" \ --prefix="${PREFIX}" \ - --program-prefix="${CTARGET}-" \ --enable-languages=c \ --without-headers --with-newlib \ --disable-shared --disable-threads --disable-libssp \ @@ -48,7 +47,11 @@ src_compile() { src_install() { emake DESTDIR="${D}" install-gcc - # обёртка пайплайна tc/: xgcc(WAT) -> wat2wasm(объект) -> wasm-ld(линк) - newbin "${FILESDIR}"/wasm32-wasi-gcc.sh "${CTARGET}-cc" - dosym "${CTARGET}-cc" /usr/bin/"${CTARGET}-gcc" + # кросс-драйвер ставится в ${PREFIX}/bin (имя = <target>-gcc); автодетект и вывод в PATH + local drv + drv=$(cd "${ED}${PREFIX}/bin" && ls | grep -E '(^|-)gcc$' | grep -v -- '-nm\|-ar\|-ranlib' | head -n1) + [[ -n ${drv} ]] || die "не нашёл gcc-драйвер в ${PREFIX}/bin" + dosym "${PREFIX}/bin/${drv}" "/usr/bin/${CTARGET}-gcc" + elog "wasm-gcc драйвер: ${PREFIX}/bin/${drv} -> /usr/bin/${CTARGET}-gcc" + elog "ПАЙПЛАЙН .c->.wasm (WAT->wat2wasm->wasm-ld) — обёртка ещё не автоматизирована, пока вручную как в tc/" } |
