Skip to content
Snippets Groups Projects
libX.yml 6.16 KiB
Newer Older
#@ load("@ytt:data", "data")
#@ load("@ytt:overlay", "overlay")
#@ load("@ytt:template", "template")

#@ load("/lib/create_component.lib.yml", "single_build_component")
#@ load("/lib/make.lib.yml", "make")

#@ xcb_proto_source_url = "https://xorg.freedesktop.org/archive/individual/proto/xcb-proto-1.14.tar.gz"
#@ libxcb_source_url = "https://xorg.freedesktop.org/archive/individual/lib/libxcb-1.14.tar.gz"
#@ libx11_source_url = "https://www.x.org/releases/individual/lib/libX11-1.6.12.tar.gz"
#@ xtrans_source_url = "https://xorg.freedesktop.org/releases/individual/lib/xtrans-1.4.0.tar.bz2"
#@ xcbutil_source_url = "https://xcb.freedesktop.org/dist/xcb-util-0.4.0.tar.gz"
#@ xcbutil_image_source_url = "https://xcb.freedesktop.org/dist/xcb-util-image-0.4.0.tar.gz"
#@ xcbutil_renderutil_source_url = "https://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.9.tar.gz"
#@ xcbutil_wm_source_url = "https://xcb.freedesktop.org/dist/xcb-util-wm-0.4.1.tar.gz"
#@ xcbutil_keysyms_source_url = "https://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.0.tar.gz"
#@ libxshmfence_source_url = "https://www.x.org/releases/individual/lib/libxshmfence-1.3.tar.bz2"
Alessandro Di Federico's avatar
Alessandro Di Federico committed
#@ libxext_source_url = "https://www.x.org/releases/individual/lib/libXext-1.3.4.tar.gz"

#@yaml/text-templated-strings
---
#@ def xcb_proto_args():
Alessandro Di Federico's avatar
Alessandro Di Federico committed
license: COPYING
configure: |
  mkdir -p "$BUILD_DIR"
  extract.sh --into "$BUILD_DIR" "(@= xcb_proto_source_url @)"

  cd "$BUILD_DIR"
  ./configure \
    --prefix="$ORCHESTRA_ROOT" \
    LDFLAGS="(@= data.values.use_old_glibc_ldflags @) (@= data.values.modern_linker_flags @) -Wl,-rpath,$RPATH_PLACEHOLDER/lib" \
    CFLAGS="(@= data.values.use_old_glibc_cflags @)"
build_system: make
build_dependencies:
  - host-c-toolchain
  - glibc
#@ end

#@yaml/text-templated-strings
---
#@ def libxcb_args():
Alessandro Di Federico's avatar
Alessandro Di Federico committed
license: COPYING
configure: |
  mkdir -p "$BUILD_DIR"
  extract.sh --into "$BUILD_DIR" "(@= libxcb_source_url @)"

  cd "$BUILD_DIR"
  ./configure \
    --disable-selective-werror \
    --disable-devel-docs \
    --disable-selinux \
    --enable-shared \
    --disable-static \
    --prefix="$ORCHESTRA_ROOT" \
    LDFLAGS="(@= data.values.use_old_glibc_ldflags @) (@= data.values.modern_linker_flags @) -Wl,-rpath,$RPATH_PLACEHOLDER/lib" \
    CFLAGS="(@= data.values.use_old_glibc_cflags @)"
build_system: make
build_dependencies:
  - host-c-toolchain
  - glibc
dependencies:
  - ui/xcb-proto
#@ end

#@yaml/text-templated-strings
---
#@ def libx11_args():
Alessandro Di Federico's avatar
Alessandro Di Federico committed
license: COPYING
configure: |
  mkdir -p "$BUILD_DIR"
  extract.sh --into "$BUILD_DIR" "(@= libx11_source_url @)"

  cd "$BUILD_DIR"
  ./configure \
    --disable-selective-werror \
    --without-xmlto \
    --disable-specs \
    --enable-ipv6 \
    --without-fop \
    --enable-shared \
    --disable-static \
    --prefix="$ORCHESTRA_ROOT" \
    CC="cc -fuse-ld=gold" \
    LDFLAGS="(@= data.values.use_old_glibc_ldflags @) (@= data.values.modern_linker_flags @) -Wl,-rpath,$RPATH_PLACEHOLDER/lib" \
    CFLAGS="(@= data.values.use_old_glibc_cflags @)"
build_system: make
build_dependencies:
  - host-c-toolchain
  - glibc
dependencies:
  - ui/xtrans
