From 05d004dfe0c9a9d898fac8a4a0292ca2a74ca391 Mon Sep 17 00:00:00 2001 From: davidovski Date: Mon, 19 Dec 2022 23:07:05 +0000 Subject: Making things work --- repo/atk/atk.xibuild | 2 +- repo/file/file.xibuild | 23 --- repo/gcc/gcc.xibuild | 3 + repo/ghostscript/ghostscript.xibuild | 3 +- repo/guile/guile.xibuild | 3 +- repo/jack/jack.xibuild | 1 - repo/libbpf/10-consolidate-lib-dirs.patch | 19 ++ repo/libbpf/libbpf.xibuild | 33 ++++ repo/libinput/libinput.xibuild | 3 +- repo/libwebp/libwebp.xibuild | 1 - repo/libxfont2/libxfont2.xibuild | 3 +- repo/linux-headers/linux-headers.xibuild | 5 +- repo/linux-libre/linux-libre.xibuild | 1 - repo/linux/linux.xibuild | 1 - repo/lv2/lv2.xibuild | 14 +- repo/motif/motif.xibuild | 3 +- ...bbpf-Update-libbpf-to-the-latest-git-HEAD.patch | 120 +++++++++++++ repo/pahole/pahole.xibuild | 40 +++-- repo/python-Jinja2/python-Jinja2.xibuild | 4 +- repo/python-jinja/python-jinja.xibuild | 2 +- repo/python-markupsafe/python-markupsafe.xibuild | 16 -- repo/python/python.xibuild | 2 +- ...-Prefer-libgcc_eh-over-libunwind-for-musl.patch | 24 --- .../0007-do-not-install-libunwind-source.patch | 19 -- repo/rust/alpine-move-py-scripts-to-share.patch | 23 --- repo/rust/alpine-target.patch | 191 --------------------- repo/rust/cargo.xibuild | 8 - repo/rust/check-rustc | 109 ------------ repo/rust/install-template-shebang.patch | 10 -- repo/rust/link-musl-dynamically.patch | 17 -- repo/rust/musl-fix-linux_musl_base.patch | 23 --- repo/rust/need-rpath.patch | 62 ------- repo/rust/need-ssp_nonshared.patch | 13 -- repo/rust/rust.xibuild | 75 -------- repo/sbase/sbase-box.xibuild | 6 +- repo/sbase/tsort.xibuild | 15 ++ .../shared-mime-info.post-deinstall | 10 ++ repo/shared-mime-info/shared-mime-info.trigger | 7 + repo/shared-mime-info/shared-mime-info.xibuild | 30 ++-- repo/toybox/toybox.xibuild | 10 +- repo/v4l-utils/v4l-utils.xibuild | 3 +- repo/wpa_supplicant/wpa_supplicant.xibuild | 3 +- repo/xautolock/xautolock.xibuild | 3 +- repo/xclock-cat/xclock-cat.xibuild | 5 +- repo/xcursor-themes/xcursor-themes.xibuild | 3 +- .../xf86-input-synaptics.xibuild | 3 +- repo/xf86-video-amdgpu/xf86-video-amdgpu.xibuild | 3 +- repo/xf86-video-ati/xf86-video-ati.xibuild | 3 +- repo/xf86-video-fbdev/xf86-video-fbdev.xibuild | 3 +- repo/xf86-video-intel/xf86-video-intel.xibuild | 7 +- repo/xf86-video-nouveau/xf86-video-nouveau.xibuild | 3 +- repo/xf86-video-qxl/xf86-video-qxl.xibuild | 3 +- repo/xf86-video-vmware/xf86-video-vmware.xibuild | 3 +- repo/xib/xib.xibuild | 2 +- repo/xibuild/xibuild.xibuild | 2 +- repo/xipkg/xipkg.xibuild | 4 +- repo/xmlto/xmlto.xibuild | 4 +- repo/xorg-server/xorg-server.xibuild | 3 +- repo/zathura/zathura.xibuild | 2 +- repo/zynaddsubfx/cmake-build-type-none.patch | 12 -- repo/zynaddsubfx/fix-bogus-strstr.patch | 16 -- repo/zynaddsubfx/fix-memset.patch | 11 -- repo/zynaddsubfx/zynaddsubfx.xibuild | 49 ------ skip/file/file.xibuild | 23 +++ ...-Prefer-libgcc_eh-over-libunwind-for-musl.patch | 24 +++ .../0007-do-not-install-libunwind-source.patch | 19 ++ skip/rust/alpine-move-py-scripts-to-share.patch | 23 +++ skip/rust/alpine-target.patch | 191 +++++++++++++++++++++ skip/rust/cargo.xibuild | 8 + skip/rust/check-rustc | 109 ++++++++++++ skip/rust/install-template-shebang.patch | 10 ++ skip/rust/link-musl-dynamically.patch | 17 ++ skip/rust/musl-fix-linux_musl_base.patch | 23 +++ skip/rust/need-rpath.patch | 62 +++++++ skip/rust/need-ssp_nonshared.patch | 13 ++ skip/rust/rust.xibuild | 77 +++++++++ skip/zynaddsubfx/cmake-build-type-none.patch | 35 ---- skip/zynaddsubfx/zynaddsubfx.xibuild | 24 ++- 78 files changed, 907 insertions(+), 855 deletions(-) delete mode 100644 repo/file/file.xibuild create mode 100644 repo/libbpf/10-consolidate-lib-dirs.patch create mode 100644 repo/libbpf/libbpf.xibuild create mode 100644 repo/pahole/0001-libbpf-Update-libbpf-to-the-latest-git-HEAD.patch delete mode 100644 repo/python-markupsafe/python-markupsafe.xibuild delete mode 100644 repo/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch delete mode 100644 repo/rust/0007-do-not-install-libunwind-source.patch delete mode 100644 repo/rust/alpine-move-py-scripts-to-share.patch delete mode 100644 repo/rust/alpine-target.patch delete mode 100644 repo/rust/cargo.xibuild delete mode 100644 repo/rust/check-rustc delete mode 100644 repo/rust/install-template-shebang.patch delete mode 100644 repo/rust/link-musl-dynamically.patch delete mode 100644 repo/rust/musl-fix-linux_musl_base.patch delete mode 100644 repo/rust/need-rpath.patch delete mode 100644 repo/rust/need-ssp_nonshared.patch delete mode 100644 repo/rust/rust.xibuild create mode 100644 repo/sbase/tsort.xibuild create mode 100644 repo/shared-mime-info/shared-mime-info.post-deinstall create mode 100644 repo/shared-mime-info/shared-mime-info.trigger delete mode 100644 repo/zynaddsubfx/cmake-build-type-none.patch delete mode 100644 repo/zynaddsubfx/fix-bogus-strstr.patch delete mode 100644 repo/zynaddsubfx/fix-memset.patch delete mode 100644 repo/zynaddsubfx/zynaddsubfx.xibuild create mode 100644 skip/file/file.xibuild create mode 100644 skip/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch create mode 100644 skip/rust/0007-do-not-install-libunwind-source.patch create mode 100644 skip/rust/alpine-move-py-scripts-to-share.patch create mode 100644 skip/rust/alpine-target.patch create mode 100644 skip/rust/cargo.xibuild create mode 100644 skip/rust/check-rustc create mode 100644 skip/rust/install-template-shebang.patch create mode 100644 skip/rust/link-musl-dynamically.patch create mode 100644 skip/rust/musl-fix-linux_musl_base.patch create mode 100644 skip/rust/need-rpath.patch create mode 100644 skip/rust/need-ssp_nonshared.patch create mode 100644 skip/rust/rust.xibuild diff --git a/repo/atk/atk.xibuild b/repo/atk/atk.xibuild index 4fd470a..ff82331 100644 --- a/repo/atk/atk.xibuild +++ b/repo/atk/atk.xibuild @@ -3,7 +3,7 @@ NAME="atk" DESC="A library providing a set of interfaces for accessibility" -MAKEDEPS="meson ninja " +MAKEDEPS="meson ninja at-spi2-core" DEPS="glib intltool musl " PKG_VER=2.38.0 diff --git a/repo/file/file.xibuild b/repo/file/file.xibuild deleted file mode 100644 index 173560a..0000000 --- a/repo/file/file.xibuild +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make " -DEPS="musl zlib xz bzip2" - -PKG_VER=5.43 -SOURCE=http://ftp.astron.com/pub/file/file-$PKG_VER.tar.gz -DESC="A utility for determining the type of a given file or files" - -build () { - ./configure --prefix=/usr - make -} - -check () { - make check -} - -package () { - make DESTDIR=$PKG_DEST install -} - - diff --git a/repo/gcc/gcc.xibuild b/repo/gcc/gcc.xibuild index 33c76d4..88b05f5 100644 --- a/repo/gcc/gcc.xibuild +++ b/repo/gcc/gcc.xibuild @@ -119,6 +119,9 @@ build () { --with-linker-hash-style=gnu " #export FON+="--with-isl " + export CFLAGS="$CFLAGS -fPIC" + export CXXFLAGS="$CXXFLAGS -fPIC" + # Configure source SED=sed libat_cv_have_ifunc=no \ ../configure --prefix=/usr \ diff --git a/repo/ghostscript/ghostscript.xibuild b/repo/ghostscript/ghostscript.xibuild index 7d4152a..d3b74ee 100644 --- a/repo/ghostscript/ghostscript.xibuild +++ b/repo/ghostscript/ghostscript.xibuild @@ -3,8 +3,7 @@ NAME="ghostscript" DESC="An interpreter for the PostScript language and for PDF" -MAKEDEPS="make freetype2 openjpeg libpng zlib tiff cups jbig2dec" -DEPS="musl " +MAKEDEPS="make freetype2 openjpeg libpng zlib tiff cups jbig2dec gnutls guile" PKG_VER=9.56.1 SOURCE="https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9561/ghostscript-$PKG_VER.tar.gz" diff --git a/repo/guile/guile.xibuild b/repo/guile/guile.xibuild index 598bdd2..f79caca 100644 --- a/repo/guile/guile.xibuild +++ b/repo/guile/guile.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="gmp libtool ncurses texinfo libunistring gc libffi" +MAKEDEPS="make gmp libtool ncurses texinfo libunistring gc libffi" PKG_VER=3.0.8 diff --git a/repo/jack/jack.xibuild b/repo/jack/jack.xibuild index 9f6ec8c..ec7c570 100644 --- a/repo/jack/jack.xibuild +++ b/repo/jack/jack.xibuild @@ -10,7 +10,6 @@ SOURCE="https://github.com/jackaudio/jack2/archive/v$PKG_VER/jack2-v$PKG_VER.tar ADDITIONAL=" fix-execinfo.patch -increase-api-version.patch " prepare () { apply_patches diff --git a/repo/libbpf/10-consolidate-lib-dirs.patch b/repo/libbpf/10-consolidate-lib-dirs.patch new file mode 100644 index 0000000..8a270b7 --- /dev/null +++ b/repo/libbpf/10-consolidate-lib-dirs.patch @@ -0,0 +1,19 @@ +Alpine doesn't recognize lib64 directories by default, so we consolidate into lib. + +diff --git a/src/Makefile b/src/Makefile +index e9021fe..1d86ecd 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -61,11 +61,7 @@ INSTALL = install + + DESTDIR ?= + +-ifeq ($(filter-out %64 %64be %64eb %64le %64el s390x, $(shell uname -m)),) +- LIBSUBDIR := lib64 +-else +- LIBSUBDIR := lib +-endif ++LIBSUBDIR := lib + + # By default let the pc file itself use ${prefix} in includedir/libdir so that + # the prefix can be overridden at runtime (eg: --define-prefix) diff --git a/repo/libbpf/libbpf.xibuild b/repo/libbpf/libbpf.xibuild new file mode 100644 index 0000000..0e4993d --- /dev/null +++ b/repo/libbpf/libbpf.xibuild @@ -0,0 +1,33 @@ +#!/bin/sh + +NAME="libbpf" +DESC="A library for interacting with the Linux kernel's Berkeley Packet Filter (BPF) facility from user space" + +MAKEDEPS="linux-headers elfutils zlib" + +PKG_VER=1.0.1 +SOURCE="https://github.com/libbpf/libbpf/archive/refs/tags/v$PKG_VER.tar.gz" + +ADDITIONAL=" +10-consolidate-lib-dirs.patch +" + +build() { + cd src + make NO_PKG_CONFIG=1 +} + +check() { + echo "#include \"$BUILD_ROOT/src/btf.h\"" | gcc -xc -c -o /dev/null - +} + +package() { + cd src + make install DESTDIR="$PKG_DEST" + # install somewhere out of the way that will hopefully not be included by mistake + mkdir -p "$PKG_DEST/usr/include/bpf/uapi/linux" + for header in bpf.h bpf_common.h btf.h; do + cp "$BUILD_ROOT/include/uapi/linux/$header" "$PKG_DEST/usr/include/bpf/uapi/linux/" + done +} + diff --git a/repo/libinput/libinput.xibuild b/repo/libinput/libinput.xibuild index 4141159..c7bd7ea 100644 --- a/repo/libinput/libinput.xibuild +++ b/repo/libinput/libinput.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="meson ninja" -DEPS="libevdev mtdev libwacom" +MAKEDEPS="meson ninja libevdev mtdev libwacom" DESC="Input device management and event handling library" diff --git a/repo/libwebp/libwebp.xibuild b/repo/libwebp/libwebp.xibuild index 3ef0681..c4a1809 100644 --- a/repo/libwebp/libwebp.xibuild +++ b/repo/libwebp/libwebp.xibuild @@ -29,5 +29,4 @@ build () { package () { make DESTDIR=$PKG_DEST install mkdir -p $PKG_DEST/usr/share/doc/libwebp - install -Dm644 PATENTS README $PKG_DEST/usr/share/doc/libwebp } diff --git a/repo/libxfont2/libxfont2.xibuild b/repo/libxfont2/libxfont2.xibuild index d1b2d09..5f728e8 100644 --- a/repo/libxfont2/libxfont2.xibuild +++ b/repo/libxfont2/libxfont2.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make asciidoc xmlto lynx" -DEPS="fontconfig libxcb elogind" +MAKEDEPS="make asciidoc xmlto fontconfig libxcb elogind libfontenc" PKG_VER=2.0.5 SOURCE=https://www.x.org/pub/individual/lib/libXfont2-$PKG_VER.tar.bz2 diff --git a/repo/linux-headers/linux-headers.xibuild b/repo/linux-headers/linux-headers.xibuild index 96f8b27..4dfb4e3 100644 --- a/repo/linux-headers/linux-headers.xibuild +++ b/repo/linux-headers/linux-headers.xibuild @@ -1,10 +1,9 @@ #!/bin/sh -MAKEDEPS="make cpio bc perl libelf kmod xmlto xz" -DEPS="pahole" +MAKEDEPS="make " DESC="Linux kernel headers" -PKG_VER=5.19 +PKG_VER=6.0.12 SOURCE=https://cdn.kernel.org/pub/linux/kernel/v${PKG_VER%%.*}.x/linux-$PKG_VER.tar.xz build () { diff --git a/repo/linux-libre/linux-libre.xibuild b/repo/linux-libre/linux-libre.xibuild index a5786ca..30cf726 100644 --- a/repo/linux-libre/linux-libre.xibuild +++ b/repo/linux-libre/linux-libre.xibuild @@ -7,7 +7,6 @@ PKG_VER=6.0.12 #SOURCE=https://cdn.kernel.org/pub/linux/kernel/v${PKG_VER%%.*}.x/linux-$PKG_VER.tar.xz SOURCE=https://linux-libre.fsfla.org/pub/linux-libre/releases/${PKG_VER}-gnu/linux-libre-${PKG_VER}-gnu.tar.xz ADDITIONAL=" - fix-toybox-coreutils.patch config " #https://linux-libre.fsfla.org/pub/linux-libre/releases/$PKG_VER-gnu/deblob-${PKG_VER} diff --git a/repo/linux/linux.xibuild b/repo/linux/linux.xibuild index 2762d0b..b4dce81 100644 --- a/repo/linux/linux.xibuild +++ b/repo/linux/linux.xibuild @@ -6,7 +6,6 @@ DEPS="toybox kmod" PKG_VER=6.0.12 SOURCE=https://cdn.kernel.org/pub/linux/kernel/v${PKG_VER%%.*}.x/linux-$PKG_VER.tar.xz ADDITIONAL=" - fix-toybox-coreutils.patch config " diff --git a/repo/lv2/lv2.xibuild b/repo/lv2/lv2.xibuild index 1ec3d7e..b932035 100644 --- a/repo/lv2/lv2.xibuild +++ b/repo/lv2/lv2.xibuild @@ -3,21 +3,23 @@ NAME="lv2" DESC="extensible open standard for audio plugins" -MAKEDEPS="python gtk2 libsndfile gcovr" +MAKEDEPS="gtk2 libsndfile gcovr" PKG_VER=1.18.10 -SOURCE="https://gitlab.com/lv2/lv2/-/archive/v$PKG_VER/lv2-v$PKG_VER.tar.gz" +SOURCE="https://lv2plug.in/spec/lv2-$PKG_VER.tar.xz" build() { - python3 waf configure --prefix=/usr -T - python3 waf build + meson --prefix=/usr \ + -Db_lto=true . output + meson compile -C output } check() { - python3 waf test + meson test --print-errorlogs --no-rebuild -C output } package() { - python3 waf install --destdir="$PKG_DEST" + DESTDIR="$PKG_DEST" meson install --no-rebuild -C output } + diff --git a/repo/motif/motif.xibuild b/repo/motif/motif.xibuild index 7d08648..d8d6e1e 100644 --- a/repo/motif/motif.xibuild +++ b/repo/motif/motif.xibuild @@ -3,8 +3,7 @@ NAME="motif" DESC="User interface component toolkit" -MAKEDEPS="make " -DEPS="libx11 libxft libxt libxpm musl " +MAKEDEPS="make xbitmaps libx11 libxft libxt libxpm musl " PKG_VER=2.3.8 SOURCE="https://sourceforge.net/projects/motif/files/Motif%20$PKG_VER%20Source%20Code/motif-$PKG_VER.tar.gz/download" diff --git a/repo/pahole/0001-libbpf-Update-libbpf-to-the-latest-git-HEAD.patch b/repo/pahole/0001-libbpf-Update-libbpf-to-the-latest-git-HEAD.patch new file mode 100644 index 0000000..34e616b --- /dev/null +++ b/repo/pahole/0001-libbpf-Update-libbpf-to-the-latest-git-HEAD.patch @@ -0,0 +1,120 @@ +From c0cf45c77c8ff72b141605a0d7ec79d2cd577ee8 Mon Sep 17 00:00:00 2001 +From: Kui-Feng Lee +Date: Wed, 26 Jan 2022 11:20:39 -0800 +Subject: [PATCH] libbpf: Update libbpf to the latest git HEAD + +Replace deprecated APIs with new ones. + +Signed-off-by: Kui-Feng Lee +Acked-by: Andrii Nakryiko +Cc: Alexei Starovoitov +Cc: Daniel Borkmann +Cc: bpf@vger.kernel.org +Cc: dwarves@vger.kernel.org +Link: https://lore.kernel.org/r/20220126192039.2840752-5-kuifeng@fb.com +Signed-off-by: Arnaldo Carvalho de Melo +--- + +Upstream commit 73383b3a39afe86b22e098773e47b8546c48a649 +not strictly required but fixes incompatibilities when building with +libbpf 0.7.0 + + btf_encoder.c | 20 ++++++++++---------- + btf_loader.c | 2 +- + lib/bpf | 2 +- + 3 files changed, 12 insertions(+), 12 deletions(-) + +diff --git a/btf_encoder.c b/btf_encoder.c +index 9d015f304e92..4aa003b6aa54 100644 +--- a/btf_encoder.c ++++ b/btf_encoder.c +@@ -172,7 +172,7 @@ __attribute ((format (printf, 5, 6))) + static void btf__log_err(const struct btf *btf, int kind, const char *name, + bool output_cr, const char *fmt, ...) + { +- fprintf(stderr, "[%u] %s %s", btf__get_nr_types(btf) + 1, ++ fprintf(stderr, "[%u] %s %s", btf__type_cnt(btf), + btf_kind_str[kind], name ?: "(anon)"); + + if (fmt && *fmt) { +@@ -203,7 +203,7 @@ static void btf_encoder__log_type(const struct btf_encoder *encoder, const struc + out = err ? stderr : stdout; + + fprintf(out, "[%u] %s %s", +- btf__get_nr_types(btf), btf_kind_str[kind], ++ btf__type_cnt(btf) - 1, btf_kind_str[kind], + btf__printable_name(btf, t->name_off)); + + if (fmt && *fmt) { +@@ -449,10 +449,10 @@ static int btf_encoder__add_field(struct btf_encoder *encoder, const char *name, + int err; + + err = btf__add_field(btf, name, type, offset, bitfield_size); +- t = btf__type_by_id(btf, btf__get_nr_types(btf)); ++ t = btf__type_by_id(btf, btf__type_cnt(btf) - 1); + if (err) { + fprintf(stderr, "[%u] %s %s's field '%s' offset=%u bit_size=%u type=%u Error emitting field\n", +- btf__get_nr_types(btf), btf_kind_str[btf_kind(t)], ++ btf__type_cnt(btf) - 1, btf_kind_str[btf_kind(t)], + btf__printable_name(btf, t->name_off), + name, offset, bitfield_size, type); + } else { +@@ -899,9 +899,9 @@ static int btf_encoder__write_raw_file(struct btf_encoder *encoder) + const void *raw_btf_data; + int fd, err; + +- raw_btf_data = btf__get_raw_data(encoder->btf, &raw_btf_size); ++ raw_btf_data = btf__raw_data(encoder->btf, &raw_btf_size); + if (raw_btf_data == NULL) { +- fprintf(stderr, "%s: btf__get_raw_data failed!\n", __func__); ++ fprintf(stderr, "%s: btf__raw_data failed!\n", __func__); + return -1; + } + +@@ -976,7 +976,7 @@ static int btf_encoder__write_elf(struct btf_encoder *encoder) + } + } + +- raw_btf_data = btf__get_raw_data(btf, &raw_btf_size); ++ raw_btf_data = btf__raw_data(btf, &raw_btf_size); + + if (btf_data) { + /* Existing .BTF section found */ +@@ -1043,10 +1043,10 @@ int btf_encoder__encode(struct btf_encoder *encoder) + btf_encoder__add_datasec(encoder, PERCPU_SECTION); + + /* Empty file, nothing to do, so... done! */ +- if (btf__get_nr_types(encoder->btf) == 0) ++ if (btf__type_cnt(encoder->btf) == 1) + return 0; + +- if (btf__dedup(encoder->btf, NULL, NULL)) { ++ if (btf__dedup(encoder->btf, NULL)) { + fprintf(stderr, "%s: btf__dedup failed!\n", __func__); + return -1; + } +@@ -1403,7 +1403,7 @@ void btf_encoder__delete(struct btf_encoder *encoder) + + int btf_encoder__encode_cu(struct btf_encoder *encoder, struct cu *cu) + { +- uint32_t type_id_off = btf__get_nr_types(encoder->btf); ++ uint32_t type_id_off = btf__type_cnt(encoder->btf) - 1; + struct llvm_annotation *annot; + int btf_type_id, tag_type_id; + uint32_t core_id; +diff --git a/btf_loader.c b/btf_loader.c +index 7a5b16ff393e..c7d69ccea4d3 100644 +--- a/btf_loader.c ++++ b/btf_loader.c +@@ -399,7 +399,7 @@ static int btf__load_types(struct btf *btf, struct cu *cu) + uint32_t type_index; + int err; + +- for (type_index = 1; type_index <= btf__get_nr_types(btf); type_index++) { ++ for (type_index = 1; type_index < btf__type_cnt(btf); type_index++) { + const struct btf_type *type_ptr = btf__type_by_id(btf, type_index); + uint32_t type = btf_kind(type_ptr); + +-- +2.35.1 + diff --git a/repo/pahole/pahole.xibuild b/repo/pahole/pahole.xibuild index 821c4f5..46586dc 100644 --- a/repo/pahole/pahole.xibuild +++ b/repo/pahole/pahole.xibuild @@ -1,22 +1,34 @@ #!/bin/sh -MAKEDEPS="cmake-modules python make " -DEPS="libelf python elfutils libdwarf musl-obstack argp-standalone" +NAME="pahole" +DESC="dwarf manipulation utilities" -PKG_VER=1.22 -SOURCE=https://git.kernel.org/pub/scm/devel/pahole/pahole.git -BRANCH=v$PKG_VER +MAKEDEPS=" cmake elfutils libdwarf zlib libbpf linux-headers musl-obstack argp-standalone samurai" -DESC="Pahole and other DWARF Utils" +PKG_VER=1.24 +SOURCE="https://git.kernel.org/pub/scm/devel/pahole/pahole.git/snapshot/pahole-v$PKG_VER.tar.gz" -build () { - cmake -B build -G Ninja . \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=None \ - -D__LIB=lib - cmake --build build +ADDITIONAL=" +0001-libbpf-Update-libbpf-to-the-latest-git-HEAD.patch +" + +prepare () { + apply_patches } -package () { - DESTDIR="$PKG_DEST" cmake --install build +build() { + export CFLAGS="$CFLAGS -I/usr/include/bpf/uapi" + + cmake -B build -G Ninja . \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=None \ + -D__LIB=lib \ + -DCMAKE_MODULE_PATH=/usr/lib/cmake \ + -DLIBBPF_EMBEDDED=OFF + cmake --build build } + +package() { + DESTDIR="$PKG_DEST" cmake --build build --target install +} + diff --git a/repo/python-Jinja2/python-Jinja2.xibuild b/repo/python-Jinja2/python-Jinja2.xibuild index 8775e02..5773bd6 100644 --- a/repo/python-Jinja2/python-Jinja2.xibuild +++ b/repo/python-Jinja2/python-Jinja2.xibuild @@ -1,7 +1,7 @@ #!/bin/sh -MAKEDEPS="python" -DEPS="" +MAKEDEPS="python python-jinja" +DEPS="python-jinja" PKG_VER=3.0.3 SOURCE=https://files.pythonhosted.org/packages/91/a5/429efc6246119e1e3fbf562c00187d04e83e54619249eb732bb423efa6c6/Jinja2-$PKG_VER.tar.gz diff --git a/repo/python-jinja/python-jinja.xibuild b/repo/python-jinja/python-jinja.xibuild index 35fc65f..3398fbc 100644 --- a/repo/python-jinja/python-jinja.xibuild +++ b/repo/python-jinja/python-jinja.xibuild @@ -1,7 +1,7 @@ #!/bin/sh MAKEDEPS="python " -DEPS="" +DEPS="python-markupsafe" PKG_VER=3.0.3 SOURCE=https://files.pythonhosted.org/packages/source/J/Jinja2/Jinja2-$PKG_VER.tar.gz diff --git a/repo/python-markupsafe/python-markupsafe.xibuild b/repo/python-markupsafe/python-markupsafe.xibuild deleted file mode 100644 index b8327e6..0000000 --- a/repo/python-markupsafe/python-markupsafe.xibuild +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh - -MAKEDEPS="python" -DEPS="python" - -PKG_VER=2.0.1 -SOURCE=https://files.pythonhosted.org/packages/source/M/MarkupSafe/MarkupSafe-$PKG_VER.tar.gz -DESC="Implements a XML/HTML/XHTML Markup safe string for Python" - -build() { - python setup.py build -} - -package () { - python3 setup.py install --root="$PKG_DEST" --optimize=1 -} diff --git a/repo/python/python.xibuild b/repo/python/python.xibuild index 039167d..5444667 100644 --- a/repo/python/python.xibuild +++ b/repo/python/python.xibuild @@ -1,6 +1,6 @@ #!/bin/sh -MAKEDEPS="make autoconf automake autoconf-archive sqlite3 expat bzip2 gdbm libffi libnsl libxcrypt openssl zlib grep" +MAKEDEPS="make autoconf automake autoconf-archive sqlite3 expat bzip2 gdbm libffi libnsl libxcrypt openssl zlib grep lv2" PKG_VER=3.10.7 SOURCE=https://www.python.org/ftp/python/$PKG_VER/Python-$PKG_VER.tgz diff --git a/repo/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch b/repo/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch deleted file mode 100644 index 30cb66f..0000000 --- a/repo/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch +++ /dev/null @@ -1,24 +0,0 @@ -Additions for build.rs by q66, necessary for our musl setup. - -From 1eb558f246269606c6d8d73824ef6b44fa10764e Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Sat, 9 Sep 2017 00:14:16 -0500 -Subject: [PATCH 06/16] Prefer libgcc_eh over libunwind for musl - ---- - src/libunwind/lib.rs | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/libunwind/lib.rs b/src/libunwind/lib.rs -index 9182e349b19..0377fbb58fc 100644 ---- a/library/unwind/src/lib.rs -+++ b/library/unwind/src/lib.rs -@@ -51,7 +51,7 @@ - #[link(name = "unwind", cfg(not(target_feature = "crt-static")))] - extern "C" {} - } else { -- #[link(name = "unwind", kind = "static", modifiers = "-bundle", cfg(target_feature = "crt-static"))] -+ #[link(name = "gcc_eh", cfg(target_feature = "crt-static"))] - #[link(name = "gcc_s", cfg(not(target_feature = "crt-static")))] - extern "C" {} - } diff --git a/repo/rust/0007-do-not-install-libunwind-source.patch b/repo/rust/0007-do-not-install-libunwind-source.patch deleted file mode 100644 index e8ff8b7..0000000 --- a/repo/rust/0007-do-not-install-libunwind-source.patch +++ /dev/null @@ -1,19 +0,0 @@ -From: Dominic Meiser -Date: Tue, 22 Dec 2020 23:31:28 +0100 -Subject: [PATCH] Do not install libunwind source - -This was added in rustc 1.48, but is incompatible with the Alpine Linux package since it removes all bundled -dependencies prior to building. - -diff -Naur rustc-1.48.0-src.orig/src/bootstrap/dist.rs rustc-1.48.0-src/src/bootstrap/dist.rs ---- rustc-1.48.0-src.orig/src/bootstrap/dist.rs 2020-12-22 16:39:30.504249113 +0100 -+++ rustc-1.48.0-src/src/bootstrap/dist.rs 2020-12-22 16:42:08.663006830 +0100 -@@ -1016,7 +1016,7 @@ - copy_src_dirs( - builder, - &builder.src, -- &["library", "src/llvm-project/libunwind"], -+ &["library"], - &[ - // not needed and contains symlinks which rustup currently - // chokes on when unpacking. diff --git a/repo/rust/alpine-move-py-scripts-to-share.patch b/repo/rust/alpine-move-py-scripts-to-share.patch deleted file mode 100644 index 21be36f..0000000 --- a/repo/rust/alpine-move-py-scripts-to-share.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- a/src/etc/rust-gdb -+++ b/src/etc/rust-gdb -@@ -12,7 +12,7 @@ - - # Find out where the pretty printer Python module is - RUSTC_SYSROOT="$("$RUSTC" --print=sysroot)" --GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc" -+GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/share/rust/etc" - - # Run GDB with the additional arguments that load the pretty printers - # Set the environment variable `RUST_GDB` to overwrite the call to a - # Set the environment variable `RUST_GDB` to overwrite the call to a ---- a/src/etc/rust-lldb -+++ b/src/etc/rust-lldb -@@ -8,7 +8,7 @@ - - # Find out where to look for the pretty printer Python module - RUSTC_SYSROOT=$(rustc --print sysroot) --RUST_LLDB="$RUSTC_SYSROOT/lib/rustlib/$host/bin/lldb" -+RUST_LLDB="$RUSTC_SYSROOT/share/rust/etc" - - lldb=lldb - if [ -f "$RUST_LLDB" ]; then diff --git a/repo/rust/alpine-target.patch b/repo/rust/alpine-target.patch deleted file mode 100644 index 2392cdd..0000000 --- a/repo/rust/alpine-target.patch +++ /dev/null @@ -1,191 +0,0 @@ -From: Shiz -Updated by Rasmus Thomsen on 28th of July 2019 -Updated again by Ariadne Conill on 31 October 2020 -Date: Thu, 20 Aug 2017 01:52:36 +0200 -Last-Updated: Sat, 28 Oct 2017 20:23:00 +0200 -Subject: [PATCH] Add Alpine targets - -This adds `$arch-alpine-linux-musl` targets to Rust to encode our toolchain -and distribution-specific quirks instead of polluting the main musl target of -`$arch-unknown-linux-musl`. - ---- /dev/null -+++ rustc-1.48.0-src/compiler/rustc_target/src/spec/aarch64_alpine_linux_musl.rs -@@ -0,0 +1,13 @@ -+use crate::spec::Target; -+ -+pub fn target() -> Target { -+ let mut base = super::aarch64_unknown_linux_musl::target(); -+ -+ base.llvm_target = "aarch64-alpine-linux-musl".to_string(); -+ base.options.vendor = "alpine".to_string(); -+ base.options.crt_static_default = false; -+ base.options.static_position_independent_executables = true; -+ base.options.need_rpath = true; -+ -+ base -+} ---- /dev/null -+++ rustc-1.48.0-src/compiler/rustc_target/src/spec/armv6_alpine_linux_musleabihf.rs -@@ -0,0 +1,13 @@ -+use crate::spec::Target; -+ -+pub fn target() -> Target { -+ let mut base = super::arm_unknown_linux_musleabihf::target(); -+ -+ base.llvm_target = "armv6-alpine-linux-musleabihf".to_string(); -+ base.options.vendor = "alpine".to_string(); -+ base.options.crt_static_default = false; -+ base.options.static_position_independent_executables = true; -+ base.options.need_rpath = true; -+ -+ base -+} ---- /dev/null -+++ rustc-1.48.0-src/compiler/rustc_target/src/spec/armv7_alpine_linux_musleabihf.rs -@@ -0,0 +1,13 @@ -+use crate::spec::Target; -+ -+pub fn target() -> Target { -+ let mut base = super::armv7_unknown_linux_musleabihf::target(); -+ -+ base.llvm_target = "armv7-alpine-linux-musleabihf".to_string(); -+ base.options.vendor = "alpine".to_string(); -+ base.options.crt_static_default = false; -+ base.options.static_position_independent_executables = true; -+ base.options.need_rpath = true; -+ -+ base -+} ---- /dev/null -+++ rustc-1.48.0-src/compiler/rustc_target/src/spec/i586_alpine_linux_musl.rs -@@ -0,0 +1,14 @@ -+use crate::spec::Target; -+ -+pub fn target() -> Target { -+ let mut base = super::i686_unknown_linux_musl::target(); -+ -+ base.options.cpu = "pentium4".to_string(); -+ base.llvm_target = "i586-alpine-linux-musl".to_string(); -+ base.options.vendor = "alpine".to_string(); -+ base.options.crt_static_default = false; -+ base.options.static_position_independent_executables = true; -+ base.options.need_rpath = true; -+ -+ base -+} ---- rustc-1.48.0-src.orig/compiler/rustc_target/src/spec/mod.rs -+++ rustc-1.48.0-src/compiler/rustc_target/src/spec/mod.rs -@@ -490,6 +490,16 @@ - } - - supported_targets! { -+ ("i586-alpine-linux-musl", i586_alpine_linux_musl), -+ ("x86_64-alpine-linux-musl", x86_64_alpine_linux_musl), -+ ("aarch64-alpine-linux-musl", aarch64_alpine_linux_musl), -+ ("armv6-alpine-linux-musleabihf", armv6_alpine_linux_musleabihf), -+ ("armv7-alpine-linux-musleabihf", armv7_alpine_linux_musleabihf), -+ ("powerpc-alpine-linux-musl", powerpc_alpine_linux_musl), -+ ("powerpc64-alpine-linux-musl", powerpc64_alpine_linux_musl), -+ ("powerpc64le-alpine-linux-musl", powerpc64le_alpine_linux_musl), -+ ("s390x-alpine-linux-musl", s390x_alpine_linux_musl), -+ ("riscv64-alpine-linux-musl", riscv64_alpine_linux_musl), - ("x86_64-unknown-linux-gnu", x86_64_unknown_linux_gnu), - ("x86_64-unknown-linux-gnux32", x86_64_unknown_linux_gnux32), - ("i686-unknown-linux-gnu", i686_unknown_linux_gnu), ---- /dev/null -+++ rustc-1.48.0-src/compiler/rustc_target/src/spec/powerpc64_alpine_linux_musl.rs -@@ -0,0 +1,13 @@ -+use crate::spec::Target; -+ -+pub fn target() -> Target { -+ let mut base = super::powerpc64_unknown_linux_musl::target(); -+ -+ base.llvm_target = "powerpc64-alpine-linux-musl".to_string(); -+ base.options.vendor = "alpine".to_string(); -+ base.options.crt_static_default = false; -+ base.options.static_position_independent_executables = true; -+ base.options.need_rpath = true; -+ -+ base -+} ---- /dev/null -+++ rustc-1.48.0-src/compiler/rustc_target/src/spec/powerpc64le_alpine_linux_musl.rs -@@ -0,0 +1,13 @@ -+use crate::spec::Target; -+ -+pub fn target() -> Target { -+ let mut base = super::powerpc64le_unknown_linux_musl::target(); -+ -+ base.llvm_target = "powerpc64le-alpine-linux-musl".to_string(); -+ base.options.vendor = "alpine".to_string(); -+ base.options.crt_static_default = false; -+ base.options.static_position_independent_executables = true; -+ base.options.need_rpath = true; -+ -+ base -+} ---- /dev/null -+++ rustc-1.48.0-src/compiler/rustc_target/src/spec/powerpc_alpine_linux_musl.rs -@@ -0,0 +1,13 @@ -+use crate::spec::Target; -+ -+pub fn target() -> Target { -+ let mut base = super::powerpc_unknown_linux_musl::target(); -+ -+ base.llvm_target = "powerpc-alpine-linux-musl".to_string(); -+ base.options.vendor = "alpine".to_string(); -+ base.options.crt_static_default = false; -+ base.options.static_position_independent_executables = true; -+ base.options.need_rpath = true; -+ -+ base -+} ---- /dev/null -+++ rustc-1.48.0-src/compiler/rustc_target/src/spec/s390x_alpine_linux_musl.rs -@@ -0,0 +1,13 @@ -+use crate::spec::Target; -+ -+pub fn target() -> Target { -+ let mut base = super::s390x_unknown_linux_musl::target(); -+ -+ base.llvm_target = "s390x-alpine-linux-musl".to_string(); -+ base.options.vendor = "alpine".to_string(); -+ base.options.crt_static_default = false; -+ base.options.static_position_independent_executables = true; -+ base.options.need_rpath = true; -+ -+ base -+} ---- /dev/null -+++ rustc-1.48.0-src/compiler/rustc_target/src/spec/x86_64_alpine_linux_musl.rs -@@ -0,0 +1,13 @@ -+use crate::spec::Target; -+ -+pub fn target() -> Target { -+ let mut base = super::x86_64_unknown_linux_musl::target(); -+ -+ base.llvm_target = "x86_64-alpine-linux-musl".to_string(); -+ base.options.vendor = "alpine".to_string(); -+ base.options.crt_static_default = false; -+ base.options.static_position_independent_executables = true; -+ base.options.need_rpath = true; -+ -+ base -+} ---- /dev/null -+++ rustc-1.52.1-src/compiler/rustc_target/src/spec/riscv64_alpine_linux_musl.rs -@@ -0,0 +1,13 @@ -+use crate::spec::Target; -+ -+pub fn target() -> Target { -+ let mut base = super::riscv64gc_unknown_linux_musl::target(); -+ -+ base.llvm_target = "riscv64-alpine-linux-musl".to_string(); -+ base.options.vendor = "alpine".to_string(); -+ base.options.crt_static_default = false; -+ base.options.static_position_independent_executables = true; -+ base.options.need_rpath = true; -+ -+ base -+} diff --git a/repo/rust/cargo.xibuild b/repo/rust/cargo.xibuild deleted file mode 100644 index 8a9f47e..0000000 --- a/repo/rust/cargo.xibuild +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - -DEPS="rust" -DESC="Rust package manager" - -package () { - add_from_main "usr/bin/cargo" -} diff --git a/repo/rust/check-rustc b/repo/rust/check-rustc deleted file mode 100644 index d4b85be..0000000 --- a/repo/rust/check-rustc +++ /dev/null @@ -1,109 +0,0 @@ -#!/bin/sh -# vim: set ts=4: -set -eu - -RUSTC="$1" -TMPDIR="$(pwd)/.tmp-${0##*/}-$RANDOM" -failed=0 - -unset RUST_BACKTRACE -unset RUSTC_CRT_STATIC - - -_rustc() { - printf '\n$ rustc %s\n' "$*" - "$RUSTC" "$@" -} - -die() { - printf '\033[1;31mERROR:\033[0m %s\n' "$1" >&2 # bold red - exit 1 -} - -fail() { - printf '\033[1;31mFAIL:\033[0m %s\n' "$1" >&2 # bold red - failed=$(( failed + 1 )) -} - -assert_dynamic() { - readelf -l "$1" | grep -Fqw INTERP \ - && readelf -d "$1" | grep -Fqw NEEDED || { - fail "$1 is not a dynamic executable!" - readelf -ld "$1" - } -} - -assert_ok() { - "$1" || fail "$1 exited with status $?" -} - -assert_panic() { - local status=0 - "$1" || status=$? && [ "$status" = 101 ] \ - || fail "$1 exited with status $status, but expected 101" -} - -assert_pie() { - readelf -d "$1" | grep -Fw FLAGS_1 | grep -Fqw PIE || { - fail "$1 is not a PIE executable!" - readelf -d "$1" - } -} - -assert_static() { - test -f "$1" \ - && ! readelf -l "$1" | grep -Fqw INTERP \ - && ! readelf -d "$1" | grep -Fqw NEEDED || { - fail "$1 is not a static executable!" - readelf -ld "$1" - } -} - - -#-------------------- M a i n -------------------- - -test -d "$TMPDIR" && die "$TMPDIR already exists!" -mkdir -p "$TMPDIR" -trap "rm -R '$TMPDIR'" EXIT - -cd "$TMPDIR" - -cat >> hello_world.rs <<-EOF - fn main() { - println!("Hello, world!"); - } -EOF - -_rustc hello_world.rs -assert_ok ./hello_world -assert_dynamic hello_world -assert_pie hello_world -rm -f hello_world - -_rustc -C target-feature=-crt-static hello_world.rs -assert_ok ./hello_world -assert_dynamic hello_world -assert_pie hello_world -rm -f hello_world - -_rustc -C target-feature=+crt-static hello_world.rs -assert_ok ./hello_world -assert_static hello_world -assert_pie hello_world -rm -f hello_world - - -cat >> panic.rs <<-EOF - fn main() { - panic!("This should panic"); - } -EOF - -_rustc -C target-feature=-crt-static panic.rs -assert_panic ./panic - -_rustc -C target-feature=+crt-static panic.rs -assert_panic ./panic - - -[ "$failed" -eq 0 ] || die "$failed assertion(s) has failed" diff --git a/repo/rust/install-template-shebang.patch b/repo/rust/install-template-shebang.patch deleted file mode 100644 index e81b579..0000000 --- a/repo/rust/install-template-shebang.patch +++ /dev/null @@ -1,10 +0,0 @@ -The script seems to be POSIX-sh (+ local) compatible. - ---- a/src/tools/rust-installer/install-template.sh -+++ b/src/tools/rust-installer/install-template.sh -@@ -1,4 +1,4 @@ --#!/bin/bash -+#!/bin/sh - # Copyright 2014 The Rust Project Developers. See the COPYRIGHT - # file at the top-level directory of this distribution and at - # http://rust-lang.org/COPYRIGHT. diff --git a/repo/rust/link-musl-dynamically.patch b/repo/rust/link-musl-dynamically.patch deleted file mode 100644 index 55d02a3..0000000 --- a/repo/rust/link-musl-dynamically.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- rustc-1.58.0-src.orig/vendor/libc/src/unix/mod.rs -+++ rustc-1.58.0-src/vendor/libc/src/unix/mod.rs -@@ -329,11 +329,11 @@ - #[link(name = "c", cfg(not(target_feature = "crt-static")))] - extern {} - } else if #[cfg(target_env = "musl")] { -+ #[link(name = "c")] -+ extern {} - #[cfg_attr(feature = "rustc-dep-of-std", -- link(name = "c", kind = "static", modifiers = "-bundle", -+ link(name = "gcc", kind = "static", modifiers = "-bundle", - cfg(target_feature = "crt-static")))] -- #[cfg_attr(feature = "rustc-dep-of-std", -- link(name = "c", cfg(not(target_feature = "crt-static"))))] - extern {} - } else if #[cfg(target_os = "emscripten")] { - #[link(name = "c")] diff --git a/repo/rust/musl-fix-linux_musl_base.patch b/repo/rust/musl-fix-linux_musl_base.patch deleted file mode 100644 index 1771ffe..0000000 --- a/repo/rust/musl-fix-linux_musl_base.patch +++ /dev/null @@ -1,23 +0,0 @@ -From: Jakub Jirutka -Date: Sat, 08 Aug 2016 15:06:00 +0200 -Subject: [PATCH] Fix linux_musl_base for native musl host - -See https://github.com/rust-lang/rust/pull/40113 - ---- a/compiler/rustc_target/src/spec/linux_musl_base.rs -+++ b/compiler/rustc_target/src/spec/linux_musl_base.rs -@@ -5,12 +5,9 @@ - let mut base = super::linux_base::opts(); - - base.env = "musl".to_string(); -- base.pre_link_objects_fallback = crt_objects::pre_musl_fallback(); -- base.post_link_objects_fallback = crt_objects::post_musl_fallback(); -- base.crt_objects_fallback = Some(CrtObjectsFallback::Musl); - - // These targets statically link libc by default -- base.crt_static_default = true; -+ base.crt_static_default = false; - - base - } - diff --git a/repo/rust/need-rpath.patch b/repo/rust/need-rpath.patch deleted file mode 100644 index 5ab8377..0000000 --- a/repo/rust/need-rpath.patch +++ /dev/null @@ -1,62 +0,0 @@ -From: Shiz -Date: Thu, 20 Aug 2017 01:48:22 +0200 -Subject: [PATCH] Add need_rpath target option to force RPATH generation - -This adds a `need_rpath` option to the target options in order to implicitly -have the equivalent of `-C rpath` specified by default for final products -(executables and dynamic libraries), so that RPATHs are always added. - -We have to skip this step in the bootstrap phase as it does its own manual -RPATH additions, but unfortunately there's no clean way to detect this. -As such, we have to resort to checking the `RUSTC_BOOTSTRAP` variable. -Hacky hacky! - ---- a/compiler/rustc_target/src/spec/mod.rs -+++ b/compiler/rustc_target/src/spec/mod.rs -@@ -379,6 +379,8 @@ - pub allows_weak_linkage: bool, - /// Whether the linker support rpaths or not. Defaults to false. - pub has_rpath: bool, -+ /// Whether to force rpath support on by default. Defaults to false. -+ pub need_rpath: bool, - /// Whether to disable linking to the default libraries, typically corresponds - /// to `-nodefaultlibs`. Defaults to true. - pub no_default_libraries: bool, -@@ -519,6 +519,7 @@ - linker_is_gnu: false, - allows_weak_linkage: true, - has_rpath: false, -+ need_rpath: false, - no_default_libraries: true, - position_independent_executables: false, - static_position_independent_executables: false, -@@ -776,6 +776,7 @@ - key!(linker_is_gnu, bool); - key!(allows_weak_linkage, bool); - key!(has_rpath, bool); -+ key!(need_rpath, bool); - key!(no_default_libraries, bool); - key!(position_independent_executables, bool); - key!(static_position_independent_executables, bool); -@@ -980,6 +980,7 @@ - target_option_val!(linker_is_gnu); - target_option_val!(allows_weak_linkage); - target_option_val!(has_rpath); -+ target_option_val!(need_rpath); - target_option_val!(no_default_libraries); - target_option_val!(position_independent_executables); - target_option_val!(static_position_independent_executables); ---- a/compiler/rustc_codegen_ssa/src/back/link.rs.orig -+++ b/compiler/rustc_codegen_ssa/src/back/link.rs -@@ -1675,7 +1675,10 @@ - // FIXME (#2397): At some point we want to rpath our guesses as to - // where extern libraries might live, based on the - // add_lib_search_paths -- if sess.opts.cg.rpath { -+ // XXX: hacky hacky -+ let bootstrap = env::var("RUSTC_BOOTSTRAP").is_ok(); -+ if !bootstrap && !sess.crt_static(None) && -+ (sess.opts.cg.rpath || sess.target.options.need_rpath) { - let libs = codegen_results - .crate_info - .used_crates diff --git a/repo/rust/need-ssp_nonshared.patch b/repo/rust/need-ssp_nonshared.patch deleted file mode 100644 index f1adf20..0000000 --- a/repo/rust/need-ssp_nonshared.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- a/library/std/src/sys/unix/mod.rs.orig 2021-02-11 18:34:14.479832268 +0100 -+++ b/library/std/src/sys/unix/mod.rs 2021-02-11 18:38:28.078987749 +0100 -@@ -243,6 +243,9 @@ - #[link(name = "log")] - #[link(name = "gcc")] - extern "C" {} -+ } else if #[cfg(all(target_os = "linux", target_env = "musl"))] { -+ #[link(name = "ssp_nonshared")] -+ extern "C" {} - } else if #[cfg(target_os = "freebsd")] { - #[link(name = "execinfo")] - #[link(name = "pthread")] - diff --git a/repo/rust/rust.xibuild b/repo/rust/rust.xibuild deleted file mode 100644 index 2d68672..0000000 --- a/repo/rust/rust.xibuild +++ /dev/null @@ -1,75 +0,0 @@ -#!/bin/sh - -MAKEDEPS="cmake libclang clang llvm curl" -DEPS="libssh2 openssl" - -PKG_VER=1.63.0 -SOURCE=https://static.rust-lang.org/dist/rustc-$PKG_VER-src.tar.gz -DESC="Systems programming language focused on safety, speed and concurrency" - -ADDITIONAL=" - 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch - 0007-do-not-install-libunwind-source.patch - install-template-shebang.patch - link-musl-dynamically.patch - musl-fix-linux_musl_base.patch - need-rpath.patch - need-ssp_nonshared.patch -" - -prepare () { - apply_patches - sed -i /LD_LIBRARY_PATH/d src/bootstrap/bootstrap.py - sed -i 's/\("files":{\)[^}]*/\1/' vendor/libc/.cargo-checksum.json -} - -build () { - target=x86_64-unknown-linux-musl - build=x86_64-unknown-linux-musl - ./configure \ - --build="$build" \ - --host="$target" \ - --target="$target" \ - --prefix="/usr" \ - --release-channel="stable" \ - --llvm-root="/usr/lib/" \ - --disable-docs \ - --enable-extended \ - --tools="analysis,cargo,src,rustfmt" \ - --enable-llvm-link-shared \ - --enable-option-checking \ - --enable-locked-deps \ - --enable-vendor \ - --set="rust.musl-root=/usr" \ - --set="rust.codegen-units=1" \ - --set="rust.codegen-units-std=1" \ - --set="rust.parallel-compiler=true" \ - --set="target.$target.llvm-config=/usr/bin/llvm-config" \ - --set="target.$target.musl-root=/usr" \ - --set="target.$target.crt-static=false" \ - --set="target.$target.cc=gcc" \ - --set="target.$target.cxx=g++" \ - --set="target.$target.ar=ar" \ - --set="target.$target.linker=gcc" \ - --set="target.$build.musl-root=/usr" \ - --set="target.$build.crt-static=false" \ - --set="target.$build.cc=gcc" \ - --set="target.$build.cxx=g++" \ - --set="target.$build.ar=ar" \ - --set="target.$build.linker=gcc" \ - - sed 's/#deny-warnings = .*/deny-warnings = false/' -i config.toml - sed 's|deny(warnings,|deny(|' -i src/bootstrap/lib.rs - - python ./x.py dist -v --jobs $JOBS - -} - -package () { - export LIBSSH2_SYS_USE_PKG_CONFIG=1 && - DESTDIR=${PWD}/install python3 ./x.py install && - unset LIBSSH2_SYS_USE_PKG_CONFIG - - chown -R root:root install && - cp -a install/* $PKG_DEST -} diff --git a/repo/sbase/sbase-box.xibuild b/repo/sbase/sbase-box.xibuild index a3e36a7..f1e3c56 100644 --- a/repo/sbase/sbase-box.xibuild +++ b/repo/sbase/sbase-box.xibuild @@ -1,11 +1,11 @@ #!/bin/sh -DESC="toybox coreutils statically linked into one executable" +DESC="sbase coreutils statically linked into one executable" build () { - make CFLAGS="$CFLAGS -static" toybox-box + make CFLAGS="$CFLAGS -static" sbase-box } package () { - make DESTDIR="$PKG_DEST" toybox-box-install + make DESTDIR="$PKG_DEST" sbase-box-install } diff --git a/repo/sbase/tsort.xibuild b/repo/sbase/tsort.xibuild new file mode 100644 index 0000000..1627e12 --- /dev/null +++ b/repo/sbase/tsort.xibuild @@ -0,0 +1,15 @@ +#!/bin/sh + +NAME="tsort" +DESC="tsort from sbase" + +MAKEDEPS="make " + +build () { + make PREFIX=/usr tsort +} + +package () { + install -Dm755 tsort $PKG_DEST/usr/bin/tsort + install -Dm644 tsort.1 $PKG_DEST/usr/share/man/man1/tsort.1 +} diff --git a/repo/shared-mime-info/shared-mime-info.post-deinstall b/repo/shared-mime-info/shared-mime-info.post-deinstall new file mode 100644 index 0000000..6c31729 --- /dev/null +++ b/repo/shared-mime-info/shared-mime-info.post-deinstall @@ -0,0 +1,10 @@ +#!/bin/sh + +cd /usr/share/mime +rm -rf globs globs2 icons treemagic generic-icons types magic XMLnamespaces \ + subclasses aliases mime.cache \ + application audio image inode message model multipart text video \ + x-content x-epoc +rmdir /usr/share/mime 2>/dev/null + +exit 0 diff --git a/repo/shared-mime-info/shared-mime-info.trigger b/repo/shared-mime-info/shared-mime-info.trigger new file mode 100644 index 0000000..51a3e49 --- /dev/null +++ b/repo/shared-mime-info/shared-mime-info.trigger @@ -0,0 +1,7 @@ +#!/bin/sh + +for i in "$@"; do + if [ -d "$i" ]; then + update-mime-database "$i" > /dev/null 2>&1 + fi +done diff --git a/repo/shared-mime-info/shared-mime-info.xibuild b/repo/shared-mime-info/shared-mime-info.xibuild index a91f826..221067b 100644 --- a/repo/shared-mime-info/shared-mime-info.xibuild +++ b/repo/shared-mime-info/shared-mime-info.xibuild @@ -3,32 +3,22 @@ NAME="shared-mime-info" DESC="Freedesktop.org Shared MIME Info" -MAKEDEPS="meson ninja itstool xmlto libxml2 glib" -DEPS="toybox glib libxml2 musl pkg-config " +MAKEDEPS="meson itstool xmlto libxml2 glib" PKG_VER=2.2 SOURCE="https://gitlab.freedesktop.org/xdg/shared-mime-info/-/archive/$PKG_VER/shared-mime-info-$PKG_VER.tar.gz" -ADDITIONAL=" - https://raw.githubusercontent.com/archlinux/svntogit-packages/packages/shared-mime-info/trunk/MR_162.patch -" -prepare () { - patch -Rp1 -i MR_162.patch +build() { + meson --prefix=/usr \ + -Dupdate-mimedb=false \ + . output + meson compile ${JOBS:+-j ${JOBS}} -C output } -build () { - mkdir build && - cd build && - meson --prefix=/usr \ - -Dupdate-mimedb=false \ - .. && - ninja +check() { + meson test --no-rebuild --print-errorlogs -C output } -package () { - DESTDIR=$PKG_DEST ninja install -} - -postinstall () { - update-mime-database /usr/share/mime +package() { + DESTDIR="$PKG_DEST" meson install --no-rebuild -C output } diff --git a/repo/toybox/toybox.xibuild b/repo/toybox/toybox.xibuild index 6dcc473..c6be8f4 100644 --- a/repo/toybox/toybox.xibuild +++ b/repo/toybox/toybox.xibuild @@ -3,7 +3,10 @@ NAME="toybox" DESC="A BSD-licensed alternative to busybox" -MAKEDEPS="linux-headers" +MAKEDEPS="linux-headers tsort" + +# depend on mising utilities from other providers (ie sbase) +DEPS="tsort" PKG_VER=0.8.8 SOURCE="https://landley.net/toybox/downloads/toybox-$PKG_VER.tar.gz" @@ -11,7 +14,7 @@ ADDITIONAL=" config " -tools=" basename cat chgrp chown chmod cksum crc32 cmp comm cp mv cpio cut date df dirname du echo env expand false file find getconf grep egrep fgrep head iconv id groups logname whoami kill killall5 link ln logger ls mkdir mkfifo nice nl nohup od paste patch printf ps top iotop pgrep pkill pwd renice rm rmdir sed sleep sort split strings tail tar tee test time touch true tty ulimit arch uname uniq unlink uudecode uuencode wc who xargs ascii unicode base32 fstype blockdev chroot count dos2unix unix2dos factor fmt hexedit printenv readlink realpath rev sha3sum shred stat tac nproc taskset timeout truncate usleep uuidgen w which md5sum sha1sum sha224sum sha256sum sha384sum sha512sum mknod mktemp seq sync " +tools=" install basename cat chgrp chown chmod cksum crc32 cmp comm cp mv cpio cut date df dirname du echo env expand false find file getconf head iconv id groups logname whoami kill killall5 link ln logger ls mkdir mkfifo nice nl nohup od paste printf top iotop pwd renice rm rmdir sed sleep sort split strings tail tar tee test time touch true tty ulimit arch uname uniq unlink uudecode uuencode wc who xargs ascii unicode base32 fstype blockdev chroot count dos2unix unix2dos factor fmt hexedit printenv readlink realpath rev sha3sum shred stat tac nproc taskset timeout truncate usleep uuidgen w which md5sum sha1sum sha224sum sha256sum sha384sum sha512sum mknod mktemp seq sync " prepare () { make defconfig @@ -21,7 +24,7 @@ prepare () { build() { for tool in $tools; do echo "MAKING $tool" - make $tool || return 1 + scripts/single.sh $tool || return 1 done } @@ -34,6 +37,7 @@ build() { package() { for tool in $tools; do install -Dm755 $tool $PKG_DEST/usr/bin/$tool || return 1 + install -Dm755 $tool $PKG_DEST/usr/share/man/man1/$tool.1 || return 1 done } diff --git a/repo/v4l-utils/v4l-utils.xibuild b/repo/v4l-utils/v4l-utils.xibuild index bd40b23..6ab974d 100644 --- a/repo/v4l-utils/v4l-utils.xibuild +++ b/repo/v4l-utils/v4l-utils.xibuild @@ -3,8 +3,7 @@ NAME="v4l-utils" DESC="Userspace tools and conversion library for Video 4 Linux" -MAKEDEPS="make " -DEPS="alsa-lib libjpeg-turbo argp-standalone eudev " +MAKEDEPS="make alsa-lib libjpeg-turbo argp-standalone eudev qt5-qtbase" PKG_VER=1.22.1 SOURCE="https://linuxtv.org/downloads/v4l-utils/v4l-utils-$PKG_VER.tar.bz2" diff --git a/repo/wpa_supplicant/wpa_supplicant.xibuild b/repo/wpa_supplicant/wpa_supplicant.xibuild index b1b1f20..b07a1c3 100644 --- a/repo/wpa_supplicant/wpa_supplicant.xibuild +++ b/repo/wpa_supplicant/wpa_supplicant.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make libxml2" -DEPS="libnl openssl readline dbus pcsc-lite libnl" +MAKEDEPS="make libxml2 libnl openssl readline dbus pcsc-lite libnl" PKG_VER=2.10 diff --git a/repo/xautolock/xautolock.xibuild b/repo/xautolock/xautolock.xibuild index 75476d6..a276956 100644 --- a/repo/xautolock/xautolock.xibuild +++ b/repo/xautolock/xautolock.xibuild @@ -3,8 +3,7 @@ NAME="xautolock" DESC="An automatic X screen-locker/screen-saver" -MAKEDEPS="make imake xorg-cf-files" -DEPS="libx11 libxscrnsaver musl " +MAKEDEPS="make imake xorg-cf-files libx11 libxscrnsaver musl" PKG_VER=2.2 SOURCE="https://www.ibiblio.org/pub/linux/X11/screensavers/xautolock-$PKG_VER.tgz" diff --git a/repo/xclock-cat/xclock-cat.xibuild b/repo/xclock-cat/xclock-cat.xibuild index 896f418..1b17353 100644 --- a/repo/xclock-cat/xclock-cat.xibuild +++ b/repo/xclock-cat/xclock-cat.xibuild @@ -3,10 +3,9 @@ NAME="xclock-cat" DESC="xclock cat mode" -MAKEDEPS="make" -DEPS="libx11 motif" +MAKEDEPS="make libx11 motif" -SOURCE="https://github.com/BarkyTheDog/catclock" +SOURCE="https://github.com/BarkyTheDog/catclock.git" build () { make diff --git a/repo/xcursor-themes/xcursor-themes.xibuild b/repo/xcursor-themes/xcursor-themes.xibuild index 9aa6ca8..5581371 100644 --- a/repo/xcursor-themes/xcursor-themes.xibuild +++ b/repo/xcursor-themes/xcursor-themes.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make" -DEPS="xorg-util-macros xcb-util xcursorgen" +MAKEDEPS="make xorg-util-macros xcb-util xcursorgen" PKG_VER=1.0.6 SOURCE=https://www.x.org/pub/individual/data/xcursor-themes-$PKG_VER.tar.bz2 diff --git a/repo/xf86-input-synaptics/xf86-input-synaptics.xibuild b/repo/xf86-input-synaptics/xf86-input-synaptics.xibuild index 75cfb4c..8023e1f 100644 --- a/repo/xf86-input-synaptics/xf86-input-synaptics.xibuild +++ b/repo/xf86-input-synaptics/xf86-input-synaptics.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make" -DEPS="libevdev xorg-server" +MAKEDEPS="make libevdev xorg-server" DESC="Synaptics driver for notebook touchpads" diff --git a/repo/xf86-video-amdgpu/xf86-video-amdgpu.xibuild b/repo/xf86-video-amdgpu/xf86-video-amdgpu.xibuild index 9f67364..981cdb1 100644 --- a/repo/xf86-video-amdgpu/xf86-video-amdgpu.xibuild +++ b/repo/xf86-video-amdgpu/xf86-video-amdgpu.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make" -DEPS="xorg-server mesa" +MAKEDEPS="make xorg-server mesa" DESC="X.org amdgpu video driver" diff --git a/repo/xf86-video-ati/xf86-video-ati.xibuild b/repo/xf86-video-ati/xf86-video-ati.xibuild index f9bc5b3..c5c29b2 100644 --- a/repo/xf86-video-ati/xf86-video-ati.xibuild +++ b/repo/xf86-video-ati/xf86-video-ati.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make" -DEPS="xorg-server mesa" +MAKEDEPS="make xorg-server mesa" DESC="X.org ATI video driver" diff --git a/repo/xf86-video-fbdev/xf86-video-fbdev.xibuild b/repo/xf86-video-fbdev/xf86-video-fbdev.xibuild index 9606345..824b99a 100644 --- a/repo/xf86-video-fbdev/xf86-video-fbdev.xibuild +++ b/repo/xf86-video-fbdev/xf86-video-fbdev.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make" -DEPS="xorg-server" +MAKEDEPS="make xorg-server" DESC="X.org framebuffer video driver" diff --git a/repo/xf86-video-intel/xf86-video-intel.xibuild b/repo/xf86-video-intel/xf86-video-intel.xibuild index 32aa093..4eb3a7b 100644 --- a/repo/xf86-video-intel/xf86-video-intel.xibuild +++ b/repo/xf86-video-intel/xf86-video-intel.xibuild @@ -1,15 +1,14 @@ #!/bin/sh -MAKEDEPS="make" -DEPS="xorg-server mesa libxvmc pixman xcb-util" +MAKEDEPS="make xorg-server mesa libxvmc pixman xcb-util" DESC="X.org intel video driver" PKG_VER=2.99.917 -_pkgver=31486f40f8e8f8923ca0799aea84b58799754564 -SOURCE=https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel/-/archive/$PKG_VER/xf86-video-intel-$PKG_VER.tar.gz +SOURCE=https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel.git prepare () { + ./autogen.sh autoreconf -vif } diff --git a/repo/xf86-video-nouveau/xf86-video-nouveau.xibuild b/repo/xf86-video-nouveau/xf86-video-nouveau.xibuild index 0fbb9bb..694cffc 100644 --- a/repo/xf86-video-nouveau/xf86-video-nouveau.xibuild +++ b/repo/xf86-video-nouveau/xf86-video-nouveau.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make" -DEPS="xorg-server mesa" +MAKEDEPS="make xorg-server mesa" DESC="X.org nouveau video driver" diff --git a/repo/xf86-video-qxl/xf86-video-qxl.xibuild b/repo/xf86-video-qxl/xf86-video-qxl.xibuild index 902129e..fdfbb2a 100644 --- a/repo/xf86-video-qxl/xf86-video-qxl.xibuild +++ b/repo/xf86-video-qxl/xf86-video-qxl.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make spice-protocol" -DEPS="xorg-server" +MAKEDEPS="make spice-protocol xorg-server" DESC="X.org qxl video driver" diff --git a/repo/xf86-video-vmware/xf86-video-vmware.xibuild b/repo/xf86-video-vmware/xf86-video-vmware.xibuild index 6a503c6..45ecf97 100644 --- a/repo/xf86-video-vmware/xf86-video-vmware.xibuild +++ b/repo/xf86-video-vmware/xf86-video-vmware.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="make" -DEPS="xorg-server mesa" +MAKEDEPS="make xorg-server mesa" DESC="X.org vmware video driver" diff --git a/repo/xib/xib.xibuild b/repo/xib/xib.xibuild index f8b2395..18555ec 100644 --- a/repo/xib/xib.xibuild +++ b/repo/xib/xib.xibuild @@ -1,7 +1,7 @@ #!/bin/sh MAKEDEPS="" -DEPS="xichroot xibuild xipkg xiutils hbar parseconf git tar unzip" +DEPS="xichroot xibuild xipkg xiutils hbar parseconf git tar unzip tsort" SOURCE=https://git.davidovski.xyz/xilinux/xib.git DESC="The XiBuild system" diff --git a/repo/xibuild/xibuild.xibuild b/repo/xibuild/xibuild.xibuild index 6880b90..68b6afd 100644 --- a/repo/xibuild/xibuild.xibuild +++ b/repo/xibuild/xibuild.xibuild @@ -3,7 +3,7 @@ MAKEDEPS="make" DEPS="xiutils parseconf tar unzip hbar" -PKG_VER=1.5.1 +PKG_VER=1.5.4 SOURCE=https://git.davidovski.xyz/xilinux/xibuild.git BRANCH=v$PKG_VER diff --git a/repo/xipkg/xipkg.xibuild b/repo/xipkg/xipkg.xibuild index 50080b3..8fd1e97 100644 --- a/repo/xipkg/xipkg.xibuild +++ b/repo/xipkg/xipkg.xibuild @@ -1,9 +1,9 @@ #!/bin/sh MAKEDEPS="make shmk" -DEPS="toybox openssl curl dash findutils diffutils sed xichroot grep base64 hbar parseconf xiutils" +DEPS="toybox openssl curl dash findutils diffutils sed xichroot grep base64 hbar parseconf xiutils tsort" -PKG_VER=1.7.4 +PKG_VER=1.7.5 SOURCE=https://git.davidovski.xyz/xilinux/xipkg.git BRANCH="v$PKG_VER" diff --git a/repo/xmlto/xmlto.xibuild b/repo/xmlto/xmlto.xibuild index 0efc381..82b9cf4 100644 --- a/repo/xmlto/xmlto.xibuild +++ b/repo/xmlto/xmlto.xibuild @@ -1,7 +1,7 @@ #!/bin/sh -MAKEDEPS="make " -DEPS="libxslt" +MAKEDEPS="make util-linux" +DEPS="libxslt util-linux" PKG_VER=0.0.28 SOURCE=https://releases.pagure.org/xmlto/xmlto-$PKG_VER.tar.bz2 diff --git a/repo/xorg-server/xorg-server.xibuild b/repo/xorg-server/xorg-server.xibuild index 66b6a13..4fde3aa 100644 --- a/repo/xorg-server/xorg-server.xibuild +++ b/repo/xorg-server/xorg-server.xibuild @@ -1,7 +1,6 @@ #!/bin/sh -MAKEDEPS="meson ninja doxygen xmlto" -DEPS="libxcvt pixman font-util xkeyboardconfig elogind libepoxy libtirpc polkit acpid nettle libgcrypt xcb-util-keysyms xcb-util-image xcb-util-renderutil xcb-util-wm xkbcomp" +MAKEDEPS="meson ninja doxygen xmlto libxcvt pixman font-util xkeyboardconfig elogind libepoxy libtirpc polkit acpid nettle libgcrypt xcb-util-keysyms xcb-util-image xcb-util-renderutil xcb-util-wm xkbcomp libxfont2" PKG_VER=21.1.4 SOURCE=https://www.x.org/pub/individual/xserver/xorg-server-$PKG_VER.tar.xz diff --git a/repo/zathura/zathura.xibuild b/repo/zathura/zathura.xibuild index feaa68e..44f22d9 100644 --- a/repo/zathura/zathura.xibuild +++ b/repo/zathura/zathura.xibuild @@ -3,7 +3,7 @@ NAME="zathura" DESC="highly customizable and functional document viewer" -MAKEDEPS="girara file sqlite3 intltool check libseccomp python-docutils ncurses meson ninja python-sphinx texlive libsynctex" +MAKEDEPS="girara file sqlite3 intltool check libseccomp python-docutils ncurses meson ninja python-sphinx texlive libsynctex python" PKG_VER=0.5.1 SOURCE="https://git.pwmt.org/pwmt/zathura/-/archive/$PKG_VER/zathura-$PKG_VER.tar.gz" diff --git a/repo/zynaddsubfx/cmake-build-type-none.patch b/repo/zynaddsubfx/cmake-build-type-none.patch deleted file mode 100644 index b60a428..0000000 --- a/repo/zynaddsubfx/cmake-build-type-none.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: src/CMakeLists.txt -=================================================================== ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -185,7 +185,6 @@ option (BuildForDebug "Include gdb debug - option (IncludeWhatYouUse "Check for useless includes" OFF) - mark_as_advanced(IncludeWhatYouUse) - --set(CMAKE_BUILD_TYPE "Release") - - - set (BuildOptions_x86_64AMD diff --git a/repo/zynaddsubfx/fix-bogus-strstr.patch b/repo/zynaddsubfx/fix-bogus-strstr.patch deleted file mode 100644 index 8588045..0000000 --- a/repo/zynaddsubfx/fix-bogus-strstr.patch +++ /dev/null @@ -1,16 +0,0 @@ -Source: @pullmoll -Upstream: no -Reason: This piece of code is ill-conceived and cannot work. Remove it. - ---- a/rtosc/src/dispatch.c 2019-03-10 17:16:45.000000000 +0100 -+++ b/rtosc/src/dispatch.c 2020-03-29 09:02:42.916119722 +0200 -@@ -289,8 +289,7 @@ - return false; - } else if(type == 4) { - //extract substring -- const char *sub=NULL; -- return strstr(a,sub); -+ return false; - } else if(type == RTOSC_MATCH_OPTIONS || type == 6) { - return false; - } else if(type == RTOSC_MATCH_ENUMERATED) { diff --git a/repo/zynaddsubfx/fix-memset.patch b/repo/zynaddsubfx/fix-memset.patch deleted file mode 100644 index 1439804..0000000 --- a/repo/zynaddsubfx/fix-memset.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/src/globals.h 2015-06-28 00:25:59.000000000 +0200 -+++ b/src/globals.h 2015-10-03 15:34:18.914712672 +0200 -@@ -25,6 +25,8 @@ - #ifndef GLOBALS_H - #define GLOBALS_H - -+#include /* memset(3) */ -+ - #if defined(__clang__) - #define REALTIME __attribute__((annotate("realtime"))) - #define NONREALTIME __attribute__((annotate("nonrealtime"))) diff --git a/repo/zynaddsubfx/zynaddsubfx.xibuild b/repo/zynaddsubfx/zynaddsubfx.xibuild deleted file mode 100644 index 61b3324..0000000 --- a/repo/zynaddsubfx/zynaddsubfx.xibuild +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh - -NAME="zynaddsubfx" -DESC="fully featured open source software synthesizer" - -MAKEDEPS="cmake pkg-config zlib mxml ntk libx11 liblo fftw libxpm pulseaudio jack alsa-lib doxygen fltk " - -PKG_VER=3.0.6 -SOURCE="git://git.code.sf.net/p/zynaddsubfx/code/" -ADDITIONAL=" -cmake-build-type-none.patch -fix-bogus-strstr.patch -fix-memset.patch -" - -prepare () { - git submodule init - git submodule update - apply_patches - - sed -e 's/COMMAND.*lv2-ttl-generator/COMMAND lv2-ttl-generator/g' -i \ - src/Plugin/AlienWah/CMakeLists.txt \ - src/Plugin/Chorus/CMakeLists.txt \ - src/Plugin/Distortion/CMakeLists.txt \ - src/Plugin/DynamicFilter/CMakeLists.txt \ - src/Plugin/Echo/CMakeLists.txt \ - src/Plugin/Phaser/CMakeLists.txt \ - src/Plugin/Reverb/CMakeLists.txt \ - src/Plugin/ZynAddSubFX/CMakeLists.txt - - sed -i -e 's;gcc ;${CC} ;' \ - -e 's;.fltk-config --cflags.;& ${CFLAGS};' \ - -e 's;.fltk-config --ldflags.;& ${LDFLAGS};' \ - ExternalPrograms/Spliter/Makefile \ - ExternalPrograms/Controller/Makefile -} - -build () { - cmake -B build \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DGuiModule=ntk - cmake --build build -} - - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/skip/file/file.xibuild b/skip/file/file.xibuild new file mode 100644 index 0000000..22995d2 --- /dev/null +++ b/skip/file/file.xibuild @@ -0,0 +1,23 @@ +#!/bin/sh + +MAKEDEPS="make " +DEPS="musl zlib xz bzip2" + +PKG_VER=5.43 +SOURCE=http://ftp.astron.com/pub/file/file-$PKG_VER.tar.gz +DESC="A utility for determining the type of a given file or files" + +build () { + ./configure --prefix=/usr + make +} + +#check () { +# make check +#} + +package () { + make DESTDIR=$PKG_DEST install +} + + diff --git a/skip/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch b/skip/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch new file mode 100644 index 0000000..30cb66f --- /dev/null +++ b/skip/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch @@ -0,0 +1,24 @@ +Additions for build.rs by q66, necessary for our musl setup. + +From 1eb558f246269606c6d8d73824ef6b44fa10764e Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sat, 9 Sep 2017 00:14:16 -0500 +Subject: [PATCH 06/16] Prefer libgcc_eh over libunwind for musl + +--- + src/libunwind/lib.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/libunwind/lib.rs b/src/libunwind/lib.rs +index 9182e349b19..0377fbb58fc 100644 +--- a/library/unwind/src/lib.rs ++++ b/library/unwind/src/lib.rs +@@ -51,7 +51,7 @@ + #[link(name = "unwind", cfg(not(target_feature = "crt-static")))] + extern "C" {} + } else { +- #[link(name = "unwind", kind = "static", modifiers = "-bundle", cfg(target_feature = "crt-static"))] ++ #[link(name = "gcc_eh", cfg(target_feature = "crt-static"))] + #[link(name = "gcc_s", cfg(not(target_feature = "crt-static")))] + extern "C" {} + } diff --git a/skip/rust/0007-do-not-install-libunwind-source.patch b/skip/rust/0007-do-not-install-libunwind-source.patch new file mode 100644 index 0000000..e8ff8b7 --- /dev/null +++ b/skip/rust/0007-do-not-install-libunwind-source.patch @@ -0,0 +1,19 @@ +From: Dominic Meiser +Date: Tue, 22 Dec 2020 23:31:28 +0100 +Subject: [PATCH] Do not install libunwind source + +This was added in rustc 1.48, but is incompatible with the Alpine Linux package since it removes all bundled +dependencies prior to building. + +diff -Naur rustc-1.48.0-src.orig/src/bootstrap/dist.rs rustc-1.48.0-src/src/bootstrap/dist.rs +--- rustc-1.48.0-src.orig/src/bootstrap/dist.rs 2020-12-22 16:39:30.504249113 +0100 ++++ rustc-1.48.0-src/src/bootstrap/dist.rs 2020-12-22 16:42:08.663006830 +0100 +@@ -1016,7 +1016,7 @@ + copy_src_dirs( + builder, + &builder.src, +- &["library", "src/llvm-project/libunwind"], ++ &["library"], + &[ + // not needed and contains symlinks which rustup currently + // chokes on when unpacking. diff --git a/skip/rust/alpine-move-py-scripts-to-share.patch b/skip/rust/alpine-move-py-scripts-to-share.patch new file mode 100644 index 0000000..21be36f --- /dev/null +++ b/skip/rust/alpine-move-py-scripts-to-share.patch @@ -0,0 +1,23 @@ +--- a/src/etc/rust-gdb ++++ b/src/etc/rust-gdb +@@ -12,7 +12,7 @@ + + # Find out where the pretty printer Python module is + RUSTC_SYSROOT="$("$RUSTC" --print=sysroot)" +-GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc" ++GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/share/rust/etc" + + # Run GDB with the additional arguments that load the pretty printers + # Set the environment variable `RUST_GDB` to overwrite the call to a + # Set the environment variable `RUST_GDB` to overwrite the call to a +--- a/src/etc/rust-lldb ++++ b/src/etc/rust-lldb +@@ -8,7 +8,7 @@ + + # Find out where to look for the pretty printer Python module + RUSTC_SYSROOT=$(rustc --print sysroot) +-RUST_LLDB="$RUSTC_SYSROOT/lib/rustlib/$host/bin/lldb" ++RUST_LLDB="$RUSTC_SYSROOT/share/rust/etc" + + lldb=lldb + if [ -f "$RUST_LLDB" ]; then diff --git a/skip/rust/alpine-target.patch b/skip/rust/alpine-target.patch new file mode 100644 index 0000000..2392cdd --- /dev/null +++ b/skip/rust/alpine-target.patch @@ -0,0 +1,191 @@ +From: Shiz +Updated by Rasmus Thomsen on 28th of July 2019 +Updated again by Ariadne Conill on 31 October 2020 +Date: Thu, 20 Aug 2017 01:52:36 +0200 +Last-Updated: Sat, 28 Oct 2017 20:23:00 +0200 +Subject: [PATCH] Add Alpine targets + +This adds `$arch-alpine-linux-musl` targets to Rust to encode our toolchain +and distribution-specific quirks instead of polluting the main musl target of +`$arch-unknown-linux-musl`. + +--- /dev/null ++++ rustc-1.48.0-src/compiler/rustc_target/src/spec/aarch64_alpine_linux_musl.rs +@@ -0,0 +1,13 @@ ++use crate::spec::Target; ++ ++pub fn target() -> Target { ++ let mut base = super::aarch64_unknown_linux_musl::target(); ++ ++ base.llvm_target = "aarch64-alpine-linux-musl".to_string(); ++ base.options.vendor = "alpine".to_string(); ++ base.options.crt_static_default = false; ++ base.options.static_position_independent_executables = true; ++ base.options.need_rpath = true; ++ ++ base ++} +--- /dev/null ++++ rustc-1.48.0-src/compiler/rustc_target/src/spec/armv6_alpine_linux_musleabihf.rs +@@ -0,0 +1,13 @@ ++use crate::spec::Target; ++ ++pub fn target() -> Target { ++ let mut base = super::arm_unknown_linux_musleabihf::target(); ++ ++ base.llvm_target = "armv6-alpine-linux-musleabihf".to_string(); ++ base.options.vendor = "alpine".to_string(); ++ base.options.crt_static_default = false; ++ base.options.static_position_independent_executables = true; ++ base.options.need_rpath = true; ++ ++ base ++} +--- /dev/null ++++ rustc-1.48.0-src/compiler/rustc_target/src/spec/armv7_alpine_linux_musleabihf.rs +@@ -0,0 +1,13 @@ ++use crate::spec::Target; ++ ++pub fn target() -> Target { ++ let mut base = super::armv7_unknown_linux_musleabihf::target(); ++ ++ base.llvm_target = "armv7-alpine-linux-musleabihf".to_string(); ++ base.options.vendor = "alpine".to_string(); ++ base.options.crt_static_default = false; ++ base.options.static_position_independent_executables = true; ++ base.options.need_rpath = true; ++ ++ base ++} +--- /dev/null ++++ rustc-1.48.0-src/compiler/rustc_target/src/spec/i586_alpine_linux_musl.rs +@@ -0,0 +1,14 @@ ++use crate::spec::Target; ++ ++pub fn target() -> Target { ++ let mut base = super::i686_unknown_linux_musl::target(); ++ ++ base.options.cpu = "pentium4".to_string(); ++ base.llvm_target = "i586-alpine-linux-musl".to_string(); ++ base.options.vendor = "alpine".to_string(); ++ base.options.crt_static_default = false; ++ base.options.static_position_independent_executables = true; ++ base.options.need_rpath = true; ++ ++ base ++} +--- rustc-1.48.0-src.orig/compiler/rustc_target/src/spec/mod.rs ++++ rustc-1.48.0-src/compiler/rustc_target/src/spec/mod.rs +@@ -490,6 +490,16 @@ + } + + supported_targets! { ++ ("i586-alpine-linux-musl", i586_alpine_linux_musl), ++ ("x86_64-alpine-linux-musl", x86_64_alpine_linux_musl), ++ ("aarch64-alpine-linux-musl", aarch64_alpine_linux_musl), ++ ("armv6-alpine-linux-musleabihf", armv6_alpine_linux_musleabihf), ++ ("armv7-alpine-linux-musleabihf", armv7_alpine_linux_musleabihf), ++ ("powerpc-alpine-linux-musl", powerpc_alpine_linux_musl), ++ ("powerpc64-alpine-linux-musl", powerpc64_alpine_linux_musl), ++ ("powerpc64le-alpine-linux-musl", powerpc64le_alpine_linux_musl), ++ ("s390x-alpine-linux-musl", s390x_alpine_linux_musl), ++ ("riscv64-alpine-linux-musl", riscv64_alpine_linux_musl), + ("x86_64-unknown-linux-gnu", x86_64_unknown_linux_gnu), + ("x86_64-unknown-linux-gnux32", x86_64_unknown_linux_gnux32), + ("i686-unknown-linux-gnu", i686_unknown_linux_gnu), +--- /dev/null ++++ rustc-1.48.0-src/compiler/rustc_target/src/spec/powerpc64_alpine_linux_musl.rs +@@ -0,0 +1,13 @@ ++use crate::spec::Target; ++ ++pub fn target() -> Target { ++ let mut base = super::powerpc64_unknown_linux_musl::target(); ++ ++ base.llvm_target = "powerpc64-alpine-linux-musl".to_string(); ++ base.options.vendor = "alpine".to_string(); ++ base.options.crt_static_default = false; ++ base.options.static_position_independent_executables = true; ++ base.options.need_rpath = true; ++ ++ base ++} +--- /dev/null ++++ rustc-1.48.0-src/compiler/rustc_target/src/spec/powerpc64le_alpine_linux_musl.rs +@@ -0,0 +1,13 @@ ++use crate::spec::Target; ++ ++pub fn target() -> Target { ++ let mut base = super::powerpc64le_unknown_linux_musl::target(); ++ ++ base.llvm_target = "powerpc64le-alpine-linux-musl".to_string(); ++ base.options.vendor = "alpine".to_string(); ++ base.options.crt_static_default = false; ++ base.options.static_position_independent_executables = true; ++ base.options.need_rpath = true; ++ ++ base ++} +--- /dev/null ++++ rustc-1.48.0-src/compiler/rustc_target/src/spec/powerpc_alpine_linux_musl.rs +@@ -0,0 +1,13 @@ ++use crate::spec::Target; ++ ++pub fn target() -> Target { ++ let mut base = super::powerpc_unknown_linux_musl::target(); ++ ++ base.llvm_target = "powerpc-alpine-linux-musl".to_string(); ++ base.options.vendor = "alpine".to_string(); ++ base.options.crt_static_default = false; ++ base.options.static_position_independent_executables = true; ++ base.options.need_rpath = true; ++ ++ base ++} +--- /dev/null ++++ rustc-1.48.0-src/compiler/rustc_target/src/spec/s390x_alpine_linux_musl.rs +@@ -0,0 +1,13 @@ ++use crate::spec::Target; ++ ++pub fn target() -> Target { ++ let mut base = super::s390x_unknown_linux_musl::target(); ++ ++ base.llvm_target = "s390x-alpine-linux-musl".to_string(); ++ base.options.vendor = "alpine".to_string(); ++ base.options.crt_static_default = false; ++ base.options.static_position_independent_executables = true; ++ base.options.need_rpath = true; ++ ++ base ++} +--- /dev/null ++++ rustc-1.48.0-src/compiler/rustc_target/src/spec/x86_64_alpine_linux_musl.rs +@@ -0,0 +1,13 @@ ++use crate::spec::Target; ++ ++pub fn target() -> Target { ++ let mut base = super::x86_64_unknown_linux_musl::target(); ++ ++ base.llvm_target = "x86_64-alpine-linux-musl".to_string(); ++ base.options.vendor = "alpine".to_string(); ++ base.options.crt_static_default = false; ++ base.options.static_position_independent_executables = true; ++ base.options.need_rpath = true; ++ ++ base ++} +--- /dev/null ++++ rustc-1.52.1-src/compiler/rustc_target/src/spec/riscv64_alpine_linux_musl.rs +@@ -0,0 +1,13 @@ ++use crate::spec::Target; ++ ++pub fn target() -> Target { ++ let mut base = super::riscv64gc_unknown_linux_musl::target(); ++ ++ base.llvm_target = "riscv64-alpine-linux-musl".to_string(); ++ base.options.vendor = "alpine".to_string(); ++ base.options.crt_static_default = false; ++ base.options.static_position_independent_executables = true; ++ base.options.need_rpath = true; ++ ++ base ++} diff --git a/skip/rust/cargo.xibuild b/skip/rust/cargo.xibuild new file mode 100644 index 0000000..8a9f47e --- /dev/null +++ b/skip/rust/cargo.xibuild @@ -0,0 +1,8 @@ +#!/bin/sh + +DEPS="rust" +DESC="Rust package manager" + +package () { + add_from_main "usr/bin/cargo" +} diff --git a/skip/rust/check-rustc b/skip/rust/check-rustc new file mode 100644 index 0000000..d4b85be --- /dev/null +++ b/skip/rust/check-rustc @@ -0,0 +1,109 @@ +#!/bin/sh +# vim: set ts=4: +set -eu + +RUSTC="$1" +TMPDIR="$(pwd)/.tmp-${0##*/}-$RANDOM" +failed=0 + +unset RUST_BACKTRACE +unset RUSTC_CRT_STATIC + + +_rustc() { + printf '\n$ rustc %s\n' "$*" + "$RUSTC" "$@" +} + +die() { + printf '\033[1;31mERROR:\033[0m %s\n' "$1" >&2 # bold red + exit 1 +} + +fail() { + printf '\033[1;31mFAIL:\033[0m %s\n' "$1" >&2 # bold red + failed=$(( failed + 1 )) +} + +assert_dynamic() { + readelf -l "$1" | grep -Fqw INTERP \ + && readelf -d "$1" | grep -Fqw NEEDED || { + fail "$1 is not a dynamic executable!" + readelf -ld "$1" + } +} + +assert_ok() { + "$1" || fail "$1 exited with status $?" +} + +assert_panic() { + local status=0 + "$1" || status=$? && [ "$status" = 101 ] \ + || fail "$1 exited with status $status, but expected 101" +} + +assert_pie() { + readelf -d "$1" | grep -Fw FLAGS_1 | grep -Fqw PIE || { + fail "$1 is not a PIE executable!" + readelf -d "$1" + } +} + +assert_static() { + test -f "$1" \ + && ! readelf -l "$1" | grep -Fqw INTERP \ + && ! readelf -d "$1" | grep -Fqw NEEDED || { + fail "$1 is not a static executable!" + readelf -ld "$1" + } +} + + +#-------------------- M a i n -------------------- + +test -d "$TMPDIR" && die "$TMPDIR already exists!" +mkdir -p "$TMPDIR" +trap "rm -R '$TMPDIR'" EXIT + +cd "$TMPDIR" + +cat >> hello_world.rs <<-EOF + fn main() { + println!("Hello, world!"); + } +EOF + +_rustc hello_world.rs +assert_ok ./hello_world +assert_dynamic hello_world +assert_pie hello_world +rm -f hello_world + +_rustc -C target-feature=-crt-static hello_world.rs +assert_ok ./hello_world +assert_dynamic hello_world +assert_pie hello_world +rm -f hello_world + +_rustc -C target-feature=+crt-static hello_world.rs +assert_ok ./hello_world +assert_static hello_world +assert_pie hello_world +rm -f hello_world + + +cat >> panic.rs <<-EOF + fn main() { + panic!("This should panic"); + } +EOF + +_rustc -C target-feature=-crt-static panic.rs +assert_panic ./panic + +_rustc -C target-feature=+crt-static panic.rs +assert_panic ./panic + + +[ "$failed" -eq 0 ] || die "$failed assertion(s) has failed" diff --git a/skip/rust/install-template-shebang.patch b/skip/rust/install-template-shebang.patch new file mode 100644 index 0000000..e81b579 --- /dev/null +++ b/skip/rust/install-template-shebang.patch @@ -0,0 +1,10 @@ +The script seems to be POSIX-sh (+ local) compatible. + +--- a/src/tools/rust-installer/install-template.sh ++++ b/src/tools/rust-installer/install-template.sh +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + # Copyright 2014 The Rust Project Developers. See the COPYRIGHT + # file at the top-level directory of this distribution and at + # http://rust-lang.org/COPYRIGHT. diff --git a/skip/rust/link-musl-dynamically.patch b/skip/rust/link-musl-dynamically.patch new file mode 100644 index 0000000..55d02a3 --- /dev/null +++ b/skip/rust/link-musl-dynamically.patch @@ -0,0 +1,17 @@ +--- rustc-1.58.0-src.orig/vendor/libc/src/unix/mod.rs ++++ rustc-1.58.0-src/vendor/libc/src/unix/mod.rs +@@ -329,11 +329,11 @@ + #[link(name = "c", cfg(not(target_feature = "crt-static")))] + extern {} + } else if #[cfg(target_env = "musl")] { ++ #[link(name = "c")] ++ extern {} + #[cfg_attr(feature = "rustc-dep-of-std", +- link(name = "c", kind = "static", modifiers = "-bundle", ++ link(name = "gcc", kind = "static", modifiers = "-bundle", + cfg(target_feature = "crt-static")))] +- #[cfg_attr(feature = "rustc-dep-of-std", +- link(name = "c", cfg(not(target_feature = "crt-static"))))] + extern {} + } else if #[cfg(target_os = "emscripten")] { + #[link(name = "c")] diff --git a/skip/rust/musl-fix-linux_musl_base.patch b/skip/rust/musl-fix-linux_musl_base.patch new file mode 100644 index 0000000..1771ffe --- /dev/null +++ b/skip/rust/musl-fix-linux_musl_base.patch @@ -0,0 +1,23 @@ +From: Jakub Jirutka +Date: Sat, 08 Aug 2016 15:06:00 +0200 +Subject: [PATCH] Fix linux_musl_base for native musl host + +See https://github.com/rust-lang/rust/pull/40113 + +--- a/compiler/rustc_target/src/spec/linux_musl_base.rs ++++ b/compiler/rustc_target/src/spec/linux_musl_base.rs +@@ -5,12 +5,9 @@ + let mut base = super::linux_base::opts(); + + base.env = "musl".to_string(); +- base.pre_link_objects_fallback = crt_objects::pre_musl_fallback(); +- base.post_link_objects_fallback = crt_objects::post_musl_fallback(); +- base.crt_objects_fallback = Some(CrtObjectsFallback::Musl); + + // These targets statically link libc by default +- base.crt_static_default = true; ++ base.crt_static_default = false; + + base + } + diff --git a/skip/rust/need-rpath.patch b/skip/rust/need-rpath.patch new file mode 100644 index 0000000..5ab8377 --- /dev/null +++ b/skip/rust/need-rpath.patch @@ -0,0 +1,62 @@ +From: Shiz +Date: Thu, 20 Aug 2017 01:48:22 +0200 +Subject: [PATCH] Add need_rpath target option to force RPATH generation + +This adds a `need_rpath` option to the target options in order to implicitly +have the equivalent of `-C rpath` specified by default for final products +(executables and dynamic libraries), so that RPATHs are always added. + +We have to skip this step in the bootstrap phase as it does its own manual +RPATH additions, but unfortunately there's no clean way to detect this. +As such, we have to resort to checking the `RUSTC_BOOTSTRAP` variable. +Hacky hacky! + +--- a/compiler/rustc_target/src/spec/mod.rs ++++ b/compiler/rustc_target/src/spec/mod.rs +@@ -379,6 +379,8 @@ + pub allows_weak_linkage: bool, + /// Whether the linker support rpaths or not. Defaults to false. + pub has_rpath: bool, ++ /// Whether to force rpath support on by default. Defaults to false. ++ pub need_rpath: bool, + /// Whether to disable linking to the default libraries, typically corresponds + /// to `-nodefaultlibs`. Defaults to true. + pub no_default_libraries: bool, +@@ -519,6 +519,7 @@ + linker_is_gnu: false, + allows_weak_linkage: true, + has_rpath: false, ++ need_rpath: false, + no_default_libraries: true, + position_independent_executables: false, + static_position_independent_executables: false, +@@ -776,6 +776,7 @@ + key!(linker_is_gnu, bool); + key!(allows_weak_linkage, bool); + key!(has_rpath, bool); ++ key!(need_rpath, bool); + key!(no_default_libraries, bool); + key!(position_independent_executables, bool); + key!(static_position_independent_executables, bool); +@@ -980,6 +980,7 @@ + target_option_val!(linker_is_gnu); + target_option_val!(allows_weak_linkage); + target_option_val!(has_rpath); ++ target_option_val!(need_rpath); + target_option_val!(no_default_libraries); + target_option_val!(position_independent_executables); + target_option_val!(static_position_independent_executables); +--- a/compiler/rustc_codegen_ssa/src/back/link.rs.orig ++++ b/compiler/rustc_codegen_ssa/src/back/link.rs +@@ -1675,7 +1675,10 @@ + // FIXME (#2397): At some point we want to rpath our guesses as to + // where extern libraries might live, based on the + // add_lib_search_paths +- if sess.opts.cg.rpath { ++ // XXX: hacky hacky ++ let bootstrap = env::var("RUSTC_BOOTSTRAP").is_ok(); ++ if !bootstrap && !sess.crt_static(None) && ++ (sess.opts.cg.rpath || sess.target.options.need_rpath) { + let libs = codegen_results + .crate_info + .used_crates diff --git a/skip/rust/need-ssp_nonshared.patch b/skip/rust/need-ssp_nonshared.patch new file mode 100644 index 0000000..f1adf20 --- /dev/null +++ b/skip/rust/need-ssp_nonshared.patch @@ -0,0 +1,13 @@ +--- a/library/std/src/sys/unix/mod.rs.orig 2021-02-11 18:34:14.479832268 +0100 ++++ b/library/std/src/sys/unix/mod.rs 2021-02-11 18:38:28.078987749 +0100 +@@ -243,6 +243,9 @@ + #[link(name = "log")] + #[link(name = "gcc")] + extern "C" {} ++ } else if #[cfg(all(target_os = "linux", target_env = "musl"))] { ++ #[link(name = "ssp_nonshared")] ++ extern "C" {} + } else if #[cfg(target_os = "freebsd")] { + #[link(name = "execinfo")] + #[link(name = "pthread")] + diff --git a/skip/rust/rust.xibuild b/skip/rust/rust.xibuild new file mode 100644 index 0000000..1fb6930 --- /dev/null +++ b/skip/rust/rust.xibuild @@ -0,0 +1,77 @@ +#!/bin/sh + +MAKEDEPS="cmake libclang clang llvm curl" +DEPS="libssh2 openssl" + +PKG_VER=1.63.0 +SOURCE=https://static.rust-lang.org/dist/rustc-$PKG_VER-src.tar.gz +DESC="Systems programming language focused on safety, speed and concurrency" + +ADDITIONAL=" + 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch + 0007-do-not-install-libunwind-source.patch + install-template-shebang.patch + link-musl-dynamically.patch + musl-fix-linux_musl_base.patch + need-rpath.patch + need-ssp_nonshared.patch +" + +prepare () { + apply_patches + sed -i /LD_LIBRARY_PATH/d src/bootstrap/bootstrap.py + sed -i 's/\("files":{\)[^}]*/\1/' vendor/libc/.cargo-checksum.json +} + +build () { + export CFLAGS="$CFLAGS -fPIE" + export CXXFLAGS="$CFLAGS" + target=x86_64-unknown-linux-musl + build=x86_64-unknown-linux-musl + ./configure \ + --build="$build" \ + --host="$target" \ + --target="$target" \ + --prefix="/usr" \ + --release-channel="stable" \ + --llvm-root="/usr/lib/" \ + --disable-docs \ + --enable-extended \ + --tools="analysis,cargo,src,rustfmt" \ + --enable-llvm-link-shared \ + --enable-option-checking \ + --enable-locked-deps \ + --enable-vendor \ + --set="rust.musl-root=/usr" \ + --set="rust.codegen-units=1" \ + --set="rust.codegen-units-std=1" \ + --set="rust.parallel-compiler=true" \ + --set="target.$target.llvm-config=/usr/bin/llvm-config" \ + --set="target.$target.musl-root=/usr" \ + --set="target.$target.crt-static=false" \ + --set="target.$target.cc=gcc" \ + --set="target.$target.cxx=g++" \ + --set="target.$target.ar=ar" \ + --set="target.$target.linker=gcc" \ + --set="target.$build.musl-root=/usr" \ + --set="target.$build.crt-static=false" \ + --set="target.$build.cc=gcc" \ + --set="target.$build.cxx=g++" \ + --set="target.$build.ar=ar" \ + --set="target.$build.linker=gcc" \ + + sed 's/#deny-warnings = .*/deny-warnings = false/' -i config.toml + sed 's|deny(warnings,|deny(|' -i src/bootstrap/lib.rs + + python ./x.py dist -v --jobs $JOBS + +} + +package () { + export LIBSSH2_SYS_USE_PKG_CONFIG=1 && + DESTDIR=${PWD}/install python3 ./x.py install && + unset LIBSSH2_SYS_USE_PKG_CONFIG + + chown -R root:root install && + cp -a install/* $PKG_DEST +} diff --git a/skip/zynaddsubfx/cmake-build-type-none.patch b/skip/zynaddsubfx/cmake-build-type-none.patch index 74e64a7..b60a428 100644 --- a/skip/zynaddsubfx/cmake-build-type-none.patch +++ b/skip/zynaddsubfx/cmake-build-type-none.patch @@ -10,38 +10,3 @@ Index: src/CMakeLists.txt set (BuildOptions_x86_64AMD -@@ -321,34 +320,6 @@ if(NOT AVOID_ASM) - add_definitions(-DASM_F2I_YES) - endif() - --if (BuildForDebug) -- set (CMAKE_BUILD_TYPE "Debug") -- set (CMAKE_CXX_FLAGS_DEBUG ${BuildOptionsDebug}) -- message (STATUS "Building for ${CMAKE_BUILD_TYPE}, flags: ${CMAKE_CXX_FLAGS_DEBUG}") --else (BuildForDebug) -- set (CMAKE_BUILD_TYPE "Release") -- -- set (CMAKE_CXX_FLAGS_RELEASE ${BuildOptionsBasic}) -- -- if (BuildForAMD_X86_64) -- set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${BuildOptions_x86_64AMD}") -- endif (BuildForAMD_X86_64) -- -- if (BuildForCore2_X86_64) -- set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${BuildOptions_X86_64Core2}") -- endif (BuildForCore2_X86_64) -- -- if (SUPPORT_SSE) -- set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${BuildOptions_SSE}") -- endif (SUPPORT_SSE) -- -- if (SUPPORT_NEON AND NOT NoNeonPlease) -- set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${BuildOptions_NEON}") -- endif (SUPPORT_NEON AND NOT NoNeonPlease) -- -- message (STATUS "Building for ${CMAKE_BUILD_TYPE}, flags: ${CMAKE_CXX_FLAGS_RELEASE}") --endif (BuildForDebug) -- - if(NOT (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")) - add_definitions(-fPIC) - endif() diff --git a/skip/zynaddsubfx/zynaddsubfx.xibuild b/skip/zynaddsubfx/zynaddsubfx.xibuild index 228806b..61b3324 100644 --- a/skip/zynaddsubfx/zynaddsubfx.xibuild +++ b/skip/zynaddsubfx/zynaddsubfx.xibuild @@ -1,21 +1,22 @@ #!/bin/sh NAME="zynaddsubfx" -DESC="Opensource software synthesizer capable of making a countless number of instruments." +DESC="fully featured open source software synthesizer" -MAKEDEPS="cmake jack fltk portaudio mxml sndio bash-completion liblo libxpm" -DEPS="less " +MAKEDEPS="cmake pkg-config zlib mxml ntk libx11 liblo fftw libxpm pulseaudio jack alsa-lib doxygen fltk " -PKG_VER=3.0.5 -SOURCE="https://downloads.sourceforge.net/project/zynaddsubfx/zynaddsubfx/$PKG_VER/zynaddsubfx-$PKG_VER.tar.bz2" +PKG_VER=3.0.6 +SOURCE="git://git.code.sf.net/p/zynaddsubfx/code/" ADDITIONAL=" cmake-build-type-none.patch fix-bogus-strstr.patch fix-memset.patch " + prepare () { + git submodule init + git submodule update apply_patches - sed -e '/-DASM_F2I_YES/d' -i src/CMakeLists.txt sed -e 's/COMMAND.*lv2-ttl-generator/COMMAND lv2-ttl-generator/g' -i \ src/Plugin/AlienWah/CMakeLists.txt \ @@ -37,15 +38,12 @@ prepare () { build () { cmake -B build \ -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DDefaultOutput=jack \ - -DDefaultInput=jack \ - -DGuiModule=fltk - cmake --build build && - make -C ExternalPrograms/Spliter && - make -C ExternalPrograms/Controller + -DCMAKE_INSTALL_LIBDIR=/usr/lib \ + -DGuiModule=ntk + cmake --build build } + package () { DESTDIR="$PKG_DEST" cmake --install build } -- cgit v1.2.1