pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Clean imported pkgs and update Makefile



Module Name:	pkgsrc-wip
Committed By:	pin <voidpin%protonmail.com@localhost>
Pushed By:	pin
Date:		Mon Nov 20 08:36:54 2023 +0100
Changeset:	32763e1f1dbe3d108778ca97c23196b7e7cd238a

Modified Files:
	Makefile
Removed Files:
	qemacs/DESCR
	qemacs/Makefile
	qemacs/PLIST
	qemacs/distinfo
	qemacs/options.mk
	qemacs/patches/patch-configure
	qemacs/patches/patch-cutils.h
	qemacs/patches/patch-tty.c
	rust173-bin/DESCR
	rust173-bin/Makefile
	rust173-bin/buildlink3.mk
	rust173-bin/distinfo
	rust173-bin/files/install.sh

Log Message:
Clean imported pkgs and update Makefile

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=32763e1f1dbe3d108778ca97c23196b7e7cd238a

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                       |   3 +-
 qemacs/DESCR                   |  12 -
 qemacs/Makefile                |  21 -
 qemacs/PLIST                   |   7 -
 qemacs/distinfo                |   8 -
 qemacs/options.mk              |  25 --
 qemacs/patches/patch-configure |  22 -
 qemacs/patches/patch-cutils.h  |  23 -
 qemacs/patches/patch-tty.c     |  15 -
 rust173-bin/DESCR              |  17 -
 rust173-bin/Makefile           | 283 ------------
 rust173-bin/buildlink3.mk      |  13 -
 rust173-bin/distinfo           |  56 ---
 rust173-bin/files/install.sh   | 971 -----------------------------------------
 14 files changed, 1 insertion(+), 1475 deletions(-)

diffs:
diff --git a/Makefile b/Makefile
index 9b40fef54a..294dd1b04f 100644
--- a/Makefile
+++ b/Makefile
@@ -4749,7 +4749,6 @@ SUBDIR+=	q-dns
 SUBDIR+=	q2pro
 SUBDIR+=	qbe-git
 SUBDIR+=	qcdloop
-SUBDIR+=	qemacs
 SUBDIR+=	qemu-git
 SUBDIR+=	qemu-virtfs-netbsd
 SUBDIR+=	qico
@@ -4962,7 +4961,7 @@ SUBDIR+=	runcpm
 SUBDIR+=	rust-analyzer
 SUBDIR+=	rust-synapse-compress-state
 SUBDIR+=	rust174
-SUBDIR+=	rust173-bin
+SUBDIR+=	rust174-bin
 SUBDIR+=	s2tc
 SUBDIR+=	s3cmd
 SUBDIR+=	s3funnel