#@ end

Alessandro Di Federico's avatar
Alessandro Di Federico committed
#@yaml/text-templated-strings
---
#@ def libxext_args():
license: COPYING
configure: |
  mkdir -p "$BUILD_DIR"
  extract.sh --into "$BUILD_DIR" "(@= libxext_source_url @)"

  cd "$BUILD_DIR"
  ./configure \
    --disable-selective-werror \
    --without-xmlto \
    --disable-specs \
    --enable-ipv6 \
    --without-fop \
    --enable-shared \
    --disable-static \
    --prefix="$ORCHESTRA_ROOT" \
    CC="cc -fuse-ld=gold" \
    LDFLAGS="(@= data.values.use_old_glibc_ldflags @) (@= data.values.modern_linker_flags @) -Wl,-rpath,$RPATH_PLACEHOLDER/lib" \
    CFLAGS="(@= data.values.use_old_glibc_cflags @)"
build_system: make
build_dependencies:
  - host-c-toolchain
  - glibc
dependencies:
  - ui/libx11
#@ end

#@yaml/text-templated-strings
---
Alessandro Di Federico's avatar
Alessandro Di Federico committed
#@ def xcbutil_args(source_url, license, additional_dependencies=[]):
license: #@ license
configure: |
  mkdir -p "$BUILD_DIR"
  extract.sh --into "$BUILD_DIR/source" "(@= source_url @)"

  cd "$BUILD_DIR"
  ./source/configure \
    --disable-selective-werror \
    --enable-shared \
    --disable-static \
    --prefix="$ORCHESTRA_ROOT" \
    CC="cc -fuse-ld=gold" \
    LDFLAGS="(@= data.values.use_old_glibc_ldflags @) (@= data.values.modern_linker_flags @) -Wl,-rpath,$RPATH_PLACEHOLDER/lib" \
    CFLAGS="(@= data.values.use_old_glibc_cflags @)"
build_system: make
build_dependencies:
  - host-c-toolchain
  - glibc
dependencies:
  - ui/libxcb
  - #@ template.replace(additional_dependencies)
#@ end

---
Alessandro Di Federico's avatar
Alessandro Di Federico committed
#@ def xcbutil_sublibrary_args(source_url, license):
#@ return xcbutil_args(source_url, license, additional_dependencies=["ui/xcbutil"])
#@ end

#@yaml/text-templated-strings
---
#@ def xtrans_component():
Alessandro Di Federico's avatar
Alessandro Di Federico committed
license: COPYING
builds:
  default:
    configure: |
      mkdir -p "$BUILD_DIR"
      extract.sh --into "$BUILD_DIR" "(@= xtrans_source_url @)"

      cd "$BUILD_DIR"
      ./configure \
        --disable-selective-werror \
        --prefix="$ORCHESTRA_ROOT" \
        CC="cc -fuse-ld=gold" \
        LDFLAGS="(@= data.values.modern_linker_flags @) -Wl,-rpath,$RPATH_PLACEHOLDER/lib"
    install: |
      cd "$BUILD_DIR"
      (@= make @) install
#@ end

#@overlay/match by=overlay.all, expects=1
#@overlay/match-child-defaults missing_ok=True
  ui/xcb-proto: #@ single_build_component(**xcb_proto_args())
  ui/libxcb: #@ single_build_component(**libxcb_args())
  ui/libx11: #@ single_build_component(**libx11_args())
Alessandro Di Federico's avatar
Alessandro Di Federico committed
  ui/libxext: #@ single_build_component(**libxext_args())
  ui/xtrans: #@ xtrans_component()
Alessandro Di Federico's avatar
Alessandro Di Federico committed
  ui/xcbutil: #@ single_build_component(**xcbutil_args(xcbutil_source_url, "source/COPYING"))
  ui/xcbutil-image: #@ single_build_component(**xcbutil_sublibrary_args(xcbutil_image_source_url, "source/COPYING"))
  ui/xcbutil-renderutil: #@ single_build_component(**xcbutil_sublibrary_args(xcbutil_renderutil_source_url, "source/COPYING"))
  ui/xcbutil-wm: #@ single_build_component(**xcbutil_sublibrary_args(xcbutil_wm_source_url, "source/COPYING"))
  ui/xcbutil-keysyms: #@ single_build_component(**xcbutil_sublibrary_args(xcbutil_keysyms_source_url, "source/README"))
  ui/libxshmfence: #@ single_build_component(**xcbutil_sublibrary_args(libxshmfence_source_url, "source/COPYING"))