🔒 Repository is read-only – file editing is disabled.

recipes/core/gcc/PAGBUILD.yaml main

79 linii Raw ← Powrót
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
pkgname: gcc
pkgver: '16.2.0'
pkgrel: '1'
pkgdesc: GNU compiler collection, which includes the C, C++, fortran and objc compilers.
url: 'https://gcc.gnu.org'
arch: x86_64
license:
- GPL-3.0-or-later
- LGPL-3.0-or-later

depends:
- gmp
- mpfr
- mpc
- zlib

makedepends:
- gmp
- mpfr
- mpc
- tar
- flex
- zlib

source:
- "https://ftp.gnu.org/gnu/gcc/gcc-${pkgver}/gcc-${pkgver}.tar.xz"

sha256sums:
- e6738e29597f733270731aa90600f37ffdc045079dfc27ec7e8192cc81085c3e

build: |
  cd gcc-${pkgver}

  unset CFLAGS CXXFLAGS CPPFLAGS LDFLAGS

  case $(uname -m) in
    x86_64)
      sed -i.orig '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64
    ;;
  esac

  mkdir -v build
  cd       build

  ../configure --prefix=/usr \
      --libdir=/usr/lib \
      --enable-languages=c,c++,fortran,objc,obj-c++ \
      --disable-multilib  \
      --disable-bootstrap \
      --with-system-zlib  \
      --disable-fixincludes \
      --enable-default-pie \
      --enable-default-ssp

  make
  make DESTDIR="${PKGDIR}" install

  # Czyszczenie nagłówków
  rm -rf "${PKGDIR}"/usr/lib/gcc/$(gcc -dumpmachine)/${pkgver}/include-fixed/bits/

  # Symlinki systemowe
  mkdir -p "${PKGDIR}/lib"
  ln -sv ../usr/bin/cpp "${PKGDIR}/lib/cpp"
  ln -sv gcc "${PKGDIR}/usr/bin/cc"

  # Konfiguracja BFD plugin oraz GDB
  install -dm755 "${PKGDIR}/usr/share/gdb/auto-load/usr/lib"
  install -dm755 "${PKGDIR}/usr/lib/bfd-plugins"

  # Poprawione wywołanie sed (bez zbędnego -f)
  for la in "${PKGDIR}"/usr/lib/*.la; do
      [ -f "$la" ] && sed -i "s|-L.[^ ]* ||g" "$la"
  done

  mv -v "${PKGDIR}"/usr/lib/*gdb.py "${PKGDIR}/usr/share/gdb/auto-load/usr/lib/" 2>/dev/null || true
  ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/${pkgver}/liblto_plugin.so "${PKGDIR}/usr/lib/bfd-plugins/"

package: |
  true