diff --git a/qemacs/DESCR b/qemacs/DESCR
deleted file mode 100644
index b0a94a74c0..0000000000
--- a/qemacs/DESCR
+++ /dev/null
@@ -1,12 +0,0 @@
-qemacs - small but powerful UNIX editor with many features
-that even big editors lack.
-
-QEmacs is a text editor targeted at embedded systems or debugging.
-Although it is very small, it has some very interesting features
-that even big editors lack such as an Emacs look and feel with all
-common Emacs features, can edit huge files, has full Unicode support,
-has various syntax modes for common programming langauges, a shell
-mode with full color VT100 terminal emulation, input methods for
-most languages (including Chinese), binary and hexadecimal in place
-editing mode, no termcap requirement, X11 support, and PNG/bitmap
-support.
diff --git a/qemacs/Makefile b/qemacs/Makefile
deleted file mode 100644
index bcb01b3f18..0000000000
--- a/qemacs/Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-# $NetBSD$
-
-DISTNAME=	qemacs-6.1.1b
-CATEGORIES=	editors
-MASTER_SITES=	${MASTER_SITE_GITHUB:=qemacs/}
-GITHUB_TAG=	06b3d373bbcc52b51ccb438bf3cab38a49492ff0
-GITHUB_TYPE=	tag
-
-MAINTAINER=	kevin.bloom%posteo.net@localhost
-HOMEPAGE=	https://github.com/qemacs/qemacs/
-COMMENT=	Quick Emacs
-LICENSE=	mit
-
-HAS_CONFIGURE=		yes
-CONFIGURE_ARGS+=	--prefix=${PREFIX}
-CONFIGURE_ARGS+=	--enable-plugins
-USE_TOOLS+=		gmake
-
-.include "options.mk"
-
-.include "../../mk/bsd.pkg.mk"
diff --git a/qemacs/PLIST b/qemacs/PLIST
deleted file mode 100644
index b8b529cfe1..0000000000
--- a/qemacs/PLIST
+++ /dev/null
@@ -1,7 +0,0 @@
-@comment $NetBSD$
-${PLIST.html}bin/html2png
-bin/qe
-bin/qemacs
-man/man1/qe.1
-share/qe/kmaps
-share/qe/ligatures
diff --git a/qemacs/distinfo b/qemacs/distinfo
deleted file mode 100644
index e2047364fa..0000000000
--- a/qemacs/distinfo
+++ /dev/null
@@ -1,8 +0,0 @@
-$NetBSD$
-
-BLAKE2s (qemacs-6.1.1b-06b3d373bbcc52b51ccb438bf3cab38a49492ff0.tar.gz) = e2f93e3d2baf0e0e65a7e4a4c884b79cdad069f75bfd84f4d700bba8f6073b47
-SHA512 (qemacs-6.1.1b-06b3d373bbcc52b51ccb438bf3cab38a49492ff0.tar.gz) = a16ce78c703ceb734310225c16c36a3041bf5e7b14eaf7ba3322deacd04e9f099b75fd07471b8f3d75b043689655600cfa8a651d7edf6318fe750fddb6479218
-Size (qemacs-6.1.1b-06b3d373bbcc52b51ccb438bf3cab38a49492ff0.tar.gz) = 2106879 bytes
-SHA1 (patch-configure) = 3293b811e138b468fec6621d27745dd5897c0455
-SHA1 (patch-cutils.h) = 9bc6e83e388a23df420232ebad3c8e55a17adc1d
-SHA1 (patch-tty.c) = 8117e459a07b6a2e72c0446dcea7950252c8de4d
diff --git a/qemacs/options.mk b/qemacs/options.mk
deleted file mode 100644
index 7817c5b426..0000000000
--- a/qemacs/options.mk
+++ /dev/null
@@ -1,25 +0,0 @@
-# $NetBSD$
-### Set options
-PKG_OPTIONS_VAR=	PKG_OPTIONS.qemacs
-PKG_SUPPORTED_OPTIONS=	x11
-PKG_SUGGESTED_OPTIONS=	x11
-
-PLIST_VARS+=	html
-
-.include "../../mk/bsd.options.mk"
-
-# maybe consider ffmpeg, xv and xshm support later
-
-###
-### Support x11
-###
-.if !empty(PKG_OPTIONS:Mx11)
-CONFIGURE_ARGS+=	--enable-x11
-CONFIGURE_ARGS+=	--enable-html
-CONFIGURE_ARGS+=	--enable-png
-PLIST.html=            yes
-.include "../../x11/libX11/buildlink3.mk"
-.include "../../graphics/png/buildlink3.mk"
-.else
-CONFIGURE_ARGS+=	--disable-x11
-.endif
diff --git a/qemacs/patches/patch-configure b/qemacs/patches/patch-configure
deleted file mode 100644
index b3e7459414..0000000000
--- a/qemacs/patches/patch-configure
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD$
-
-Added NetBSD support. The main reason for this is that it prevents
-DLLIBS from getting set to "-ldl" in the Makefile.
-
---- configure.orig	2023-03-09 11:57:59.000000000 +0000
-+++ configure
-@@ -115,6 +115,14 @@ case $targetos in
-     ptsname="no"
-     dllibs=
-     ;;
-+  NetBSD)
-+    extralibs="-lm"
-+    make="gmake"
-+    doc="no"
-+    plugins="no"
-+    ptsname="no"
-+    dllibs=
-+    ;;
-   FreeBSD)
-     extralibs="-lm"
-     make="gmake"
diff --git a/qemacs/patches/patch-cutils.h b/qemacs/patches/patch-cutils.h
deleted file mode 100644
index e80baf4240..0000000000
--- a/qemacs/patches/patch-cutils.h
+++ /dev/null
@@ -1,23 +0,0 @@
-$NetBSD$
-
-Remove unused functions. These cause a compiler error on NetBSD
-but don't have an issue on Darwin or Linux.
-
---- cutils.h.orig	2023-03-09 11:57:59.000000000 +0000
-+++ cutils.h
-@@ -394,6 +394,7 @@ static inline void put_u8(uint8_t *tab, 
-     *tab = val;
- }
- 
-+#ifndef __NetBSD__
- static inline uint16_t bswap16(uint16_t x)
- {
-     return (x >> 8) | (x << 8);
-@@ -416,6 +417,7 @@ static inline uint64_t bswap64(uint64_t 
-         ((v & ((uint64_t)0xff << (1 * 8))) << (5 * 8)) |
-         ((v & ((uint64_t)0xff << (0 * 8))) << (7 * 8));
- }
-+#endif
- 
- /* XXX: should take an extra argument to pass slack information to the caller */
- typedef void *DynBufReallocFunc(void *opaque, void *ptr, size_t size);
diff --git a/qemacs/patches/patch-tty.c b/qemacs/patches/patch-tty.c
deleted file mode 100644
index 8394cdaa12..0000000000
--- a/qemacs/patches/patch-tty.c
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Use fwrite on NetBSD as well.
-
---- tty.c.orig	2023-03-09 11:57:59.000000000 +0000
-+++ tty.c
-@@ -87,7 +87,7 @@ typedef uint32_t TTYChar;
- 
- #if defined(CONFIG_UNLOCKIO)
- #  define TTY_PUTC(c,f)         putc_unlocked(c, f)
--#ifdef CONFIG_DARWIN
-+#if defined(CONFIG_DARWIN) || defined(__NetBSD__)
- #  define TTY_FWRITE(b,s,n,f)   fwrite(b, s, n, f)
- #else
- #  define TTY_FWRITE(b,s,n,f)   fwrite_unlocked(b, s, n, f)
diff --git a/rust173-bin/DESCR b/rust173-bin/DESCR
deleted file mode 100644
index 5c709044ce..0000000000
--- a/rust173-bin/DESCR
+++ /dev/null
@@ -1,17 +0,0 @@
-Rust is a systems programming language focused on three goals: safety,
-speed, and concurrency.  It maintains these goals without having a
-garbage collector, making it a useful language for a number of use cases
-other languages aren't good at: embedding in other languages, programs
-with specific space and time requirements, and writing low-level code,
-like device drivers and operating systems.
-
-It improves on current languages targeting this space by having a number
-of compile-time safety checks that produce no runtime overhead, while
-eliminating all data races.  Rust also aims to achieve "zero-cost
-abstractions" even though some of these abstractions feel like those of
-a high-level language.  Even then, Rust still allows precise control
-like a low-level language would.
-
-This package installs a released binary, on architectures supported by
-upstream, or a TNF-built binary, on NetBSD versions not supported by
-upstream.
diff --git a/rust173-bin/Makefile b/rust173-bin/Makefile
deleted file mode 100644
index db9581ce78..0000000000
--- a/rust173-bin/Makefile
+++ /dev/null
@@ -1,283 +0,0 @@
-# $NetBSD: Makefile,v 1.55 2023/09/28 12:24:32 he Exp $
-
-DISTNAME=	rust-1.73.0
-PKGNAME=	${DISTNAME:S/rust/rust-bin/1}
-CATEGORIES=	lang
-MASTER_SITES=	https://static.rust-lang.org/dist/
-DIST_SUBDIR=	${PKGNAME}
-
-MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE=	https://rust-lang.org/
-COMMENT=	Safe, concurrent, practical language (pre-built distribution)
-LICENSE=	mit OR apache-2.0
-
-CONFLICTS+=	rust-[0-9]*
-
-# Rust upstream provided binaries
-ONLY_FOR_PLATFORM+=	Darwin-*-aarch64
-ONLY_FOR_PLATFORM+=	Darwin-*-x86_64
-ONLY_FOR_PLATFORM+=	FreeBSD-*-x86_64
-ONLY_FOR_PLATFORM+=	NetBSD-*-x86_64
-ONLY_FOR_PLATFORM+=	Linux-*-aarch64
-ONLY_FOR_PLATFORM+=	Linux-*-i386
-ONLY_FOR_PLATFORM+=	Linux-*-x86_64
-
-# he%NetBSD.org@localhost provided binaries
-ONLY_FOR_PLATFORM+=	NetBSD-*-aarch64
-ONLY_FOR_PLATFORM+=	NetBSD-*-aarch64eb
-ONLY_FOR_PLATFORM+=	NetBSD-*-earmv7hf
-ONLY_FOR_PLATFORM+=	NetBSD-*-earmv6hf
-ONLY_FOR_PLATFORM+=	NetBSD-*-i386
-ONLY_FOR_PLATFORM+=	NetBSD-*-powerpc
-ONLY_FOR_PLATFORM+=	NetBSD-*-sparc64
-ONLY_FOR_PLATFORM+=	NetBSD-*-mipsel
-ONLY_FOR_PLATFORM+=	NetBSD-*-riscv64
-
-NETBSD_REPO=	https://cdn.NetBSD.org/pub/pkgsrc/distfiles/LOCAL_PORTS/rust/
-
-CHECK_RELRO_SKIP+=	lib/rustlib/*/bin/*
-
-CHECK_SHLIBS_SKIP+=	bin/cargo-clippy
-CHECK_SHLIBS_SKIP+=	bin/rustfmt
-
-# Bootstraps built for 9.0.
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-earmv7hf
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-earmv6hf
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-powerpc
-
-# Binary distributions aren't built as PIE.
-MKPIE_SUPPORTED=	no
-
-NO_BUILD=	yes
-USE_TOOLS+=	bash pax
-WRKSRC=		${WRKDIR}/${DISTFILES:C/.tar.[gx]z//}
-
-GENERATE_PLIST+=	find ${DESTDIR}${PREFIX} \( -type f -o -type l \) -print | \
-			sed 's,${DESTDIR}${PREFIX}/,,' | ${SORT} ;
-
-INSTALLATION_DIRS=	bin ${PKGMANDIR} share/doc/cargo/bash_completion.d
-
-.include "../../mk/bsd.prefs.mk"
-
-.if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} < 080000
-BROKEN+=		"Bootstrap unavailable for old NetBSD version"
-.endif
-
-DISTFILES:=	# empty
-
-# Rust upstream provided binaries
-
-.if !empty(MACHINE_PLATFORM:MDarwin-*-aarch64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-apple-darwin
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MDarwin-*-x86_64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-apple-darwin
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MFreeBSD-*-x86_64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-freebsd
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MLinux-*-i386) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	i686-unknown-linux-gnu
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-aarch64) && !empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-unknown-linux-gnu
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-aarch64) && empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-unknown-linux-musl
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-x86_64) && !empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-linux-gnu
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-x86_64) && empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-linux-musl
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-netbsd
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-
-# NetBSD provided binaries:
-
-NBSUF=
-
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64eb) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64_be-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv6hf) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	armv6-unknown-netbsd-eabihf
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv7hf) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	armv7-unknown-netbsd-eabihf
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-i386) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	i586-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || make(distinfo) || make(makesum) || make(mdi)
-# Now only supports OS_VERSION >= 9.0
-RUST_ARCH:=	powerpc-unknown-netbsd90
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-sparc64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	sparc64-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-mipsel) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	mipsel-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-riscv64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	riscv64gc-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-
-# Binary still extracts to plain non-nb'ed directory
-WRKSRC:=	${WRKSRC:C/nb[0-9]*//}
-# Undo the powerpc netbsd90 thingie...
-WRKSRC:=	${WRKSRC:C/netbsd90/netbsd/}
-
-do-install:
-	cd ${.CURDIR}/files; pax -rw install.sh ${WRKSRC}
-	cd ${WRKSRC} && env PKGMANDIR=${PKGMANDIR} bash ./install.sh \
-	--destdir=${DESTDIR} --prefix=${PREFIX}
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/rust-llvm-dwp
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/install.log
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/manifest-*
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/uninstall.sh
-
-.if ${OPSYS} == "Darwin"
-.PHONY: fix-darwin-install-name
-post-install: fix-darwin-install-name
-fix-darwin-install-name:
-.  for bin in clippy-driver miri rls rustc rustdoc
-	otool -XL ${DESTDIR}${PREFIX}/bin/${bin}			\
-	    | ${GREP} '@rpath' | while read rpath rest; do		\
-		install_name_tool -change $$rpath			\
-		    `${ECHO} $$rpath | ${SED} -e 's,@rpath,${PREFIX}/lib,g'` \
-		    ${DESTDIR}${PREFIX}/bin/${bin};			\
-	done
-.  endfor
-.  for bin in lldb lldb-mi llvm-nm llvm-objcopy llvm-objdump 	\
-		llvm-profdata llvm-readobj llvm-size llvm-strip
-	otool -XL ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/${bin} \
-	    | ${GREP} '@rpath' | while read rpath rest; do		\
-		install_name_tool -change $$rpath			\
-		    `${ECHO} $$rpath | ${SED} -e 's,@rpath,${PREFIX}/lib/rustlib/${RUST_ARCH}/lib,g'` \
-		    ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/${bin}; \
-	done
-.  endfor
-.  for lib in lib lib/rustlib/${RUST_ARCH}/lib lib/rustlib/${RUST_ARCH}/codegen-backends
-	for f in ${DESTDIR}${PREFIX}/${lib}/lib*.dylib; do		\
-		[ ! -f $$f ] && continue;				\
-		install_name_tool -id `${ECHO} $$f | ${SED} -e 's,${DESTDIR},,g'` $$f; \
-		otool -XL $$f | grep '@rpath' | while read rpath rest; do \
-			install_name_tool -change $$rpath \
-			    `${ECHO} $$rpath | ${SED} -e 's,@rpath,${PREFIX}/lib,g'` \
-			    $$f;					\
-		done;							\
-	done
-.  endfor
-.else
-TOOL_DEPENDS+=		patchelf-[0-9]*:../../devel/patchelf
-
-# The llvm utilities may need a specific libstdc++ version from compat80
-.  if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} >= 090000
-.    if ${MACHINE_ARCH} != "aarch64" && ${MACHINE_ARCH} != "earmv7hf" && \
-        ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "earmv6hf" && \
-        ${MACHINE_ARCH} != "riscv64"
-DEPENDS+=		compat80-[0-9]*:../../emulators/compat80
-RUST_LLVM_RPATH=	${PREFIX}/emul/netbsd/usr/lib:${PREFIX}/lib
-FORCE_RPATH=
-.    else
-RUST_LLVM_RPATH=	${PREFIX}/lib
-.    endif
-.  else
-# ld.elf_so in NetBSD 8.x only obeys RPATH, not RUNPATH, so force RPATH there.
-RUST_LLVM_RPATH=	${PREFIX}/lib
-FORCE_RPATH=		--force-rpath
-.  endif
-
-.  if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || \
-      !empty(MACHINE_PLATFORM:MNetBSD-*-i386)
-.    include "../../devel/libatomic/buildlink3.mk"
-.  endif
-
-.PHONY: fix-relative-rpath
-post-install: fix-relative-rpath
-fix-relative-rpath:
-.  for bin in clippy-driver miri rls rustc rustdoc
-	if [ -f ${DESTDIR}${PREFIX}/bin/${bin} ]; then \
-		${PREFIX}/bin/patchelf ${FORCE_RPATH} --set-rpath \
-		    ${PREFIX}/lib ${DESTDIR}${PREFIX}/bin/${bin} ; \
-	fi
-.  endfor
-# Only Linux builds link these binaries against an LLVM library
-.  if ${OPSYS} == "Linux"
-.    for bin in llc llvm-ar llvm-as llvm-cov llvm-dis llvm-nm llvm-objcopy \
-	   llvm-objdump llvm-profdata llvm-readobj llvm-size llvm-strip opt \
-	   rust-lld
-	 ${PREFIX}/bin/patchelf ${FORCE_RPATH} --set-rpath ${RUST_LLVM_RPATH} \
-	   ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/${bin}
-.    endfor
-.  endif
-.  for lib in lib lib/rustlib/${RUST_ARCH}/lib \
-		lib/rustlib/${RUST_ARCH}/codegen-backends
-	for f in ${DESTDIR}${PREFIX}/${lib}/lib*.so; do			\
-		[ ! -f $$f ] && continue;				\
-		${PREFIX}/bin/patchelf ${FORCE_RPATH} --set-rpath ${PREFIX}/lib $$f;	\
-	done
-.  endfor
-.endif
-
-.include "../../mk/bsd.pkg.mk"
diff --git a/rust173-bin/buildlink3.mk b/rust173-bin/buildlink3.mk
deleted file mode 100644
index 1d6874ec86..0000000000
--- a/rust173-bin/buildlink3.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# $NetBSD: buildlink3.mk,v 1.2 2022/07/01 07:00:28 pin Exp $
-
-BUILDLINK_TREE+=	rust-bin
-
-.if !defined(RUST_BIN_BUILDLINK3_MK)
-RUST_BIN_BUILDLINK3_MK:=
-
-BUILDLINK_API_DEPENDS.rust-bin+=	rust-bin>=1.56.1
-BUILDLINK_PKGSRCDIR.rust-bin?=		../../lang/rust-bin
-BUILDLINK_PASSTHRU_DIRS+=		${PREFIX}/lib/rustlib
-.endif
-
-BUILDLINK_TREE+=	-rust-bin
diff --git a/rust173-bin/distinfo b/rust173-bin/distinfo
deleted file mode 100644
index c4c34e29b9..0000000000
--- a/rust173-bin/distinfo
+++ /dev/null
@@ -1,56 +0,0 @@
-$NetBSD: distinfo,v 1.29 2023/09/28 15:57:26 gdt Exp $
-
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-aarch64-apple-darwin.tar.gz) = 6d789c5a388ba8db0d1eb906187fc57415cfe7c91fc20a75f051f944d9efc2c6
-SHA512 (rust-bin-1.73.0/rust-1.73.0-aarch64-apple-darwin.tar.gz) = 6c7093851069584312228c39f7f2ec67739278afd776ba4194684ec27dd523676acf4d97bc7ae662e50f3d0d955c31f356502bf6cd5aebe4f76b0b89a3b202c3
-Size (rust-bin-1.73.0/rust-1.73.0-aarch64-apple-darwin.tar.gz) = 247463080 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-aarch64-unknown-linux-gnu.tar.gz) = 22c7c46ab484766a956e4381fe729b4489506cae60d272611739cc5c3422edd0
-SHA512 (rust-bin-1.73.0/rust-1.73.0-aarch64-unknown-linux-gnu.tar.gz) = 73e4d3dcce65067679ae94234184b784b2a43dcbcbd3bf4c1e3b8a9fed919f6005b7bc8e576a5e555ff23dc8c8e39928c7b645fc46521f389b6f0f5c71f560d4
-Size (rust-bin-1.73.0/rust-1.73.0-aarch64-unknown-linux-gnu.tar.gz) = 460971740 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-aarch64-unknown-linux-musl.tar.gz) = 848a7d285e082b71e1effee16409ce979adf687639ff5ff09a937abceb70171a
-SHA512 (rust-bin-1.73.0/rust-1.73.0-aarch64-unknown-linux-musl.tar.gz) = fa9c338bb6508867ec7dc2ac60c5bd6eb42e95160fbbc296ce45dc6d11906ecaee0d7591346b98c5a9564fa1ab938aede04787e43dc040ec86fbca92c8b10103
-Size (rust-bin-1.73.0/rust-1.73.0-aarch64-unknown-linux-musl.tar.gz) = 375142860 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-aarch64-unknown-netbsd.tar.xz) = 8f4ff1a3920035db498baf74624910b5fe81fe533101e3c92ba7b3cff8db4cb3
-SHA512 (rust-bin-1.73.0/rust-1.73.0-aarch64-unknown-netbsd.tar.xz) = bb4560dae59569ca4385fcca9239e3970825de3a2bcad21f5026548a53779b98f3b549f9819f1eb23c0c8bc91670833abf29f63930bcaccca6ef5da6d9a805f6
-Size (rust-bin-1.73.0/rust-1.73.0-aarch64-unknown-netbsd.tar.xz) = 161515964 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-aarch64_be-unknown-netbsd.tar.xz) = 73f22cdad072bfaae14d759141dafa90f4c571c63f6a0b4edd5053caceda9ce2
-SHA512 (rust-bin-1.73.0/rust-1.73.0-aarch64_be-unknown-netbsd.tar.xz) = 902f789602b30c32305eb59de1051cf3a25f36e81fc9f9d9f6e1341f4ecb670963567b3e1d657cfa0a4caf02f522afd2c3dc8acdd81a6a3ac4f8d718fcc3c09f
-Size (rust-bin-1.73.0/rust-1.73.0-aarch64_be-unknown-netbsd.tar.xz) = 160641520 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-armv6-unknown-netbsd-eabihf.tar.xz) = e03e73ceb16f16fa241ea753d5eccd7e9c088d7ad0f0fdfa3c1cafafd02b5acf
-SHA512 (rust-bin-1.73.0/rust-1.73.0-armv6-unknown-netbsd-eabihf.tar.xz) = df80005974ee398d8a46810d6153611a8a3f2994038ece1ea79e6334c7ec33bed476b5d006a52c3ff4e1e032dccff80a86c79ec21e9dee59394f59c405158abb
-Size (rust-bin-1.73.0/rust-1.73.0-armv6-unknown-netbsd-eabihf.tar.xz) = 138460288 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-armv7-unknown-netbsd-eabihf.tar.xz) = 7e99bbd5374222a6c7d4997f7bd42cd3c94dbeca14ddb3993ab9b4bf0d3fdac2
-SHA512 (rust-bin-1.73.0/rust-1.73.0-armv7-unknown-netbsd-eabihf.tar.xz) = 18387e577df2ee0e90e76399be16df0e3776e4659933ab478a0a2d7876cee7f657f59188b9344811d039621855e9e4e17bb02af116d16557e992c4c7be9cfac1
-Size (rust-bin-1.73.0/rust-1.73.0-armv7-unknown-netbsd-eabihf.tar.xz) = 140513280 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-i586-unknown-netbsd.tar.xz) = 0c5b2e40e3abd6b2721035906d3174ac90385617fb0aa4850405a5b1f0bf233c
-SHA512 (rust-bin-1.73.0/rust-1.73.0-i586-unknown-netbsd.tar.xz) = dae31ea4607b469b37f4d4d4cd6aace3294c4275cb108c1b904915d572d7dc4a9d6660dcafab9003b3d185d8bc6a9f99e74f9cecfe1166098836e7e0a79e2e8d
-Size (rust-bin-1.73.0/rust-1.73.0-i586-unknown-netbsd.tar.xz) = 176313856 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-i686-unknown-linux-gnu.tar.gz) = 60d6178bd78ef20b5cf8eecaa83f0749b6021b2a0c081f0e65eb52106466f5f1
-SHA512 (rust-bin-1.73.0/rust-1.73.0-i686-unknown-linux-gnu.tar.gz) = 9575e2b6f59b1fd905f6e33cd4afffdc736a7b59a11ed78d30ea0e01558e499a34b65e4ea4ade858579800fba23e59a9aaa4b9099a9021f011e0209926d5b3e6
-Size (rust-bin-1.73.0/rust-1.73.0-i686-unknown-linux-gnu.tar.gz) = 409345618 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-mipsel-unknown-netbsd.tar.xz) = b670e15ca50ac0c32f0a2222e9a93165331213d1e1afb1380f6d208845e5f16e
-SHA512 (rust-bin-1.73.0/rust-1.73.0-mipsel-unknown-netbsd.tar.xz) = 4d7f83a72f5d0056e9cf37dfbdf3ccbb26cec366d483c6a819e9ca84077ef3fec825841b306016f69c9186ad0eedddcf9307c6b6826ef154ab7ff4d4d93ad3d0
-Size (rust-bin-1.73.0/rust-1.73.0-mipsel-unknown-netbsd.tar.xz) = 141338300 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-powerpc-unknown-netbsd90.tar.xz) = 2e03c261b7cbaa1ab81f195399291d0df53ec9120c82a7ce96cceaa697a324ae
-SHA512 (rust-bin-1.73.0/rust-1.73.0-powerpc-unknown-netbsd90.tar.xz) = e857295f80702c1381f66b75275a56e76534c466bf1917763f2e813b00064c1dab9a73173e04920c2def7c58a64de45d09f64f0be8b9a4e65037568cec8f104a
-Size (rust-bin-1.73.0/rust-1.73.0-powerpc-unknown-netbsd90.tar.xz) = 189810120 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-riscv64gc-unknown-netbsd.tar.xz) = af73706e14bf3e32a2c068c2bd6b17d0d680c7adb9c3267e5795502259c3adf4
-SHA512 (rust-bin-1.73.0/rust-1.73.0-riscv64gc-unknown-netbsd.tar.xz) = cd7549984b77aba25bc1b2456fa97b5b024dc7b0caca3975916468c79bd17d47fab4e69f6d5e3977d1a43bb68ab91b67ea6af386a1e6b681dcd4149487470e88
-Size (rust-bin-1.73.0/rust-1.73.0-riscv64gc-unknown-netbsd.tar.xz) = 174529612 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-sparc64-unknown-netbsd.tar.xz) = fccb9f5c55e205e2ba9e4393ae5edc5f76988856d5ceb9f680a6d0a1930a4f77
-SHA512 (rust-bin-1.73.0/rust-1.73.0-sparc64-unknown-netbsd.tar.xz) = b545735d6b44e8470e357b723406f7fbe061055731dd748c78a9fcb532aab2026eac7414e3e3edc39811815528c289ec305a5ed837c12b0cdb4a342e58c7046f
-Size (rust-bin-1.73.0/rust-1.73.0-sparc64-unknown-netbsd.tar.xz) = 158027768 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-x86_64-apple-darwin.tar.gz) = 69b43db2cb1e6d23297833ad2b78da9b40475cd25204c9b6c9ab728a6043283e
-SHA512 (rust-bin-1.73.0/rust-1.73.0-x86_64-apple-darwin.tar.gz) = f1dca181676a5051230e6fa76806ba30a9377a215d76c94438885407e6dce1b9b652dd0160c86540f41f30676e649737758fc4e9d46166eb55fc3d8e3a40dd9f
-Size (rust-bin-1.73.0/rust-1.73.0-x86_64-apple-darwin.tar.gz) = 329569843 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-freebsd.tar.gz) = 3ad6bbda96db4ad4cf08875508824ffe6492d4bdf630742aa8ef5b15b0cf69f9
-SHA512 (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-freebsd.tar.gz) = e0208b985afe817134b7cd3b514bfc1cdd8093cd8fe272de4ccf3b1ea028734072d828bcae4a1975933e4fb560a9b5068a4622c3feb6a25e97e6a1654648d0d2
-Size (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-freebsd.tar.gz) = 315088513 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-linux-gnu.tar.gz) = 4c458942ab2d40fe7ba77c19c9aee4218e0cc019dcce7c189f6710b09bb08d77
-SHA512 (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-linux-gnu.tar.gz) = 7c2b9a961d8e67da5aae2c59d07a7b5c5f20eebb4e4f453a53464d0a5ccc93e08e94652b582fed700583dba397dcfccfdea61ddfac49fd323ac02f1f6de025ae
-Size (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-linux-gnu.tar.gz) = 346764558 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-linux-musl.tar.gz) = f81999993ba1b51bf286cf1f0fd3735d2c92268a1395b191c3a80d99b9984eb1
-SHA512 (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-linux-musl.tar.gz) = 56d41f3792378b415632d068483f3deb43b6f485c7f8972fffaabd7c28481ed9a21d4702b0d7e5a0e6f22ad44eb079cdd088ef36c373ccd92ecad4fe63aeb1e7
-Size (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-linux-musl.tar.gz) = 449151253 bytes
-BLAKE2s (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-netbsd.tar.gz) = 0306910778f17c20daf8511bb6bc27f76ac6e315f9bcb1d9c6c8af10c391e835
-SHA512 (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-netbsd.tar.gz) = 6a3f614dfa3cbf6d1c468b966e0c07f35a3c49771611abeaed237926dc378b60141704c2d42f871c32dedc15d60dd0283188a311cf3aa3165a4d38a015f60b49
-Size (rust-bin-1.73.0/rust-1.73.0-x86_64-unknown-netbsd.tar.gz) = 288505485 bytes
diff --git a/rust173-bin/files/install.sh b/rust173-bin/files/install.sh
deleted file mode 100755
index 1cc270c333..0000000000
--- a/rust173-bin/files/install.sh
+++ /dev/null
@@ -1,971 +0,0 @@
-#!/bin/bash
-# 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.
-#
-# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
-# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
-# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
-# option. This file may not be copied, modified, or distributed
-# except according to those terms.
-
-# No undefined variables
-set -u
-
-init_logging() {
-    local _abs_libdir="$1"
-    local _logfile="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/install.log"
-    LOGFILE="$_logfile"
-}
-
-log_line() {
-    local _line="$1"
-
-}
-
-msg() {
-    local _line="install: ${1-}"
-    echo "$_line"
-    log_line "$_line"
-}
-
-verbose_msg() {
-    if [ -n "${CFG_VERBOSE-}" ]; then
-	msg "${1-}"
-    else
-	log_line "install: ${1-}"
-    fi
-}
-
-step_msg() {
-    msg
-    msg "$1"
-    msg
-}
-
-verbose_step_msg() {
-    if [ -n "${CFG_VERBOSE-}" ]; then
-	msg
-	msg "$1"
-	msg
-    else
-	log_line ""
-	log_line "install: $1"
-	log_line ""
-    fi
-}
-
-warn() {
-    local _line="install: WARNING: $1"
-    echo "$_line" >&2
-    log_line "$_line"
-}
-
-err() {
-    local _line="install: error: $1"
-    echo "$_line" >&2
-    log_line "$_line"
-    exit 1
-}
-
-# A non-user error that is likely to result in a corrupted install
-critical_err() {
-    local _line="install: error: $1. see logs at '${LOGFILE-}'"
-    echo "$_line" >&2
-    log_line "$_line"
-    exit 1
-}
-
-need_ok() {
-    if [ $? -ne 0 ]
-    then
-        err "$1"
-    fi
-}
-
-critical_need_ok() {
-    if [ $? -ne 0 ]
-    then
-        critical_err "$1"
-    fi
-}
-
-want_ok() {
-    if [ $? -ne 0 ]; then
-	warn "$1"
-    fi
-}
-
-assert_nz() {
-    if [ -z "$1" ]; then err "assert_nz $2"; fi
-}
-
-need_cmd() {
-    if command -v $1 >/dev/null 2>&1
-    then verbose_msg "found $1"
-    else err "need $1"
-    fi
-}
-
-run() {
-    local _line="\$ $*"
-    "$@"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-write_to_file() {
-    local _msg="$1"
-    local _file="$2"
-    local _line="$ echo \"$_msg\" > \"$_file\""
-    echo "$_msg" > "$_file"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-append_to_file() {
-    local _msg="$1"
-    local _file="$2"
-    local _line="$ echo \"$_msg\" >> \"$_file\""
-    echo "$_msg" >> "$_file"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-make_dir_recursive() {
-    local _dir="$1"
-    local _line="$ umask 022 && mkdir -p \"$_dir\""
-    umask 022 && mkdir -p "$_dir"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-putvar() {
-    local t
-    local tlen
-    eval t=\$$1
-    eval tlen=\${#$1}
-}
-
-valopt() {
-    VAL_OPTIONS="$VAL_OPTIONS $1"
-
-    local op=$1
-    local default=$2
-    shift
-    shift
-    local doc="$*"
-    if [ $HELP -eq 0 ]
-    then
-        local uop=$(echo $op | tr 'a-z-' 'A-Z_')
-        local v="CFG_${uop}"
-        eval $v="$default"
-        for arg in $CFG_ARGS
-        do
-            if echo "$arg" | grep -q -- "--$op="
-            then
-                local val=$(echo "$arg" | cut -f2 -d=)
-                eval $v=$val
-            fi
-        done
-        putvar $v
-    else
-        if [ -z "$default" ]
-        then
-            default="<none>"
-        fi
-        op="${op}=[${default}]"
-        printf "    --%-30s %s\n" "$op" "$doc"
-    fi
-}
-
-opt() {
-    BOOL_OPTIONS="$BOOL_OPTIONS $1"
-
-    local op=$1
-    local default=$2
-    shift
-    shift
-    local doc="$*"
-    local flag=""
-
-    if [ $default -eq 0 ]
-    then
-        flag="enable"
-    else
-        flag="disable"
-        doc="don't $doc"
-    fi
-
-    if [ $HELP -eq 0 ]
-    then
-        for arg in $CFG_ARGS
-        do
-            if [ "$arg" = "--${flag}-${op}" ]
-            then
-                op=$(echo $op | tr 'a-z-' 'A-Z_')
-                flag=$(echo $flag | tr 'a-z' 'A-Z')
-                local v="CFG_${flag}_${op}"
-                eval $v=1
-                putvar $v
-            fi
-        done
-    else
-        if [ ! -z "${META-}" ]
-        then
-            op="$op=<$META>"
-        fi
-        printf "    --%-30s %s\n" "$flag-$op" "$doc"
-     fi
-}
-
-flag() {
-    BOOL_OPTIONS="$BOOL_OPTIONS $1"
-
-    local op=$1
-    shift
-    local doc="$*"
-
-    if [ $HELP -eq 0 ]
-    then
-        for arg in $CFG_ARGS
-        do
-            if [ "$arg" = "--${op}" ]
-            then
-                op=$(echo $op | tr 'a-z-' 'A-Z_')
-                local v="CFG_${op}"
-                eval $v=1
-                putvar $v
-            fi
-        done
-    else
-        if [ ! -z "${META-}" ]
-        then
-            op="$op=<$META>"
-        fi
-        printf "    --%-30s %s\n" "$op" "$doc"
-     fi
-}
-
-validate_opt () {
-    for arg in $CFG_ARGS
-    do
-        local is_arg_valid=0
-        for option in $BOOL_OPTIONS
-        do
-            if test --disable-$option = $arg
-            then
-                is_arg_valid=1
-            fi
-            if test --enable-$option = $arg
-            then
-                is_arg_valid=1
-            fi
-            if test --$option = $arg
-            then
-                is_arg_valid=1
-            fi
-        done
-        for option in $VAL_OPTIONS
-        do
-            if echo "$arg" | grep -q -- "--$option="
-            then
-                is_arg_valid=1
-            fi
-        done
-        if [ "$arg" = "--help" ]
-        then
-            echo
-            echo "No more help available for Configure options,"
-            echo "check the Wiki or join our IRC channel"
-            break
-        else
-            if test $is_arg_valid -eq 0
-            then
-                err "Option '$arg' is not recognized"
-            fi
-        fi
-    done
-}
-
-absolutify() {
-    local file_path="$1"
-    local file_path_dirname="$(dirname "$file_path")"
-    local file_path_basename="$(basename "$file_path")"
-    local file_abs_path="$(abs_path "$file_path_dirname")"
-    local file_path="$file_abs_path/$file_path_basename"
-    # This is the return value
-    RETVAL="$file_path"
-}
-
-# Prints the absolute path of a directory to stdout
-abs_path() {
-    local path="$1"
-    # Unset CDPATH because it causes havok: it makes the destination unpredictable
-    # and triggers 'cd' to print the path to stdout. Route `cd`'s output to /dev/null
-    # for good measure.
-    (unset CDPATH && cd "$path" > /dev/null && pwd)
-}
-
-uninstall_legacy() {
-    local _abs_libdir="$1"
-
-    local _uninstalled_something=false
-
-    # Replace commas in legacy manifest list with spaces
-    _legacy_manifest_dirs=`echo "$TEMPLATE_LEGACY_MANIFEST_DIRS" | sed "s/,/ /g"`
-
-    # Uninstall from legacy manifests
-    local _md
-    for _md in $_legacy_manifest_dirs; do
-	# First, uninstall from the installation prefix.
-	# Errors are warnings - try to rm everything in the manifest even if some fail.
-	if [ -f "$_abs_libdir/$_md/manifest" ]
-	then
-
-	    # iterate through installed manifest and remove files
-	    local _p;
-	    while read _p; do
-		# the installed manifest contains absolute paths
-		msg "removing legacy file $_p"
-		if [ -f "$_p" ]
-		then
-		    run rm -f "$_p"
-		    want_ok "failed to remove $_p"
-		else
-		    warn "supposedly installed file $_p does not exist!"
-		fi
-	    done < "$_abs_libdir/$_md/manifest"
-
-	    # If we fail to remove $md below, then the
-	    # installed manifest will still be full; the installed manifest
-	    # needs to be empty before install.
-	    msg "removing legacy manifest $_abs_libdir/$_md/manifest"
-	    run rm -f "$_abs_libdir/$_md/manifest"
-	    # For the above reason, this is a hard error
-	    need_ok "failed to remove installed manifest"
-
-	    # Remove $template_rel_manifest_dir directory
-	    msg "removing legacy manifest dir $_abs_libdir/$_md"
-	    run rm -R "$_abs_libdir/$_md"
-	    want_ok "failed to remove $_md"
-
-	    _uninstalled_something=true
-	fi
-    done
-
-    RETVAL="$_uninstalled_something"
-}
-
-uninstall_components() {
-    local _abs_libdir="$1"
-    local _dest_prefix="$2"
-    local _components="$3"
-
-    # We're going to start by uninstalling existing components. This
-    local _uninstalled_something=false
-
-    # First, try removing any 'legacy' manifests from before
-    # rust-installer
-    uninstall_legacy "$_abs_libdir"
-    assert_nz "$RETVAL", "RETVAL"
-    if [ "$RETVAL" = true ]; then
-	_uninstalled_something=true;
-    fi
-
-    # Load the version of the installed installer
-    local _installed_version=
-    if [ -f "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/rust-installer-version" ]; then
-	_installed_version=`cat "$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/rust-installer-version"`
-
-	# Sanity check
-	if [ ! -n "$_installed_version" ]; then critical_err "rust installer version is empty"; fi
-    fi
-
-    # If there's something installed, then uninstall
-    if [ -n "$_installed_version" ]; then
-	# Check the version of the installed installer
-	case "$_installed_version" in
-
-	    # If this is a previous version, then upgrade in place to the
-	    # current version before uninstalling.
-	    2 )
-		# The only change between version 2 -> 3 is that components are placed
-		# in subdirectories of the installer tarball. There are no changes
-		# to the installed data format, so nothing to do.
-		;;
-
-	    # This is the current version. Nothing need to be done except uninstall.
-	    "$TEMPLATE_RUST_INSTALLER_VERSION")
-		;;
-
-	    # If this is an unknown (future) version then bail.
-	    * )
-		echo "The copy of $TEMPLATE_PRODUCT_NAME at $_dest_prefix was installed using an"
-		echo "unknown version ($_installed_version) of rust-installer."
-		echo "Uninstall it first with the installer used for the original installation"
-		echo "before continuing."
-		exit 1
-		;;
-	esac
-
-	local _md="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-	local _installed_components="$(cat "$_md/components")"
-
-	# Uninstall (our components only) before reinstalling
-	local _available_component
-	for _available_component in $_components; do
-	    local _installed_component
-	    for _installed_component in $_installed_components; do
-		if [ "$_available_component" = "$_installed_component" ]; then
-		    msg "uninstalling component '$_available_component'"
-		    local _component_manifest="$_md/manifest-$_installed_component"
-
-		    # Sanity check: there should be a component manifest
-		    if [ ! -f "$_component_manifest" ]; then
-			critical_err "installed component '$_installed_component' has no manifest"
-		    fi
-
-		    # Iterate through installed component manifest and remove files
-		    local _directive
-		    while read _directive; do
-
-			local _command=${_directive%%:*}
-			local _file=${_directive#*:}
-
-			# Sanity checks
-			if [ ! -n "$_command" ]; then critical_err "malformed installation directive"; fi
-			if [ ! -n "$_file" ]; then critical_err "malformed installation directive"; fi
-
-			case "$_command" in
-			    file)
-				verbose_msg "removing file $_file"
-				if [ -f "$_file" ]; then
-				    run rm -f "$_file"
-				    want_ok "failed to remove $_file"
-				else
-				    warn "supposedly installed file $_file does not exist!"
-				fi
-				;;
-
-			    dir)
-				verbose_msg "removing directory $_file"
-				run rm -r "$_file"
-				want_ok "unable to remove directory $_file"
-				;;
-
-			    *)
-				critical_err "unknown installation directive"
-				;;
-			esac
-
-		    done < "$_component_manifest"
-
-		    # Remove the installed component manifest
-		    verbose_msg "removing component manifest $_component_manifest"
-		    run rm "$_component_manifest"
-		    # This is a hard error because the installation is unrecoverable
-		    critical_need_ok "failed to remove installed manifest for component '$_installed_component'"
-
-		    # Update the installed component list
-		    local _modified_components="$(sed "/^$_installed_component\$/d" "$_md/components")"
-		    write_to_file "$_modified_components" "$_md/components"
-		    critical_need_ok "failed to update installed component list"
-		fi
-	    done
-	done
-
-	# If there are no remaining components delete the manifest directory,
-	# but only if we're doing an uninstall - if we're doing an install,
-	# then leave the manifest directory around to hang onto the logs,
-	# and any files not managed by the installer.
-	if [ -n "${CFG_UNINSTALL-}" ]; then
-	    local _remaining_components="$(cat "$_md/components")"
-	    if [ ! -n "$_remaining_components" ]; then
-		verbose_msg "removing manifest directory $_md"
-		run rm -r "$_md"
-		want_ok "failed to remove $_md"
-
-		maybe_unconfigure_ld
-	    fi
-	fi
-
-	_uninstalled_something=true
-    fi
-
-    # There's no installed version. If we were asked to uninstall, then that's a problem.
-    if [ -n "${CFG_UNINSTALL-}" -a "$_uninstalled_something" = false ]
-    then
-	err "unable to find installation manifest at $CFG_LIBDIR/$TEMPLATE_REL_MANIFEST_DIR"
-    fi
-}
-
-install_components() {
-    local _src_dir="$1"
-    local _abs_libdir="$2"
-    local _dest_prefix="$3"
-    local _components="$4"
-
-    local _component
-    for _component in $_components; do
-
-	msg "installing component '$_component'"
-
-	# The file name of the manifest we're installing from
-	local _input_manifest="$_src_dir/$_component/manifest.in"
-
-	# Sanity check: do we have our input manifests?
-	if [ ! -f "$_input_manifest" ]; then
-	    critical_err "manifest for $_component does not exist at $_input_manifest"
-	fi
-
-	# The installed manifest directory
-	local _md="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-
-	# The file name of the manifest we're going to create during install
-	local _installed_manifest="$_md/manifest-$_component"
-
-	# Create the installed manifest, which we will fill in with absolute file paths
-	touch "$_installed_manifest"
-	critical_need_ok "failed to create installed manifest"
-
-	# Add this component to the installed component list
-	append_to_file "$_component" "$_md/components"
-	critical_need_ok "failed to update components list for $_component"
-
-	# Now install, iterate through the new manifest and copy files
-	local _directive
-	while read _directive; do
-
-	    local _command=${_directive%%:*}
-	    local _file=${_directive#*:}
-
-	    # Sanity checks
-	    if [ ! -n "$_command" ]; then critical_err "malformed installation directive"; fi
-	    if [ ! -n "$_file" ]; then critical_err "malformed installation directive"; fi
-
-	    # Decide the destination of the file
-	    local _file_install_path="$_dest_prefix/$_file"
-
-	    case "$_file" in
-		etc/*)
-		    local _f=${_file#"etc/"}
-		    _file_install_path="$CFG_DESTDIR_PREFIX/share/doc/cargo/$_f"
-		    ;;
-		bin/*)
-		    local _f=${_file#"bin/"}
-		    _file_install_path="$CFG_BINDIR/$_f"
-		    ;;
-		lib/*)
-		    local _f=${_file#"lib/"}
-		    _file_install_path="$CFG_LIBDIR/$_f"
-		    ;;
-		share/man/*)
-		    local _f=${_file#"share/man/"}
-		    _file_install_path="$CFG_DESTDIR_PREFIX/$PKGMANDIR/$_f"
-		    ;;
-		share/doc/*)
-            # HACK: Try to support overriding --docdir.  Paths with the form
-            # "share/doc/$product/" can be redirected to a single --docdir
-            # path. If the following detects that --docdir has been specified
-            # then it will replace everything preceeding the "$product" path
-            # component. The problem here is that the combined rust installer
-            # contains two "products": rust and cargo; so the contents of those
-            # directories will both be dumped into the same directory; and the
-            # contents of those directories are _not_ disjoint. Since this feature
-            # is almost entirely to support 'make install' anyway I don't expect
-            # this problem to be a big deal in practice.
-		    if [ "$CFG_DOCDIR" != "<default>" ]; then
-			local _f=${_file#"share/doc/"*/}
-			_file_install_path="$CFG_DOCDIR/$_f"
-		    fi
-		    ;;
-		share/*)
-		    local _f=${_file#"share/"}
-		    _file_install_path="$CFG_DATADIR/$_f"
-		    ;;
-	    esac
-
-
-	    # Make sure there's a directory for it
-	    make_dir_recursive "$(dirname "$_file_install_path")"
-	    critical_need_ok "directory creation failed"
-
-	    # Make the path absolute so we can uninstall it later without
-	    # starting from the installation cwd
-	    absolutify "$_file_install_path"
-	    _file_install_path="$RETVAL"
-	    assert_nz "$_file_install_path" "file_install_path"
-
-	    case "$_command" in
-		file )
-
-		    verbose_msg "copying file $_file_install_path"
-
-		    maybe_backup_path "$_file_install_path"
-
-		    local mode=644
-		    if test -x "$_src_dir/$_component/$_file"; then
-			mode=755
-		    fi
-		    case "$_file" in
-			bin/*) mode=755
-			       ;;
-		    esac
-		    run cp "$_src_dir/$_component/$_file" "$_file_install_path"
-		    run chmod $mode "$_file_install_path"
-		    critical_need_ok "file creation failed"
-
-		    # Update the manifest
-		    append_to_file "file:$_file_install_path" "$_installed_manifest"
-		    critical_need_ok "failed to update manifest"
-
-		    ;;
-
-		dir )
-
-		    verbose_msg "copying directory $_file_install_path"
-
-		    maybe_backup_path "$_file_install_path"
-
-		    run cp -R "$_src_dir/$_component/$_file" "$_file_install_path"
-		    critical_need_ok "failed to copy directory"
-
-                    # Set permissions. 0755 for dirs, 644 for files
-                    run chmod -R u+rwX,go+rX,go-w "$_file_install_path"
-                    critical_need_ok "failed to set permissions on directory"
-
-		    # Update the manifest
-		    append_to_file "dir:$_file_install_path" "$_installed_manifest"
-		    critical_need_ok "failed to update manifest"
-		    ;;
-
-		*)
-		    critical_err "unknown installation directive"
-		    ;;
-	    esac
-	done < "$_input_manifest"
-
-    done
-}
-
-maybe_configure_ld() {
-    local _abs_libdir="$1"
-
-    local _ostype="$(uname -s)"
-    assert_nz "$_ostype"  "ostype"
-
-    if [ "$_ostype" = "Linux" -a ! -n "${CFG_DISABLE_LDCONFIG-}" ]; then
-
-	# Fedora-based systems do not configure the dynamic linker to look
-	# /usr/local/lib, which is our default installation directory. To
-	# make things just work, try to put that directory in
-	# /etc/ld.so.conf.d/rust-installer-v1 so ldconfig picks it up.
-	# Issue #30.
-	#
-	# This will get rm'd when the last component is uninstalled in
-	# maybe_unconfigure_ld.
-	if [ "$_abs_libdir" = "/usr/local/lib" -a -d "/etc/ld.so.conf.d" ]; then
-	    echo "$_abs_libdir" > "/etc/ld.so.conf.d/rust-installer-v1-$TEMPLATE_REL_MANIFEST_DIR.conf"
-	    if [ $? -ne 0 ]; then
-		# This shouldn't happen if we've gotten this far
-		# installing to /usr/local
-		warn "failed to update /etc/ld.so.conf.d. this is unexpected"
-	    fi
-	fi
-
-	verbose_msg "running ldconfig"
-	if [ -n "${CFG_VERBOSE-}" ]; then
-	    ldconfig
-	else
-	    ldconfig 2> /dev/null
-	fi
-	if [ $? -ne 0 ]
-	then
-            warn "failed to run ldconfig. this may happen when not installing as root. run with --verbose to see the error"
-	fi
-    fi
-}
-
-maybe_unconfigure_ld() {
-    local _ostype="$(uname -s)"
-    assert_nz "$_ostype"  "ostype"
-
-    if [ "$_ostype" != "Linux" ]; then
-	return 0
-    fi
-
-    rm "/etc/ld.so.conf.d/rust-installer-v1-$TEMPLATE_REL_MANIFEST_DIR.conf" 2> /dev/null
-    # Above may fail since that file may not have been created on install
-}
-
-# Doing our own 'install'-like backup that is consistent across platforms
-maybe_backup_path() {
-    local _file_install_path="$1"
-
-    if [ -e "$_file_install_path" ]; then
-	msg "backing up existing file at $_file_install_path"
-	run mv -f "$_file_install_path" "$_file_install_path.old"
-	critical_need_ok "failed to back up $_file_install_path"
-    fi
-}
-
-install_uninstaller() {
-    local _src_dir="$1"
-    local _src_basename="$2"
-    local _abs_libdir="$3"
-
-    local _uninstaller="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/uninstall.sh"
-    msg "creating uninstall script at $_uninstaller"
-    run cp "$_src_dir/$_src_basename" "$_uninstaller"
-    critical_need_ok "unable to install uninstaller"
-}
-
-do_preflight_sanity_checks() {
-    local _src_dir="$1"
-    local _dest_prefix="$2"
-
-    # Sanity check: can we can write to the destination?
-    verbose_msg "verifying destination is writable"
-    make_dir_recursive "$CFG_LIBDIR"
-    need_ok "can't write to destination. consider \`sudo\`."
-    touch "$CFG_LIBDIR/rust-install-probe" > /dev/null
-    if [ $? -ne 0 ]
-    then
-	err "can't write to destination. consider \`sudo\`."
-    fi
-    rm "$CFG_LIBDIR/rust-install-probe"
-    need_ok "failed to remove install probe"
-
-    # Sanity check: don't install to the directory containing the installer.
-    # That would surely cause chaos.
-    verbose_msg "verifying destination is not the same as source"
-    local _prefix_dir="$(abs_path "$dest_prefix")"
-    if [ "$_src_dir" = "$_dest_prefix" -a "${CFG_UNINSTALL-}" != 1 ]; then
-	err "cannot install to same directory as installer"
-    fi
-}
-
-verbose_msg "looking for install programs"
-verbose_msg
-
-need_cmd mkdir
-need_cmd printf
-need_cmd cut
-need_cmd grep
-need_cmd uname
-need_cmd tr
-need_cmd sed
-need_cmd chmod
-need_cmd env
-need_cmd pwd
-
-CFG_ARGS="${@:-}"
-
-HELP=0
-if [ "${1-}" = "--help" ]
-then
-    HELP=1
-    shift
-    echo
-    echo "Usage: $0 [options]"
-    echo
-    echo "Options:"
-    echo
-else
-    verbose_step_msg "processing arguments"
-fi
-
-OPTIONS=""
-BOOL_OPTIONS=""
-VAL_OPTIONS=""
-
-flag uninstall "only uninstall from the installation prefix"
-valopt destdir "" "set installation root"
-valopt prefix "/usr/local" "set installation prefix"
-
-# Avoid prepending an extra / to the prefix path if there's no destdir
-# NB: CFG vars here are undefined when passing --help
-if [ -z "${CFG_DESTDIR-}" ]; then
-    CFG_DESTDIR_PREFIX="${CFG_PREFIX-}"
-else
-    CFG_DESTDIR_PREFIX="$CFG_DESTDIR/$CFG_PREFIX"
-fi
-
-# NB This isn't quite the same definition as in `configure`.
-# just using 'lib' instead of configure's CFG_LIBDIR_RELATIVE
-valopt without "" "comma-separated list of components to not install"
-valopt components "" "comma-separated list of components to install"
-flag list-components "list available components"
-valopt sysconfdir "$CFG_DESTDIR_PREFIX/etc" "install system configuration files"
-valopt bindir "$CFG_DESTDIR_PREFIX/bin" "install binaries"
-valopt libdir "$CFG_DESTDIR_PREFIX/lib" "install libraries"
-valopt datadir "$CFG_DESTDIR_PREFIX/share" "install data"
-# NB We repeat datadir default value because we don't set CFG_DATADIR in --help
-valopt mandir "${CFG_DATADIR-"$CFG_DESTDIR_PREFIX/share"}/man" "install man pages in PATH"
-# NB See the docdir handling in install_components for an explanation of this
-# weird <default> string
-valopt docdir "\<default\>" "install documentation in PATH"
-opt ldconfig 1 "run ldconfig after installation (Linux only)"
-opt verify 1 "obsolete"
-flag verbose "run with verbose output"
-
-if [ $HELP -eq 1 ]
-then
-    echo
-    exit 0
-fi
-
-verbose_step_msg "validating arguments"
-validate_opt
-
-# Template configuration.
-# These names surrounded by '%%` are replaced by sed when generating install.sh
-# FIXME: Might want to consider loading this from a file and not generating install.sh
-
-# Rust or Cargo
-TEMPLATE_PRODUCT_NAME='Rust'
-# rustlib or cargo
-TEMPLATE_REL_MANIFEST_DIR=rustlib
-# 'Rust is ready to roll.' or 'Cargo is cool to cruise.'
-TEMPLATE_SUCCESS_MESSAGE='rust installed.'
-# Locations to look for directories containing legacy, pre-versioned manifests
-TEMPLATE_LEGACY_MANIFEST_DIRS='rustlib,cargo'
-# The installer version
-TEMPLATE_RUST_INSTALLER_VERSION='3'
-
-# OK, let's get installing ...
-
-# This is where we are installing from
-src_dir="$(abs_path $(dirname "$0"))"
-
-# The name of the script
-src_basename="$(basename "$0")"
-
-# If we've been run as 'uninstall.sh' (from the existing installation)
-# then we're doing a full uninstall, as opposed to the --uninstall flag
-# which just means 'uninstall my components'.
-if [ "$src_basename" = "uninstall.sh" ]; then
-    if [ "${*:-}" != "" ]; then
-	# Currently don't know what to do with arguments in this mode
-	err "uninstall.sh does not take any arguments"
-    fi
-    CFG_UNINSTALL=1
-    CFG_DESTDIR_PREFIX="$(abs_path "$src_dir/../../")"
-    CFG_LIBDIR="$(abs_path "$src_dir/../")"
-fi
-
-# This is where we are installing to
-dest_prefix="$CFG_DESTDIR_PREFIX"
-
-# Open the components file to get the list of components to install.
-# NB: During install this components file is read from the installer's
-# source dir, during a full uninstall it's read from the manifest dir,
-# and thus contains all installed components.
-components=`cat "$src_dir/components"`
-
-# Sanity check: do we have components?
-if [ ! -n "$components" ]; then
-    err "unable to find installation components"
-fi
-
-# If the user asked for a component list, do that and exit
-if [ -n "${CFG_LIST_COMPONENTS-}" ]; then
-    echo
-    echo "# Available components"
-    echo
-    for component in $components; do
-	echo "* $component"
-    done
-    echo
-    exit 0
-fi
-
-# If the user specified which components to install/uninstall,
-# then validate that they exist and select them for installation
-if [ -n "$CFG_COMPONENTS" ]; then
-    # Remove commas
-    user_components="$(echo "$CFG_COMPONENTS" | sed "s/,/ /g")"
-    for user_component in $user_components; do
-	found=false
-	for my_component in $components; do
-	    if [ "$user_component" = "$my_component" ]; then
-		found=true
-	    fi
-	done
-	if [ "$found" = false ]; then
-	    err "unknown component: $user_component"
-	fi
-    done
-    components="$user_components"
-fi
-
-if [ -n "$CFG_WITHOUT" ]; then
-    without_components="$(echo "$CFG_WITHOUT" | sed "s/,/ /g")"
-    for without_component in $without_components; do
-	components="$(echo "$components" | sed "s/$without_component//" | sed "s/$without_component//")"
-    done
-fi
-
-if [ -z "$components" ]; then
-    if [ -z "${CFG_UNINSTALL-}" ]; then
-	err "no components selected for installation"
-    else
-	err "no components selected for uninstallation"
-    fi
-fi
-
-do_preflight_sanity_checks "$src_dir" "$dest_prefix"
-
-# Using an absolute path to libdir in a few places so that the status
-# messages are consistently using absolute paths.
-absolutify "$CFG_LIBDIR"
-abs_libdir="$RETVAL"
-assert_nz "$abs_libdir" "abs_libdir"
-
-# Create the manifest directory, where we will put our logs
-make_dir_recursive "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-need_ok "failed to create $TEMPLATE_REL_MANIFEST_DIR"
-
-# Log messages and commands
-init_logging "$abs_libdir"
-
-# First do any uninstallation, including from legacy manifests. This
-# will also upgrade the metadata of existing installs.
-uninstall_components "$abs_libdir" "$dest_prefix" "$components"
-
-# If we're only uninstalling then exit
-if [ -n "${CFG_UNINSTALL-}" ]
-then
-    echo
-    echo "    $TEMPLATE_PRODUCT_NAME is uninstalled."
-    echo
-    exit 0
-fi
-
-# Create the manifest directory again! uninstall_legacy
-# may have deleted it.
-make_dir_recursive "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-need_ok "failed to create $TEMPLATE_REL_MANIFEST_DIR"
-
-# Drop the version number into the manifest dir
-write_to_file "$TEMPLATE_RUST_INSTALLER_VERSION" "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/rust-installer-version"
-critical_need_ok "failed to write installer version"
-
-# Install the uninstaller
-
-# Install each component
-install_components "$src_dir" "$abs_libdir" "$dest_prefix" "$components"
-
-# Make dynamic libraries available to the linker
-maybe_configure_ld "$abs_libdir"
-
-echo
-echo "    $TEMPLATE_SUCCESS_MESSAGE"
-echo
-
-


Home | Main Index | Thread Index | Old Index