Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 848452 Details for
Bug 672060
app-arch/star, app-cdr/cdrtools: replaced by schily-tools
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
schily-tools-2023.01.12.ebuild
schily-tools-2023.01.12.ebuild (text/plain), 15.69 KB, created by
Daniel Pielmeier
on 2023-01-14 14:03:36 UTC
(
hide
)
Description:
schily-tools-2023.01.12.ebuild
Filename:
MIME Type:
Creator:
Daniel Pielmeier
Created:
2023-01-14 14:03:36 UTC
Size:
15.69 KB
patch
obsolete
># Copyright 1999-2022 Martin V\"ath and Gentoo Authors ># Distributed under the terms of the GNU General Public License v2 > >EAPI=8 >RESTRICT="mirror" > >inherit fcaps flag-o-matic gnuconfig required-use-warn toolchain-funcs > >MY_PV=${PV//./-} >MY_P="schily-${MY_PV}" >MY_P_TAR="${MY_P}.tar.bz2" >S=${WORKDIR}/${MY_P} > >DESCRIPTION="Many tools from Joerg Schilling, including a POSIX compliant Bourne Shell" >HOMEPAGE="https://sourceforge.net/projects/schilytools/" >SRC_URI="http://fuz.su/~fuz/distfiles/schilytools/${MY_P}.tar.bz2" > >LICENSE="GPL-2 LGPL-2.1 CDDL-Schily" >SLOT="0" >KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris" >IUSE="acl caps doc nls split-usr suid unicode xattr" > >PATCHES=( > "${FILESDIR}"/strlcat-mapvers.patch >) > >add_iuse_expand() { > local i j > j=${1} > shift > for i > do case ${i} in > +*) > IUSE=${IUSE}" +${j}_${i#?}";; > *) > IUSE=${IUSE}" ${j}_${i}";; > esac > done >} >add_iuse_expand renameschily \ > +calc +compare +count +getopt +jsh +libschily +p >add_iuse_expand schilytools +bosh +calc +calltree +cdrtools \ > +change +compare +copy +count +cpp +cstyle +cut \ > +hdump label +lndir manmake +match +mdigest mountcd \ > +obosh +p +paste +patch +pbosh pxupgrade +sccs +sfind +smake +star \ > +termcap +translit +udiff +ved > >COMMON="!!app-cdr/cdrtools[-schily-tools(-)] >!renameschily_libschily? ( !sys-apps/man ) >!renameschily_getopt? ( !sys-apps/man ) >schilytools_calc? ( > !renameschily_calc? ( !sci-mathematics/calc ) >) >schilytools_compare? ( > !renameschily_compare? ( > !media-gfx/imagemagick !media-gfx/graphicsmagick[imagemagick] > ) >) >schilytools_count? ( > !renameschily_count? ( !sys-devel/llvm ) >) >schilytools_bosh? ( > !renameschily_jsh? ( !app-shells/heirloom-sh ) >) >schilytools_p? ( > !renameschily_p? ( !dev-util/wiggle ) >) >schilytools_translit? ( !dev-perl/Lingua-Translit ) >acl? ( virtual/acl ) >caps? ( sys-libs/libcap ) >nls? ( virtual/libintl )" >DEPEND="${COMMON}" >RDEPEND="${COMMON}" >BDEPEND="nls? ( >=sys-devel/gettext-0.18.1.1 ) >x11-misc/makedepend" > >pkg_pretend() { > required-use-warn >} > >FILECAPS=( > cap_sys_resource,cap_dac_override,cap_sys_admin,cap_sys_nice,cap_net_bind_service,cap_ipc_lock,cap_sys_rawio+ep usr/bin/cdrecord -- > cap_dac_override,cap_sys_admin,cap_sys_nice,cap_net_bind_service,cap_sys_rawio+ep usr/bin/cdda2wav -- > cap_dac_override,cap_sys_admin,cap_net_bind_service,cap_sys_rawio+ep usr/bin/readcd >) > >cdrtools_os() { > local os="linux" > [[ ${CHOST} == *-darwin* ]] && os="mac-os10" > echo "${os}" >} > >symlink_build_rules() { > local cputype="$1" > pushd "${S}"/RULES > /dev/null || die > ln -sf i586-linux-cc.rul "${cputype}"-linux-cc.rul || die > ln -sf i586-linux-clang.rul "${cputype}"-linux-clang.rul || die > ln -sf i586-linux-clang32.rul "${cputype}"-linux-clang32.rul || die > ln -sf i586-linux-clang64.rul "${cputype}"-linux-clang64.rul || die > ln -sf i586-linux-gcc.rul "${cputype}"-linux-gcc.rul || die > ln -sf i586-linux-gcc32.rul "${cputype}"-linux-gcc32.rul || die > ln -sf i586-linux-gcc64.rul "${cputype}"-linux-gcc64.rul || die > popd > /dev/null || die >} > >src_schily_prepare() ( > gnuconfig_update > > # Remove profiled make files. > find -name '*_p.mk' -delete || die "delete *_p.mk" > > # Adjusting hardcoded paths. > sed -i -e "s|opt/schily|usr|" \ > $(find ./ -type f -name \*.[0-9ch] -exec grep -l 'opt/schily' '{}' '+') \ > || die "sed opt/schily" > > sed -i -e "s|\(^INSDIR=\t\tshare/doc/\)|\1${PF}/|" \ > $(find ./ -type f -exec grep -l '^INSDIR.\+doc' '{}' '+') \ > || die "sed doc" > > # Respect libdir. > sed -i -e "s|\(^INSDIR=\t\t\)lib|\1$(get_libdir)|" \ > $(find ./ -type f -exec grep -l '^INSDIR.\+lib\(/\(siconv\)\?\)\?$' '{}' '+') \ > || die "sed multilib" > > # Don't quote $(MAKE) > sed -i -e 's|"$(MAKE)"|$(MAKE)|' \ > $(find ./RULES -type f -exec grep -l '"$(MAKE)"' '{}' '+') \ > || die "sed RULES/" > > # Respect libdir for defaults.smk > sed -i -e "s|/lib/|/$(get_libdir)/|" \ > smake/Makefile \ > || die "sed multilib for smake" > > # Respect CC/CXX variables. > cd "${S}"/RULES || die > local tcCC="$(tc-getCC)" > local tcCXX"=$(tc-getCXX)" > sed -i -e "/cc-config.sh/s|\$(C_ARCH:%64=%) \$(CCOM_DEF)|${tcCC} ${tcCC}|" \ > rules1.top || die "sed rules1.top" > # -e "s|^\(DEFCCOM_DEF=\).*|\1\t${tcCC}|" \ > sed -i -e "/^CC_COM_DEF=/s|gcc|${tcCC}|" \ > -e "/^CC++_COM_DEF=/s|g[+][+]|${tcCXX}|" \ > -e "/COPTOPT=/s|-O||" \ > -e 's|[$][(]GCCOPTOPT[)]||' \ > -e 's|[$][(]GCC_OPTXX[)]||' \ > cc-gcc.rul || die "sed cc-gcc.rul" > sed -i -e "/^CC_COM_DEF=/s|clang|${tcCC}|" \ > -e "/^CC++_COM_DEF=/s|clang[+][+]|${tcCXX}|" \ > -e "/COPTOPT=/s|-O||" \ > -e 's|[$][(]CLANGOPTXX[)]||' \ > cc-clang.rul || die "sed cc-clang.rul" > sed -i -e "s|^#\(CONFFLAGS +=\).*|\1\t-cc=${tcCC}|" \ > rules.cnf || die "sed rules.cnf" > > # Add support for arm64 > symlink_build_rules aarch64_be > > # fix RISC-V build err, bug 811375 > symlink_build_rules riscv > symlink_build_rules riscv64 > > # Add support for loong > symlink_build_rules loongarch64 > > # Schily make setup. > cd "${S}"/DEFAULTS || die > local os=$(cdrtools_os) > > sed -i \ > -e "s|^\(DEFLINKMODE=\).*|\1\tdynamic|" \ > -e "s|^\(LINUX_INCL_PATH=\).*|\1|" \ > -e "s|^\(LDPATH=\).*|\1|" \ > -e "s|^\(RUNPATH=\).*|\1|" \ > -e "s|^\(INS_BASE=\).*|\1\t${ED}/usr|" \ > -e "s|^\(INS_RBASE=\).*|\1\t${ED}|" \ > -e "s|^\(DEFINSGRP=\).*|\1\t0|" \ > -e "s|^\(DEFCCOM=\).*|\1\t${tcCC}|" \ > -e '/^DEFUMASK/s,002,022,g' \ > Defaults.${os} || die "sed Schily make setup" > # re DEFUMASK above: > # bug 486680: grsec TPE will block the exec if the directory is > # group-writable. This is painful with cdrtools, because it makes a bunch of > # group-writable directories during build. Change the umask on their > # creation to prevent this. >) > >targets="" > >have_target() { > case " ${targets} " in > *" ${1} "*) > return 0;; > esac > return 1 >} > >targets() { > local i > for i > do have_target "${i}" && continue > mv -v UNUSED_TARGETS/??"${i}" TARGETS || die > targets=${targets}${targets:+\ }${i} > done >} > >src_prepare() { > # schily-tools needs smake https://bugs.gentoo.org/818544 > unset MAKE > filter-flags -fPIE -pie '-flto*' -fwhole-program -fno-common > src_schily_prepare > sed -i -e '1s!man1/sh\.1!man1/bosh.1!' -- "${S}/sh/"{jsh,pfsh}.1 || die > sed -i \ > -e '/-DDO_POSIX_SH/s/^[#]//' \ > -e '/-DDO_POSIX_PATH/s/^/\#/' \ > -e '/[+][=] -DPOSIX_BOSH_PATH/iCPPOPTS += -DPOSIX_BOSH_PATH=\\"'"${EPREFIX}"'/bin/sh\\"' \ > -- "${S}/sh/"Makefile || die > mkdir UNUSED_TARGETS || die > mv TARGETS/[0-9][0-9]* UNUSED_TARGETS || die > targets inc libfind > targets include libschily libmdigest > ! use schilytools_bosh || targets sh libxtermcap libshedit libgetopt > ! use schilytools_calc || targets calc > ! use schilytools_calltree || targets calltree > ! use schilytools_change || targets change > if use schilytools_cdrtools; then > targets btcflash cdda2wav cdrecord mkisofs 'mkisofs!@!diag' \ > libdeflt libscg 'libscg!@!scg' \ > readcd rscsi scgcheck scgskeleton \ > libcdrdeflt libedc libfile libhfs_iso libparanoia \ > librscg libscgcmd libsiconv 'libsiconv!@!tables' > fi > if ! use acl; then > sed -i -e 's/^CPPOPTS.*DUSE_ACL/#&/' -- star/Makefile || die > fi ># nonexistent: ># ! use schilytools_cmd || targets cmd > ! use schilytools_compare || targets compare > ! use schilytools_copy || targets copy > ! use schilytools_count || targets count > ! use schilytools_cpp || targets cpp > ! use schilytools_cstyle || targets cstyle > ! use schilytools_cut || targets cut > ! use schilytools_hdump || targets hdump > ! use schilytools_label || targets label > ! use schilytools_lndir || targets lndir > ! use schilytools_manmake || targets man > ! use schilytools_match || targets match > ! use schilytools_mdigest || targets mdigest > ! use schilytools_mountcd || targets mountcd > ! use schilytools_obosh || targets obosh libxtermcap libshedit libgetopt > ! use schilytools_p || targets p libxtermcap > ! use schilytools_paste || targets paste > ! use schilytools_patch || targets patch > ! use schilytools_pbosh || targets pbosh libxtermcap libshedit libgetopt > ! use schilytools_pxupgrade || targets libdeflt libscg pxupgrade > ! use schilytools_sccs || targets sccs libgetopt > ! use schilytools_sfind || targets sfind > ! use schilytools_smake || targets smake > if use schilytools_star; then > targets libdeflt librmt mt rmt star star_sym tartest > fi > ! use schilytools_termcap || targets termcap libxtermcap > ! use schilytools_translit || targets translit > ! use schilytools_udiff || targets udiff > ! use schilytools_ved || targets ved libxtermcap > default >} > >ac_cv_sizeof() { > cat <<-EOF >"${T}"/test.c > #include <inttypes.h> > #include <stddef.h> > #include <stdint.h> > #include <sys/types.h> > int main () { > static int test_array [1 - 2 * !((sizeof(TYPE)) == LEN)]; > test_array [0] = 0; > return test_array [0]; > } > EOF > > local i=1 > while [[ ${i} -lt 20 ]] ; do > if ${CC} ${CPPFLAGS} ${CFLAGS} -c "${T}"/test.c -o /dev/null -DTYPE="$1" -DLEN=$i 2>/dev/null; then > echo ${i} > return 0 > fi > : $(( i += 1 )) > done > return 1 >} > >src_configure() { > use acl || export ac_cv_header_sys_acl_h="no" > use caps || export ac_cv_lib_cap_cap_get_proc="no" > use xattr || export ac_cv_header_attr_xattr_h="no" > export ac_cv_header_pulse_pulseaudio_h="no" > export ac_cv_header_alsa_asoundlib_h="no" > export ac_cv_lib_asound_snd_pcm_open="no" > > # skip obsolete configure script > if tc-is-cross-compiler ; then > # Cache known values for targets. #486680 > > tc-export CC > local var val t types=( > char "short int" int "long int" "long long" > "unsigned char" "unsigned short int" "unsigned int" > "unsigned long int" "unsigned long long" > float double "long double" size_t ssize_t ptrdiff_t > mode_t uid_t gid_t pid_t dev_t time_t wchar_t > "char *" "unsigned char *" > ) > for t in "${types[@]}" ; do > var="ac_cv_sizeof_${t// /_}" > var=${var//[*]/p} > val=$(ac_cv_sizeof "${t}") || die "could not compute ${t}" > export "${var}=${val}" > einfo "Computing sizeof(${t}) as ${val}" > done > # We don't have these types. > export ac_cv_sizeof___int64=0 > export ac_cv_sizeof_unsigned___int64=0 > export ac_cv_sizeof_major_t=${ac_cv_sizeof_dev_t} > export ac_cv_sizeof_minor_t=${ac_cv_sizeof_dev_t} > export ac_cv_sizeof_wchar=${ac_cv_sizeof_wchar_t} > > export ac_cv_type_prototypes="yes" > export ac_cv_func_mlock{,all}="yes" > export ac_cv_func_{e,f,g}cvt=$(usex elibc_glibc) > export ac_cv_func_dtoa_r="no" > export ac_cv_func_sys_siglist{,_def}="no" > export ac_cv_func_printf_{j,ll}="yes" > export ac_cv_realloc_null="yes" > export ac_cv_no_user_malloc="no" > export ac_cv_var_timezone="yes" > export ac_cv_var___progname{,_full}="yes" > export ac_cv_fnmatch_igncase="yes" > export ac_cv_file__dev_{fd_{0,1,2},null,std{err,in,out},tty,zero}="yes" > export ac_cv_file__usr_src_linux_include="no" > > case $(cdrtools_os) in > linux) > export ac_cv_func_bsd_{g,s}etpgrp="no" > export ac_cv_hard_symlinks="yes" > export ac_cv_link_nofollow="yes" > export ac_cv_access_e_ok="no" > > export ac_cv_dev_minor_noncontig="yes" > case ${ac_cv_sizeof_long_int} in > 4) export ac_cv_dev_minor_bits="32";; > 8) export ac_cv_dev_minor_bits="44";; > esac > > cat <<-EOF >"${T}"/test.c > struct { > char start[6]; > unsigned char x1:4; > unsigned char x2:4; > char end[5]; > } a = { > .start = {'S', 't', 'A', 'r', 'T', '_'}, > .x1 = 5, > .x2 = 4, > .end = {'_', 'e', 'N', 'd', 'X'}, > }; > EOF > ${CC} ${CPPFLAGS} ${CFLAGS} -c "${T}"/test.c -o "${T}"/test.o > if grep -q 'StArT_E_eNdX' "${T}"/test.o ; then > export ac_cv_c_bitfields_htol="no" > elif grep -q 'StArT_T_eNdX' "${T}"/test.o ; then > export ac_cv_c_bitfields_htol="yes" > fi > ;; > esac > fi >} > >src_compile() { > if use unicode; then > local flags="$(test-flags -finput-charset=ISO-8859-1 -fexec-charset=UTF-8)" > if [[ -n ${flags} ]]; then > append-flags ${flags} > else > ewarn "Your compiler does not support the options required to build" > ewarn "cdrtools with unicode in USE. unicode flag will be ignored." > fi > fi > append-cppflags -I"${S}"/libschily > emake CPPOPTX="${CPPFLAGS}" COPTX="${CFLAGS}" C++OPTX="${CXXFLAGS}" \ > LDOPTX="${LDFLAGS}" GMAKE_NOWARN="true" NOECHO= >} > >mustnothave() { > local i > for i; do > test -r "${ED}${i}" && die "${ED}${i} must not exist" > done >} > >mustremove() { > local i > for i; do > test -r "${ED}${i}" && rm -v -- "${ED}${i}" || \ > die "cannot remove ${ED}${i}" > done >} > >removedirs() { > local i > for i; do > ! test -d "${ED}${i}" || rm -rfv -- "${ED}${i}" || \ > die "cannot remove ${ED}${i}" > done >} > >src_install() { > local i > ! use doc || dodoc -r Schily.Copyright README.SSPM PORTING CONTRIBUTING \ > AN-????-??-?? ANNOUNCEMENTS READMEs/README.linux > emake CPPOPTX="${CPPFLAGS}" COPTX="${CFLAGS}" C++OPTX="${CXXFLAGS}" \ > LDOPTX="${LDFLAGS}" GMAKE_NOWARN="true" NOECHO= install > find "${ED}" '(' -name '*.a' '-o' -name '*.so' ')' -delete || die > use suid || find "$ED" -perm /4000 -exec chmod -v -- -s '{}' '+' || die > if use schilytools_cdrtools; then > cd "${S}"/cdda2wav || die > docinto cdda2wav > dodoc Changelog FAQ Frontends HOWTOUSE NEEDED README THANKS TODO > > cd "${S}"/mkisofs || die > docinto mkisofs > dodoc ChangeLog* TODO > fi > removedirs /usr/include > if use schilytools_star; then > removedirs /usr/share/doc/star > mustremove /usr/bin/{gnu,}tar > mv -i -- "${ED}"/usr/sbin/rmt{,.star} || die > fi > if use schilytools_sccs; then > mv -v -- "${ED}"/usr/share/man/man1/{,sccs-}diff.1 || die > else > ! test -d "${ED}"/usr/ccs || rm -rfv -- "${ED}"/usr/ccs || die > mustnothave /usr/share/man/man1/diff.1 > fi > if use schilytools_hdump; then > mustremove /usr/bin/od /usr/share/man/man1/od.1 > else > mustnothave /usr/bin/od /usr/share/man/man1/od.1 > fi > if use schilytools_patch; then > mustremove /usr/share/man/man1/patch.1 > else > mustnothave /usr/share/man/man1/patch.1 > fi > if use schilytools_bosh; then > dodir bin || die > rm -v -- "${ED}"/usr/bin/{bo,j,pf}sh \ > "${ED}"/usr/share/man/man1/bosh.1 || die > rm -rfv -- "${ED}"/usr/xpg4 || die > mv -v -- "${ED}"/{usr/bin/sh,bin/bosh} || die > ln -s -- bosh "${ED}"/bin/jsh || die > ln -s -- bosh "${ED}"/bin/pfsh || die > mv -v -- "${ED}"/usr/share/man/man1/{,bo}sh.1 || die > if use renameschily_jsh; then > mv -v -- "${ED}"/bin/{,s}jsh || die > mv -v -- "${ED}"/usr/share/man/man1/{,s}jsh.1 || die > fi > fi > if use schilytools_calc && use renameschily_calc; then > mv -v -- "${ED}"/usr/bin/{,s}calc || die > mv -v -- "${ED}"/usr/share/man/man1/{,s}calc.1 || die > fi > if use schilytools_compare && use renameschily_compare; then > mv -v -- "${ED}"/usr/bin/{,s}compare || die > mv -v -- "${ED}"/usr/share/man/man1/{,s}compare.1 || die > fi > if use schilytools_count && use renameschily_count; then > mv -v -- "${ED}"/usr/bin/{,s}count || die > mv -v -- "${ED}"/usr/share/man/man1/{,s}count.1 || die > fi > if use schilytools_p && use renameschily_p; then > mv -v -- "${ED}"/usr/bin/{,s}p || die > mv -v -- "${ED}"/usr/share/man/man1/{,s}p.1 || die > fi > if use schilytools_ved; then > docompress -x /usr/share/man/help > fi > if use renameschily_libschily; then > for i in error fexecve fnmatch getline {,f,s}printf strlen; do > mv -v -- "${ED}"/usr/share/man/man3/{,schily-}${i}.3 || die > done > fi > if use renameschily_getopt && have_target libgetopt; then > mv -v -- "${ED}"/usr/share/man/man3/{,schily-}getopt.3 || die > mv -v -- "${ED}"/usr/share/man/man3/{,schily-}getsubopt.3 || die > fi > use split-usr || move_to_usr_bin "${ED}"/bin/* > if test -d "${ED}"/usr/etc > then > dodir etc > mv -v -- "${ED}"/usr/etc/* "${ED}"/etc > rmdir -- "${ED}"/usr/etc > fi >} > >move_to_usr_bin() { > test -r "$1" || return 0 > test -d "${ED}"/usr/bin || mkdir -p -- "${ED}"/usr/bin || die > mv -v -- "$@" "${ED}"/usr/bin || die > rmdir "${ED}"/bin || die >} > >pkg_postinst() { > use schilytools_cdrtools || return 0 > fcaps_pkg_postinst > > if [[ ${CHOST} == *-darwin* ]] ; then > einfo > einfo "Darwin/OS X use the following device names:" > einfo > einfo "CD burners: (probably) ./cdrecord dev=IOCompactDiscServices" > einfo > einfo "DVD burners: (probably) ./cdrecord dev=IODVDServices" > einfo > fi >}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 672060
: 848452