diff options
Diffstat (limited to 'app-editors')
94 files changed, 1497 insertions, 6624 deletions
diff --git a/app-editors/emacs/Manifest b/app-editors/emacs/Manifest index 8c21c67c8d34..799e97490e80 100644 --- a/app-editors/emacs/Manifest +++ b/app-editors/emacs/Manifest @@ -1,16 +1,10 @@ DIST emacs-18.59-patches-15.tar.xz 34104 BLAKE2B 9d14004d5188ec0ffe11099ae1beb431adfe159d220fc1b6f1d0be67da19b88911b66a206386beee9498bdcaa48e40a185755734cad2d60927c79bc8ddf0fa7d SHA512 c82cd8e81acf63addd137716a60191b916ee9ac9f8176661be1e8dd0f347f63f8ca8bf9d4d225141499dcbf4c20444eb6526cc3a3912a2d4136fb2bd295e2c26 DIST emacs-18.59.tar.gz 2962652 BLAKE2B d617636daff41e672af2dcda26ec24b2495cf0a3e6373561ee26a2a922b7252c074dd6b79289d771853a4720c60f084f5726b904bf65989718173232ac874b0b SHA512 03ce565e346e89b7aacb1852f4783e8907f394de7da0c543b475cb038eb89b87f980d0f7ca1841b1d2108b20f211e95113c7214e4a33e5767a1827ff43173f33 -DIST emacs-26.3-patches-6.tar.xz 6264 BLAKE2B 0973df2f34d623a5478a01ab18c80d38e864d7bfb15bc5d3dac3ecb31911eb9edfc622f5ed407d9f418ed6d85e96d5881ffb53a94766aec144a3089ac1332bbf SHA512 b9c833ccd0505f2b78e30c17b43549fcaca3bc767b18e5260160a3aa7063504030e58e848a78f83e76ace7d64db13bfbc69281c3eab9c6e413c3adef06803c9d DIST emacs-26.3-patches-8.tar.xz 7404 BLAKE2B 507533497028958c797ded16343bc381c933660c5d0c9734ed41215f87ff72bad4e828a7237839eb4efdfee67be4fef943fc770d62f1426ad255909e068c01d6 SHA512 3ea0797c746eb48a893cbb77783d91d1c93260755473d0216ef19cf0811be3253664b7ccb664e20593bb95cd7f68e5f284e865349303b29581150fdb694ddf39 DIST emacs-26.3.tar.xz 44415140 BLAKE2B aa8434e6431992ee40402f03a890dd2c49784ee76f437888efe61d66b9aa2bdb816eb0bfe1055e9e154a8bb3ed065fee71623741b474d465a96964618ec775e3 SHA512 4d5a4319253afb081e105a3697eb6eeb8d8a0da18cd41346e376ca5af1e180a26e641f76c64fad1b0253168f14a511f0a4d9d4141524fb1cf4d04f25b05a76e9 -DIST emacs-27.2-patches-7.tar.xz 12356 BLAKE2B 8d991bd3e87d2fc0086b535d481dbe8399e42d15b21417d19341c5ef8426c65cb471f23eb6e41067750a1ad6dced8cb7b2fd4a6b34bd911913ccfe858e9257f9 SHA512 285c0ca69fc5c7fd398d4ca0a8c5a2a4412a858504445c415cb6eeca9eb170680f6d9bf0dfcd2ae4925e75f01d1d1858c194760a22ee98ad16ebcc347fa588ec DIST emacs-27.2-patches-9.tar.xz 14560 BLAKE2B f82ba15bcf4a8c962836150daa59325bea13b51bb32d8271a411bd9bfb32f05245b2b84645e1d73447f14b88432d36e70971c94c730dc1d4e976302ecb9a833f SHA512 01887429273f9b4bad9e4e1320d2e6b7fda636a59dd1b548e79c8956432e24eadfa0dbc6377f40c486eed5fd987c416221106d25ca6ff6be0fbd29c801a17b85 DIST emacs-27.2.tar.xz 44624480 BLAKE2B 245ea96004b90f81ac74de74521cbbe086caf1176937e08157eae12cdde5a0f35fc77f7119272ed812974358e5e95abb05e1c2e4f3b501cf5401ea9274f62156 SHA512 0f63a5a8709b113ef790c1a64845dad05ead096f93f62164ff221c517a35b91ea7bced75a992d794981a85382cda03cca7338da2f5ef8f6ef1459b88018a4ce9 -DIST emacs-28.2-patches-5.tar.xz 6932 BLAKE2B 1cf79142b3031d377b5ba56996a41c44801a114e993ed7e93f937fd88cd35cf142fbc8d98c7970984f44df9fd267d8032f9c6e559d69c18c945510b2e93029bd SHA512 9a246680045868029d9f67652d60d0859d44c3f016ba57cae5ba991c138ece39890230ad303220e2558ccca904b2053b691874da04c6529faa0e8e4f6ea4b6f2 DIST emacs-28.2-patches-7.tar.xz 9768 BLAKE2B 6ab0a30cfdb1d54ce1b977fc7dcbcd65499eaabeca0abfbefe76fe9825d4c33de46c76e82451ebfb7a380cba8fe1607171898147b56c17fd7618bc3ebe4aeb45 SHA512 567b7f85b8e40f8c58252c0632cdb460cc912248fa871eaccaef8df8dad546a3d4c94126db6d53d23375c764b8f6bd9842296292bee46a108a309c4a53aa24d7 DIST emacs-28.2.tar.xz 47722600 BLAKE2B a7e4990658b5e7306510f8dded93aaf0b82cdd9306df8b786526d038c3249ef9579287075f2235eb01a71ae1699db555254f137b86ab2d2305b45895053df552 SHA512 a7cec7e3e82367815a1442f69af54102dbfc434069810a9dec5938a6660cb8b076e6f1fb0bfff9695b15603dbbe05eb9c7dfd92e90cf40fc4d1e5746bce83bd8 -DIST emacs-29.2-patches-2.tar.xz 2232 BLAKE2B 5a74b286a47a03a7b24298fb9da69135485a25351a1451351412825f7b570e9ab40e988e03218eef8b6345124b982a6ea7c67ac03adbb72061e74438a5910836 SHA512 efc5855a66b1895145b9eb792c790850f319cdfaf8c03579aecfc51940a3e010d825e68003d218929278c9cbfa7e0039a8244838126e67db15cb52718dddf35c -DIST emacs-29.2.tar.xz 52162080 BLAKE2B d634fbd94a2fde4824daf5d4d44d6f9e9693900af9ebeda75488fd4d14b7f6cd22e0c9fc15a4c73b4b90843aa782dbd698ba0d40c50465eb4b902105cd9e2c2c SHA512 293fdc2387d58dfa506ae1960b05ccdb4c16ec53c4f55a1a6b665a4fe2815cabfad6257f2b62231040889ab3843d56a01ef62fc9efc1118bf833d7773c64820a -DIST emacs-29.3-patches-1.tar.xz 1552 BLAKE2B 5f9ddd816b03b4a2fe077cef23d76b0c41e2e7dafac35d0dd718ee406e6e57dcb102223251dddc68280f9f2bd41f5b141cda46dca8ccc78258d5939a84ee1665 SHA512 d61dfc6944d58b6ea5749f3089e5c575cf60c8138962aa5c8131274504124505db87489a4d3806e69b646ffffd4c924ef94018c4d7bdcbb2c84322fad6441ffc DIST emacs-29.3-patches-2.tar.xz 2304 BLAKE2B 1005194bc2ed6d9be0cadcf449f4f82c1bcda178e6126f27f8ea0c359344bcf6a9368226a6eaf9d4b655a0c59ed6beecc3130b4409c84bb3ed19911ba22d9e80 SHA512 67250b08cf0b1d4f8279987cea19da0838f520c98ae91b16200c8bf5b5e2a171ffdb7c06a266c6f220ec8466a9264af55529dc150b002588937597e328a581d2 DIST emacs-29.3.tar.xz 52203168 BLAKE2B 73651c52e508d5341f66659bbaf98e839040239198cb66f62239f489a961794adf837d9a14e9b605f059b7b612803e0ce5998ec47100ba545db642baacdb55ec SHA512 efaecfc46a0b88f61de477d92c08ee592b8838e6c34724151a3b1502efa7ebd4d4837733c694807e6de1ba4b8d37d2ec382c6bb2ed000b67ad8f0e11c7df2a6b diff --git a/app-editors/emacs/emacs-26.3-r16.ebuild b/app-editors/emacs/emacs-26.3-r16.ebuild deleted file mode 100644 index fecc2455801d..000000000000 --- a/app-editors/emacs/emacs-26.3-r16.ebuild +++ /dev/null @@ -1,379 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools elisp-common flag-o-matic readme.gentoo-r1 - -DESCRIPTION="The extensible, customizable, self-documenting real-time display editor" -HOMEPAGE="https://www.gnu.org/software/emacs/" -SRC_URI="mirror://gnu/emacs/${P}.tar.xz - https://dev.gentoo.org/~ulm/emacs/${P}-patches-6.tar.xz" -# FULL_VERSION keeps the full version number, which is needed in -# order to determine some path information correctly for copy/move -# operations later on -FULL_VERSION="${PV%%_*}" -S="${WORKDIR}/emacs-${FULL_VERSION}" - -LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2" -SLOT="26" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" -IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif gpm gsettings gtk gui gzip-el imagemagick +inotify jpeg kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm xwidgets zlib" - -RDEPEND="app-emacs/emacs-common[games?,gui(-)?] - sys-libs/ncurses:0= - acl? ( virtual/acl ) - alsa? ( media-libs/alsa-lib ) - dbus? ( sys-apps/dbus ) - games? ( acct-group/gamestat ) - gpm? ( sys-libs/gpm ) - !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) ) - kerberos? ( virtual/krb5 ) - lcms? ( media-libs/lcms:2 ) - libxml2? ( >=dev-libs/libxml2-2.2.0 ) - mailutils? ( net-mail/mailutils[clients] ) - !mailutils? ( acct-group/mail net-libs/liblockfile ) - selinux? ( sys-libs/libselinux ) - ssl? ( net-libs/gnutls:0= ) - systemd? ( sys-apps/systemd ) - valgrind? ( dev-debug/valgrind ) - zlib? ( sys-libs/zlib ) - gui? ( !aqua? ( - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXinerama - x11-libs/libXrandr - x11-libs/libxcb - x11-misc/xbitmaps - gsettings? ( >=dev-libs/glib-2.28.6 ) - gif? ( media-libs/giflib:0= ) - jpeg? ( media-libs/libjpeg-turbo:0= ) - png? ( >=media-libs/libpng-1.4:0= ) - svg? ( >=gnome-base/librsvg-2.0 ) - tiff? ( media-libs/tiff:= ) - xpm? ( x11-libs/libXpm ) - imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] ) - xft? ( - media-libs/fontconfig - media-libs/freetype - x11-libs/libXft - x11-libs/libXrender - cairo? ( >=x11-libs/cairo-1.12.18[X] ) - m17n-lib? ( - >=dev-libs/libotf-0.9.4 - >=dev-libs/m17n-lib-1.5.1 - ) - ) - gtk? ( - x11-libs/gtk+:3 - xwidgets? ( - net-libs/webkit-gtk:4.1= - x11-libs/libXcomposite - ) - ) - !gtk? ( - motif? ( - >=x11-libs/motif-2.3:0 - x11-libs/libXpm - x11-libs/libXmu - x11-libs/libXt - ) - !motif? ( - Xaw3d? ( - x11-libs/libXaw3d - x11-libs/libXmu - x11-libs/libXt - ) - !Xaw3d? ( athena? ( - x11-libs/libXaw - x11-libs/libXmu - x11-libs/libXt - ) ) - ) - ) - ) )" - -DEPEND="${RDEPEND} - gui? ( !aqua? ( x11-base/xorg-proto ) )" - -BDEPEND="virtual/pkgconfig - gzip-el? ( app-arch/gzip )" - -IDEPEND="app-eselect/eselect-emacs" - -RDEPEND+=" ${IDEPEND}" - -EMACS_SUFFIX="emacs-${SLOT}" -SITEFILE="20${EMACS_SUFFIX}-gentoo.el" -PATCHES=("${WORKDIR}/patch") - -# Suppress false positive QA warnings #898304 -QA_CONFIG_IMPL_DECL_SKIP=( malloc_{set,get}_state MIN ) - -src_prepare() { - default - - # Fix filename reference in redirected man page - sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die - - AT_M4DIR=m4 eautoreconf -} - -src_configure() { - strip-flags - filter-flags -pie #526948 - - if use ia64; then - replace-flags "-O[2-9]" -O1 #325373 - else - replace-flags "-O[3-9]" -O2 - fi - - local myconf - - if use alsa; then - use sound || ewarn \ - "USE flag \"alsa\" overrides \"-sound\"; enabling sound support." - myconf+=" --with-sound=alsa" - else - myconf+=" --with-sound=$(usex sound oss)" - fi - - if ! use gui; then - einfo "Configuring to build without window system support" - myconf+=" --without-x --without-ns" - elif use aqua; then - einfo "Configuring to build with Nextstep (Macintosh Cocoa) support" - myconf+=" --with-ns --disable-ns-self-contained" - myconf+=" --without-x" - else - myconf+=" --with-x --without-ns" - myconf+=" --without-gconf" - myconf+=" $(use_with gsettings)" - myconf+=" $(use_with toolkit-scroll-bars)" - myconf+=" $(use_with gif)" - myconf+=" $(use_with jpeg)" - myconf+=" $(use_with png)" - myconf+=" $(use_with svg rsvg)" - myconf+=" $(use_with tiff)" - myconf+=" $(use_with xpm)" - myconf+=" $(use_with imagemagick)" - - if use xft; then - myconf+=" --with-xft" - myconf+=" $(use_with cairo)" - myconf+=" $(use_with m17n-lib libotf)" - myconf+=" $(use_with m17n-lib m17n-flt)" - else - myconf+=" --without-xft" - myconf+=" --without-cairo" - myconf+=" --without-libotf --without-m17n-flt" - use cairo && ewarn \ - "USE flag \"cairo\" has no effect if \"xft\" is not set." - use m17n-lib && ewarn \ - "USE flag \"m17n-lib\" has no effect if \"xft\" is not set." - fi - - local f line - if use gtk; then - einfo "Configuring to build with GIMP Toolkit (GTK+)" - while read line; do ewarn "${line}"; done <<-EOF - Your version of GTK+ will have problems with closing open - displays. This is no problem if you just use one display, but - if you use more than one and close one of them Emacs may crash. - See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and - <https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>. - If you intend to use more than one display, then it is strongly - recommended that you compile Emacs with the Athena/Lucid or the - Motif toolkit instead. - EOF - myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)" - for f in motif Xaw3d athena; do - use ${f} && ewarn \ - "USE flag \"${f}\" has no effect if \"gtk\" is set." - done - elif use motif; then - einfo "Configuring to build with Motif toolkit" - myconf+=" --with-x-toolkit=motif" - for f in Xaw3d athena; do - use ${f} && ewarn \ - "USE flag \"${f}\" has no effect if \"motif\" is set." - done - elif use athena || use Xaw3d; then - einfo "Configuring to build with Athena/Lucid toolkit" - myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)" - else - einfo "Configuring to build with no toolkit" - myconf+=" --with-x-toolkit=no" - fi - ! use gtk && use xwidgets && ewarn \ - "USE flag \"xwidgets\" has no effect if \"gtk\" is not set." - fi - - econf \ - --program-suffix="-${EMACS_SUFFIX}" \ - --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \ - --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \ - --localstatedir="${EPREFIX}"/var \ - --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \ - --without-compress-install \ - --without-hesiod \ - --without-pop \ - --with-file-notification=$(usev inotify || usev gfile || echo no) \ - $(use_enable acl) \ - $(use_with dbus) \ - $(use_with dynamic-loading modules) \ - $(use_with games gameuser ":gamestat") \ - $(use_with gpm) \ - $(use_with kerberos) $(use_with kerberos kerberos5) \ - $(use_with lcms lcms2) \ - $(use_with libxml2 xml2) \ - $(use_with mailutils) \ - $(use_with selinux) \ - $(use_with ssl gnutls) \ - $(use_with systemd libsystemd) \ - $(use_with threads) \ - $(use_with wide-int) \ - $(use_with zlib) \ - ${myconf} -} - -src_compile() { - export ac_cv_header_valgrind_valgrind_h=$(usex valgrind) - - # Disable sandbox when dumping. For the unbelievers, see bug #131505 - emake RUN_TEMACS="SANDBOX_ON=0 LD_PRELOAD= env ./temacs" -} - -src_install() { - emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install - - mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die - mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die - mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die - - # dissuade Portage from removing our dir file #257260 - touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir - docompress -x /usr/share/info/${EMACS_SUFFIX}/dir - - # movemail must be setgid mail - if ! use mailutils; then - fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail - fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail - fi - - # avoid collision between slots, see bug #169033 e.g. - rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die - rm -rf "${ED}"/usr/share/{applications,icons} || die - rm -rf "${ED}/usr/$(get_libdir)" || die - rm -rf "${ED}"/var || die - - # remove unused <version>/site-lisp dir - rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die - - # remove COPYING file (except for etc/COPYING used by describe-copying) - rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die - - if use systemd; then - insinto /usr/lib/systemd/user - sed -e "/^##/d" \ - -e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \ - -e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \ - etc/emacs.service | newins - ${EMACS_SUFFIX}.service - assert - fi - - if use gzip-el; then - # compress .el files when a corresponding .elc exists - find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \ - -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n - assert "gzip .el failed" - fi - - local cdir - if use source; then - cdir="/usr/share/emacs/${FULL_VERSION}/src" - insinto "${cdir}" - # This is not meant to install all the source -- just the - # C source you might find via find-function - doins src/*.{c,h,m} - elif has installsources ${FEATURES}; then - cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src" - fi - - sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die - X - ;;; ${EMACS_SUFFIX} site-lisp configuration - X - (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version) - Y (setq find-function-C-source-directory - Y "${EPREFIX}${cdir}") - X (let ((path (getenv "INFOPATH")) - X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}") - X (re "\\\\\`${EPREFIX}/usr/share\\\\>")) - X (and path - X ;; move Emacs Info dir before anything else in /usr/share - X (let* ((p (cons nil (split-string path ":" t))) (q p)) - X (while (and (cdr q) (not (string-match re (cadr q)))) - X (setq q (cdr q))) - X (setcdr q (cons dir (delete dir (cdr q)))) - X (setenv "INFOPATH" (mapconcat 'identity (cdr p) ":")))))) - EOF - elisp-site-file-install "${T}/${SITEFILE}" || die - - dodoc README BUGS CONTRIBUTE - - if use gui && use aqua; then - dodir /Applications/Gentoo - rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die - mv nextstep/Emacs.app \ - "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die - fi - - local DOC_CONTENTS="You can set the version to be started by - /usr/bin/emacs through the Emacs eselect module, which also - redirects man and info pages. Therefore, several Emacs versions can - be installed at the same time. \"man emacs.eselect\" for details. - \\n\\nIf you upgrade from a previous major version of Emacs, then - it is strongly recommended that you use app-admin/emacs-updater - to rebuild all byte-compiled elisp files of the installed Emacs - packages." - if use gui; then - DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs. - Installing media-fonts/font-adobe-{75,100}dpi on the X server's - machine would satisfy basic Emacs requirements under X11. - See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs - for how to enable anti-aliased fonts." - use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in - \"${EPREFIX}/Applications/Gentoo\". You may want to copy or - symlink it into /Applications by yourself." - fi - readme.gentoo_create_doc -} - -pkg_preinst() { - # verify that the PM hasn't removed our Info directory index #257260 - local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}" - [[ -f ${infodir}/dir || ! -d ${infodir} ]] || die -} - -pkg_postinst() { - elisp-site-regen - readme.gentoo_print_elog - - if use livecd; then - # force an update of the emacs symlink for the livecd/dvd, - # because some microemacs packages set it with USE=livecd - eselect emacs update - else - eselect emacs update ifunset - fi -} - -pkg_postrm() { - elisp-site-regen - eselect emacs update ifunset -} diff --git a/app-editors/emacs/emacs-26.3-r18.ebuild b/app-editors/emacs/emacs-26.3-r18.ebuild index 0be75dd210f1..4129c9010e8b 100644 --- a/app-editors/emacs/emacs-26.3-r18.ebuild +++ b/app-editors/emacs/emacs-26.3-r18.ebuild @@ -17,7 +17,7 @@ S="${WORKDIR}/emacs-${FULL_VERSION}" LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2" SLOT="26" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif gpm gsettings gtk gui gzip-el imagemagick +inotify jpeg kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm xwidgets zlib" RDEPEND="app-emacs/emacs-common[games?,gui(-)?] @@ -132,6 +132,9 @@ src_configure() { replace-flags "-O[3-9]" -O2 fi + # We want floating-point arithmetic to be correct #933380 + append-flags -fno-fast-math -ffp-contract=off + local myconf if use alsa; then diff --git a/app-editors/emacs/emacs-27.2-r14.ebuild b/app-editors/emacs/emacs-27.2-r14.ebuild deleted file mode 100644 index e78f3b3c6a1b..000000000000 --- a/app-editors/emacs/emacs-27.2-r14.ebuild +++ /dev/null @@ -1,445 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs - -if [[ ${PV##*.} = 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git" - EGIT_BRANCH="emacs-27" - EGIT_CHECKOUT_DIR="${WORKDIR}/emacs" - S="${EGIT_CHECKOUT_DIR}" - SLOT="${PV%%.*}-vcs" -else - # FULL_VERSION keeps the full version number, which is needed in - # order to determine some path information correctly for copy/move - # operations later on - FULL_VERSION="${PV%%_*}" - SRC_URI="mirror://gnu/emacs/${P}.tar.xz" - S="${WORKDIR}/emacs-${FULL_VERSION}" - # PV can be in any of the following formats: - # 27.1 released version (slot 27) - # 27.1_rc1 upstream release candidate (27) - # 27.0.9999 live ebuild (slot 27-vcs) - # 27.0.90 upstream prerelease snapshot (27-vcs) - # 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs) - if [[ ${PV} == *_pre* ]]; then - SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz" - S="${WORKDIR}/emacs" - elif [[ ${PV//[0-9]} != "." ]]; then - SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz" - fi - # Patchset from proj/emacs-patches.git - SRC_URI+=" https://dev.gentoo.org/~ulm/emacs/${P}-patches-7.tar.xz" - PATCHES=("${WORKDIR}/patch") - SLOT="${PV%%.*}" - [[ ${PV} == *.*.* ]] && SLOT+="-vcs" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" -fi - -DESCRIPTION="The extensible, customizable, self-documenting real-time display editor" -HOMEPAGE="https://www.gnu.org/software/emacs/" - -LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2" -IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm xwidgets zlib" -RESTRICT="test" - -RDEPEND="app-emacs/emacs-common[games?,gui(-)?] - sys-libs/ncurses:0= - acl? ( virtual/acl ) - alsa? ( media-libs/alsa-lib ) - dbus? ( sys-apps/dbus ) - games? ( acct-group/gamestat ) - gmp? ( dev-libs/gmp:0= ) - gpm? ( sys-libs/gpm ) - !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) ) - json? ( dev-libs/jansson:= ) - kerberos? ( virtual/krb5 ) - lcms? ( media-libs/lcms:2 ) - libxml2? ( >=dev-libs/libxml2-2.2.0 ) - mailutils? ( net-mail/mailutils[clients] ) - !mailutils? ( acct-group/mail net-libs/liblockfile ) - selinux? ( sys-libs/libselinux ) - ssl? ( net-libs/gnutls:0= ) - systemd? ( sys-apps/systemd ) - valgrind? ( dev-debug/valgrind ) - zlib? ( sys-libs/zlib ) - gui? ( !aqua? ( - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXinerama - x11-libs/libXrandr - x11-libs/libxcb - x11-misc/xbitmaps - gsettings? ( >=dev-libs/glib-2.28.6 ) - gif? ( media-libs/giflib:0= ) - jpeg? ( media-libs/libjpeg-turbo:0= ) - png? ( >=media-libs/libpng-1.4:0= ) - svg? ( >=gnome-base/librsvg-2.0 ) - tiff? ( media-libs/tiff:= ) - xpm? ( x11-libs/libXpm ) - imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] ) - xft? ( - media-libs/fontconfig - media-libs/freetype - x11-libs/libXrender - cairo? ( >=x11-libs/cairo-1.12.18[X] ) - !cairo? ( x11-libs/libXft ) - harfbuzz? ( media-libs/harfbuzz:0= ) - m17n-lib? ( - >=dev-libs/libotf-0.9.4 - >=dev-libs/m17n-lib-1.5.1 - ) - ) - gtk? ( - x11-libs/gtk+:3 - xwidgets? ( - net-libs/webkit-gtk:4.1= - x11-libs/libXcomposite - ) - ) - !gtk? ( - motif? ( - >=x11-libs/motif-2.3:0 - x11-libs/libXpm - x11-libs/libXmu - x11-libs/libXt - ) - !motif? ( - Xaw3d? ( - x11-libs/libXaw3d - x11-libs/libXmu - x11-libs/libXt - ) - !Xaw3d? ( athena? ( - x11-libs/libXaw - x11-libs/libXmu - x11-libs/libXt - ) ) - ) - ) - ) )" - -DEPEND="${RDEPEND} - gui? ( !aqua? ( x11-base/xorg-proto ) )" - -BDEPEND="sys-apps/texinfo - virtual/pkgconfig - gzip-el? ( app-arch/gzip )" - -IDEPEND="app-eselect/eselect-emacs" - -RDEPEND+=" ${IDEPEND}" - -EMACS_SUFFIX="emacs-${SLOT}" -SITEFILE="20${EMACS_SUFFIX}-gentoo.el" - -# Suppress false positive QA warnings #898304 #925449 -QA_CONFIG_IMPL_DECL_SKIP=( - malloc_set_state malloc_get_state MIN - statvfs64 re_set_syntax re_compile_pattern re_search re_match -) - -src_prepare() { - if [[ ${PV##*.} = 9999 ]]; then - FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \ - configure.ac) - [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version" - einfo "Emacs branch: ${EGIT_BRANCH}" - einfo "Commit: ${EGIT_VERSION}" - einfo "Emacs version number: ${FULL_VERSION}" - [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \ - || die "Upstream version number changed to ${FULL_VERSION}" - fi - - default - - # Fix filename reference in redirected man page - sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die - - AT_M4DIR=m4 eautoreconf -} - -src_configure() { - local myconf - - if use alsa; then - use sound || ewarn \ - "USE flag \"alsa\" overrides \"-sound\"; enabling sound support." - myconf+=" --with-sound=alsa" - else - myconf+=" --with-sound=$(usex sound oss)" - fi - - if ! use gui; then - einfo "Configuring to build without window system support" - myconf+=" --without-x --without-ns" - elif use aqua; then - einfo "Configuring to build with Nextstep (Macintosh Cocoa) support" - myconf+=" --with-ns --disable-ns-self-contained" - myconf+=" --without-x" - else - myconf+=" --with-x --without-ns" - myconf+=" --without-gconf" - myconf+=" $(use_with gsettings)" - myconf+=" $(use_with toolkit-scroll-bars)" - myconf+=" $(use_with gif)" - myconf+=" $(use_with jpeg)" - myconf+=" $(use_with png)" - myconf+=" $(use_with svg rsvg)" - myconf+=" $(use_with tiff)" - myconf+=" $(use_with xpm)" - myconf+=" $(use_with imagemagick)" - - if use xft; then - myconf+=" --with-xft" - myconf+=" $(use_with cairo)" - myconf+=" $(use_with harfbuzz)" - myconf+=" $(use_with m17n-lib libotf)" - myconf+=" $(use_with m17n-lib m17n-flt)" - else - myconf+=" --without-xft" - myconf+=" --without-cairo" - myconf+=" --without-libotf --without-m17n-flt" - use cairo && ewarn \ - "USE flag \"cairo\" has no effect if \"xft\" is not set." - use m17n-lib && ewarn \ - "USE flag \"m17n-lib\" has no effect if \"xft\" is not set." - fi - - local f line - if use gtk; then - einfo "Configuring to build with GIMP Toolkit (GTK+)" - while read line; do ewarn "${line}"; done <<-EOF - Your version of GTK+ will have problems with closing open - displays. This is no problem if you just use one display, but - if you use more than one and close one of them Emacs may crash. - See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and - <https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>. - If you intend to use more than one display, then it is strongly - recommended that you compile Emacs with the Athena/Lucid or the - Motif toolkit instead. - EOF - myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)" - for f in motif Xaw3d athena; do - use ${f} && ewarn \ - "USE flag \"${f}\" has no effect if \"gtk\" is set." - done - elif use motif; then - einfo "Configuring to build with Motif toolkit" - myconf+=" --with-x-toolkit=motif" - for f in Xaw3d athena; do - use ${f} && ewarn \ - "USE flag \"${f}\" has no effect if \"motif\" is set." - done - elif use athena || use Xaw3d; then - einfo "Configuring to build with Athena/Lucid toolkit" - myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)" - else - einfo "Configuring to build with no toolkit" - myconf+=" --with-x-toolkit=no" - fi - ! use gtk && use xwidgets && ewarn \ - "USE flag \"xwidgets\" has no effect if \"gtk\" is not set." - fi - - if tc-is-cross-compiler; then - # Configure a CBUILD directory when cross-compiling to make tools - mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die - ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit - popd >/dev/null || die - # Don't try to execute the binary for dumping during the build - myconf+=" --with-dumping=none" - elif use m68k; then - # Workaround for https://debbugs.gnu.org/44531 - myconf+=" --with-dumping=unexec" - else - myconf+=" --with-dumping=pdumper" - fi - - econf \ - --program-suffix="-${EMACS_SUFFIX}" \ - --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \ - --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \ - --localstatedir="${EPREFIX}"/var \ - --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \ - --without-compress-install \ - --without-hesiod \ - --without-pop \ - --with-file-notification=$(usev inotify || usev gfile || echo no) \ - --with-pdumper \ - $(use_enable acl) \ - $(use_with dbus) \ - $(use_with dynamic-loading modules) \ - $(use_with games gameuser ":gamestat") \ - $(use_with gmp libgmp) \ - $(use_with gpm) \ - $(use_with json) \ - $(use_with kerberos) $(use_with kerberos kerberos5) \ - $(use_with lcms lcms2) \ - $(use_with libxml2 xml2) \ - $(use_with mailutils) \ - $(use_with selinux) \ - $(use_with ssl gnutls) \ - $(use_with systemd libsystemd) \ - $(use_with threads) \ - $(use_with wide-int) \ - $(use_with zlib) \ - ${myconf} -} - -src_compile() { - export ac_cv_header_valgrind_valgrind_h=$(usex valgrind) - - if tc-is-cross-compiler; then - # Build native tools for compiling lisp etc. - emake -C "${S}-build" src - emake lib # Cross-compile dependencies first for timestamps - # Save native build tools in the cross-directory - cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die - # Specify the native Emacs to compile lisp - emake -C lisp all EMACS="${S}-build/src/emacs" - fi - - emake -} - -src_install() { - emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install - - mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die - mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die - mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die - - # dissuade Portage from removing our dir file #257260 - touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir - docompress -x /usr/share/info/${EMACS_SUFFIX}/dir - - # movemail must be setgid mail - if ! use mailutils; then - fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail - fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail - fi - - # avoid collision between slots, see bug #169033 e.g. - rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die - rm -rf "${ED}"/usr/share/{applications,icons} || die - rm -rf "${ED}/usr/$(get_libdir)" || die - rm -rf "${ED}"/var || die - - # remove unused <version>/site-lisp dir - rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die - - # remove COPYING file (except for etc/COPYING used by describe-copying) - rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die - - if use systemd; then - insinto /usr/lib/systemd/user - sed -e "/^##/d" \ - -e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \ - -e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \ - etc/emacs.service | newins - ${EMACS_SUFFIX}.service - assert - fi - - if use gzip-el; then - # compress .el files when a corresponding .elc exists - find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \ - -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n - assert "gzip .el failed" - fi - - local cdir - if use source; then - cdir="/usr/share/emacs/${FULL_VERSION}/src" - insinto "${cdir}" - # This is not meant to install all the source -- just the - # C source you might find via find-function - doins src/*.{c,h,m} - elif has installsources ${FEATURES}; then - cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src" - fi - - sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die - X - ;;; ${EMACS_SUFFIX} site-lisp configuration - X - (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version) - Y (setq find-function-C-source-directory - Y "${EPREFIX}${cdir}") - X (let ((path (getenv "INFOPATH")) - X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}") - X (re "\\\\\`${EPREFIX}/usr/share\\\\>")) - X (and path - X ;; move Emacs Info dir before anything else in /usr/share - X (let* ((p (cons nil (split-string path ":" t))) (q p)) - X (while (and (cdr q) (not (string-match re (cadr q)))) - X (setq q (cdr q))) - X (setcdr q (cons dir (delete dir (cdr q)))) - X (setenv "INFOPATH" (mapconcat 'identity (cdr p) ":")))))) - EOF - elisp-site-file-install "${T}/${SITEFILE}" || die - - dodoc README BUGS CONTRIBUTE - - if use gui && use aqua; then - dodir /Applications/Gentoo - rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die - mv nextstep/Emacs.app \ - "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die - fi - - local DOC_CONTENTS="You can set the version to be started by - /usr/bin/emacs through the Emacs eselect module, which also - redirects man and info pages. Therefore, several Emacs versions can - be installed at the same time. \"man emacs.eselect\" for details. - \\n\\nIf you upgrade from a previous major version of Emacs, then - it is strongly recommended that you use app-admin/emacs-updater - to rebuild all byte-compiled elisp files of the installed Emacs - packages." - if use gui; then - DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs. - Installing media-fonts/font-adobe-{75,100}dpi on the X server's - machine would satisfy basic Emacs requirements under X11. - See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs - for how to enable anti-aliased fonts." - use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in - \"${EPREFIX}/Applications/Gentoo\". You may want to copy or - symlink it into /Applications by yourself." - fi - tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write - a portable dump file due to being cross-compiled. - To create this file at run time, execute the following command: - \\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable - \"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'" - readme.gentoo_create_doc -} - -pkg_preinst() { - # verify that the PM hasn't removed our Info directory index #257260 - local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}" - [[ -f ${infodir}/dir || ! -d ${infodir} ]] || die -} - -pkg_postinst() { - elisp-site-regen - readme.gentoo_print_elog - - if use livecd; then - # force an update of the emacs symlink for the livecd/dvd, - # because some microemacs packages set it with USE=livecd - eselect emacs update - else - eselect emacs update ifunset - fi -} - -pkg_postrm() { - elisp-site-regen - eselect emacs update ifunset -} diff --git a/app-editors/emacs/emacs-27.2-r16.ebuild b/app-editors/emacs/emacs-27.2-r16.ebuild index 637e1687ae4b..8606abac7305 100644 --- a/app-editors/emacs/emacs-27.2-r16.ebuild +++ b/app-editors/emacs/emacs-27.2-r16.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs +inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs if [[ ${PV##*.} = 9999 ]]; then inherit git-r3 @@ -36,7 +36,7 @@ else PATCHES=("${WORKDIR}/patch") SLOT="${PV%%.*}" [[ ${PV} == *.*.* ]] && SLOT+="-vcs" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" fi DESCRIPTION="The extensible, customizable, self-documenting real-time display editor" @@ -166,6 +166,10 @@ src_prepare() { } src_configure() { + # We want floating-point arithmetic to be correct #933380 + replace-flags -Ofast -O3 + append-flags -fno-fast-math -ffp-contract=off + local myconf if use alsa; then @@ -250,7 +254,7 @@ src_configure() { if tc-is-cross-compiler; then # Configure a CBUILD directory when cross-compiling to make tools - mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die + mkdir -p "${S}-build" && pushd "${S}-build" >/dev/null || die ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit popd >/dev/null || die # Don't try to execute the binary for dumping during the build diff --git a/app-editors/emacs/emacs-28.2-r10.ebuild b/app-editors/emacs/emacs-28.2-r10.ebuild deleted file mode 100644 index 586ed615a6f0..000000000000 --- a/app-editors/emacs/emacs-28.2-r10.ebuild +++ /dev/null @@ -1,536 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs - -if [[ ${PV##*.} = 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git" - EGIT_BRANCH="emacs-28" - EGIT_CHECKOUT_DIR="${WORKDIR}/emacs" - S="${EGIT_CHECKOUT_DIR}" - SLOT="${PV%%.*}-vcs" -else - # FULL_VERSION keeps the full version number, which is needed in - # order to determine some path information correctly for copy/move - # operations later on - FULL_VERSION="${PV%%_*}" - SRC_URI="mirror://gnu/emacs/${P}.tar.xz" - S="${WORKDIR}/emacs-${FULL_VERSION}" - # PV can be in any of the following formats: - # 27.1 released version (slot 27) - # 27.1_rc1 upstream release candidate (27) - # 27.0.9999 live ebuild (slot 27-vcs) - # 27.0.90 upstream prerelease snapshot (27-vcs) - # 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs) - if [[ ${PV} == *_pre* ]]; then - SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz" - S="${WORKDIR}/emacs" - elif [[ ${PV//[0-9]} != "." ]]; then - SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz" - fi - # Patchset from proj/emacs-patches.git - SRC_URI+=" https://dev.gentoo.org/~ulm/emacs/${P}-patches-5.tar.xz" - PATCHES=("${WORKDIR}/patch") - SLOT="${PV%%.*}" - [[ ${PV} == *.*.* ]] && SLOT+="-vcs" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" -fi - -DESCRIPTION="The extensible, customizable, self-documenting real-time display editor" -HOMEPAGE="https://www.gnu.org/software/emacs/" - -LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2" -IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm xwidgets zlib" - -RDEPEND="app-emacs/emacs-common[games?,gui(-)?] - sys-libs/ncurses:0= - acl? ( virtual/acl ) - alsa? ( media-libs/alsa-lib ) - dbus? ( sys-apps/dbus ) - games? ( acct-group/gamestat ) - gmp? ( dev-libs/gmp:0= ) - gpm? ( sys-libs/gpm ) - !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) ) - jit? ( - sys-devel/gcc:=[jit(-)] - sys-libs/zlib - ) - json? ( dev-libs/jansson:= ) - kerberos? ( virtual/krb5 ) - lcms? ( media-libs/lcms:2 ) - libxml2? ( >=dev-libs/libxml2-2.2.0 ) - mailutils? ( net-mail/mailutils[clients] ) - !mailutils? ( acct-group/mail net-libs/liblockfile ) - selinux? ( sys-libs/libselinux ) - ssl? ( net-libs/gnutls:0= ) - systemd? ( sys-apps/systemd ) - valgrind? ( dev-debug/valgrind ) - zlib? ( sys-libs/zlib ) - gui? ( !aqua? ( - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXinerama - x11-libs/libXrandr - x11-libs/libxcb - x11-misc/xbitmaps - gsettings? ( >=dev-libs/glib-2.28.6 ) - gif? ( media-libs/giflib:0= ) - jpeg? ( media-libs/libjpeg-turbo:0= ) - png? ( >=media-libs/libpng-1.4:0= ) - svg? ( >=gnome-base/librsvg-2.0 ) - tiff? ( media-libs/tiff:= ) - xpm? ( x11-libs/libXpm ) - imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] ) - xft? ( - media-libs/fontconfig - media-libs/freetype - x11-libs/libXrender - cairo? ( >=x11-libs/cairo-1.12.18[X] ) - !cairo? ( x11-libs/libXft ) - harfbuzz? ( media-libs/harfbuzz:0= ) - m17n-lib? ( - >=dev-libs/libotf-0.9.4 - >=dev-libs/m17n-lib-1.5.1 - ) - ) - gtk? ( - x11-libs/gtk+:3 - xwidgets? ( - net-libs/webkit-gtk:4.1= - x11-libs/libXcomposite - ) - ) - !gtk? ( - motif? ( - >=x11-libs/motif-2.3:0 - x11-libs/libXpm - x11-libs/libXmu - x11-libs/libXt - ) - !motif? ( - Xaw3d? ( - x11-libs/libXaw3d - x11-libs/libXmu - x11-libs/libXt - ) - !Xaw3d? ( athena? ( - x11-libs/libXaw - x11-libs/libXmu - x11-libs/libXt - ) ) - ) - ) - ) )" - -DEPEND="${RDEPEND} - gui? ( !aqua? ( x11-base/xorg-proto ) )" - -BDEPEND="sys-apps/texinfo - virtual/pkgconfig - gzip-el? ( app-arch/gzip )" - -IDEPEND="app-eselect/eselect-emacs" - -RDEPEND+=" ${IDEPEND}" - -EMACS_SUFFIX="emacs-${SLOT}" -SITEFILE="20${EMACS_SUFFIX}-gentoo.el" - -# Suppress false positive QA warnings #898304 #925449 -QA_CONFIG_IMPL_DECL_SKIP=( - malloc_set_state malloc_get_state MIN - statvfs64 re_set_syntax re_compile_pattern re_search re_match -) - -src_prepare() { - if [[ ${PV##*.} = 9999 ]]; then - FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[^0-9.]*\([0-9.]*\).*/\1/p' \ - configure.ac) - [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version" - einfo "Emacs branch: ${EGIT_BRANCH}" - einfo "Commit: ${EGIT_VERSION}" - einfo "Emacs version number: ${FULL_VERSION}" - [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \ - || die "Upstream version number changed to ${FULL_VERSION}" - fi - - if use jit; then - export NATIVE_FULL_AOT=1 - find lisp -type f -name "*.elc" -delete || die - - # These files ignore LDFLAGS. We assign the variable here, because - # for live ebuilds FULL_VERSION doesn't exist in global scope - QA_FLAGS_IGNORED="usr/$(get_libdir)/emacs/${FULL_VERSION}/native-lisp/.*" - - # gccjit doesn't play well with ccache or distcc #801580 - # For now, work around the problem with an explicit LIBRARY_PATH - has ccache ${FEATURES} || has distcc ${FEATURES} && tc-is-gcc \ - && export LIBRARY_PATH=$("$(tc-getCC)" -print-search-dirs \ - | sed -n '/^libraries:/{s:^[^/]*::;p}') - fi - - default - - # Fix filename reference in redirected man page - sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die - - # Tests that use bubblewrap don't work in the sandbox: - # "bwrap: setting up uid map: Permission denied" - # So, disrupt the search for the bwrap executable. - sed -i -e 's/(executable-find "bwrap")/nil/' test/src/emacs-tests.el \ - test/lisp/emacs-lisp/bytecomp-tests.el || die - - AT_M4DIR=m4 eautoreconf -} - -src_configure() { - local myconf - - # Prevents e.g. tests interfering with running Emacs. - unset EMACS_SOCKET_NAME - - if use alsa; then - use sound || ewarn \ - "USE flag \"alsa\" overrides \"-sound\"; enabling sound support." - myconf+=" --with-sound=alsa" - else - myconf+=" --with-sound=$(usex sound oss)" - fi - - if use jit; then - use zlib || ewarn \ - "USE flag \"jit\" overrides \"-zlib\"; enabling zlib support." - myconf+=" --with-zlib" - else - myconf+=" $(use_with zlib)" - fi - - if ! use gui; then - einfo "Configuring to build without window system support" - myconf+=" --without-x --without-ns" - elif use aqua; then - einfo "Configuring to build with Nextstep (Macintosh Cocoa) support" - myconf+=" --with-ns --disable-ns-self-contained" - myconf+=" --without-x" - else - myconf+=" --with-x --without-ns" - myconf+=" --without-gconf" - myconf+=" $(use_with gsettings)" - myconf+=" $(use_with toolkit-scroll-bars)" - myconf+=" $(use_with gif)" - myconf+=" $(use_with jpeg)" - myconf+=" $(use_with png)" - myconf+=" $(use_with svg rsvg)" - myconf+=" $(use_with tiff)" - myconf+=" $(use_with xpm)" - myconf+=" $(use_with imagemagick)" - - if use xft; then - myconf+=" --with-xft" - myconf+=" $(use_with cairo)" - myconf+=" $(use_with harfbuzz)" - myconf+=" $(use_with m17n-lib libotf)" - myconf+=" $(use_with m17n-lib m17n-flt)" - else - myconf+=" --without-xft" - myconf+=" --without-cairo" - myconf+=" --without-libotf --without-m17n-flt" - use cairo && ewarn \ - "USE flag \"cairo\" has no effect if \"xft\" is not set." - use m17n-lib && ewarn \ - "USE flag \"m17n-lib\" has no effect if \"xft\" is not set." - fi - - local f line - if use gtk; then - einfo "Configuring to build with GIMP Toolkit (GTK+)" - while read line; do ewarn "${line}"; done <<-EOF - Your version of GTK+ will have problems with closing open - displays. This is no problem if you just use one display, but - if you use more than one and close one of them Emacs may crash. - See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and - <https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>. - If you intend to use more than one display, then it is strongly - recommended that you compile Emacs with the Athena/Lucid or the - Motif toolkit instead. - EOF - myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)" - for f in motif Xaw3d athena; do - use ${f} && ewarn \ - "USE flag \"${f}\" has no effect if \"gtk\" is set." - done - elif use motif; then - einfo "Configuring to build with Motif toolkit" - myconf+=" --with-x-toolkit=motif" - for f in Xaw3d athena; do - use ${f} && ewarn \ - "USE flag \"${f}\" has no effect if \"motif\" is set." - done - elif use athena || use Xaw3d; then - einfo "Configuring to build with Athena/Lucid toolkit" - myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)" - else - einfo "Configuring to build with no toolkit" - myconf+=" --with-x-toolkit=no" - fi - ! use gtk && use xwidgets && ewarn \ - "USE flag \"xwidgets\" has no effect if \"gtk\" is not set." - fi - - if tc-is-cross-compiler; then - # Configure a CBUILD directory when cross-compiling to make tools - mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die - ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit - popd >/dev/null || die - # Don't try to execute the binary for dumping during the build - myconf+=" --with-dumping=none" - elif use m68k; then - # Workaround for https://debbugs.gnu.org/44531 - myconf+=" --with-dumping=unexec" - else - myconf+=" --with-dumping=pdumper" - fi - - econf \ - --program-suffix="-${EMACS_SUFFIX}" \ - --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \ - --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \ - --localstatedir="${EPREFIX}"/var \ - --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \ - --without-compress-install \ - --without-hesiod \ - --without-pop \ - --with-file-notification=$(usev inotify || usev gfile || echo no) \ - --with-pdumper \ - $(use_enable acl) \ - $(use_with dbus) \ - $(use_with dynamic-loading modules) \ - $(use_with games gameuser ":gamestat") \ - $(use_with gmp libgmp) \ - $(use_with gpm) \ - $(use_with jit native-compilation) \ - $(use_with json) \ - $(use_with kerberos) $(use_with kerberos kerberos5) \ - $(use_with lcms lcms2) \ - $(use_with libxml2 xml2) \ - $(use_with mailutils) \ - $(use_with selinux) \ - $(use_with ssl gnutls) \ - $(use_with systemd libsystemd) \ - $(use_with threads) \ - $(use_with wide-int) \ - ${myconf} -} - -src_compile() { - export ac_cv_header_valgrind_valgrind_h=$(usex valgrind) - append-cppflags -DUSE_VALGRIND=$(usex valgrind) - - if tc-is-cross-compiler; then - # Build native tools for compiling lisp etc. - emake -C "${S}-build" src - emake lib # Cross-compile dependencies first for timestamps - # Save native build tools in the cross-directory - cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die - # Specify the native Emacs to compile lisp - emake -C lisp all EMACS="${S}-build/src/emacs" - fi - - emake -} - -src_test() { - # List .el test files with a comment above listing the exact - # subtests which caused failure. Elements should begin with a %. - # e.g. %lisp/gnus/mml-sec-tests.el. - local exclude_tests=( - # Reason: not yet known - # mml-secure-en-decrypt-{1,2,3,4} - # mml-secure-find-usable-keys-{1,2} - # mml-secure-key-checks - # mml-secure-select-preferred-keys-4 - # mml-secure-sign-verify-1 - %lisp/gnus/mml-sec-tests.el - - # Reason: race condition - # Looks like it should be fixed in 29.x at least: - # https://debbugs.gnu.org/cgi/bugreport.cgi?bug=55706 - # files-tests-file-name-non-special-file-in-directory-p - %lisp/files-tests.el - - # Reason: permission denied on /nonexistent - # (vc-*-bzr only fails if breezy is installed, as they - # try to access cache dirs under /nonexistent) - # - # rmail-undigest-test-multipart-mixed-digest - # rmail-undigest-test-rfc1153-less-strict-digest - # rmail-undigest-test-rfc1153-sloppy-digest - # rmail-undigest-test-rfc934-digest - # vc-test-bzr02-state - # vc-test-bzr05-rename-file - # vc-test-bzr06-version-diff - # vc-bzr-test-bug9781 - %lisp/mail/undigest-tests.el - %lisp/vc/vc-tests.el - %lisp/vc/vc-bzr-tests.el - - # Reason: some copyright years differ - %lisp/emacs-lisp/copyright-tests.el - - # Reason: quoting issues (fixed in Emacs 29) - %lib-src/emacsclient-tests.el - ) - use threads || exclude_tests+=( - %src/emacs-module-tests.el - %src/keyboard-tests.el - %src/thread-tests.el - ) - - # See test/README for possible options - emake \ - EMACS_TEST_VERBOSE=1 \ - EXCLUDE_TESTS="${exclude_tests[*]}" \ - TEST_BACKTRACE_LINE_LENGTH=nil \ - check -} - -src_install() { - emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install - - mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die - mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die - mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.metainfo.xml || die - - # dissuade Portage from removing our dir file #257260 - touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir - docompress -x /usr/share/info/${EMACS_SUFFIX}/dir - - # movemail must be setgid mail - if ! use mailutils; then - fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail - fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail - fi - - # avoid collision between slots, see bug #169033 e.g. - rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die - rm -rf "${ED}"/usr/share/{applications,icons} || die - rm -rf "${ED}/usr/$(get_libdir)/systemd" || die - rm -rf "${ED}"/var || die - - # remove unused <version>/site-lisp dir - rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die - - # remove COPYING file (except for etc/COPYING used by describe-copying) - rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die - - if use systemd; then - insinto /usr/lib/systemd/user - sed -e "/^##/d" \ - -e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \ - -e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \ - etc/emacs.service | newins - ${EMACS_SUFFIX}.service - assert - fi - - if use gzip-el; then - # compress .el files when a corresponding .elc exists - find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \ - -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n - assert "gzip .el failed" - fi - - local cdir - if use source; then - cdir="/usr/share/emacs/${FULL_VERSION}/src" - insinto "${cdir}" - # This is not meant to install all the source -- just the - # C source you might find via find-function - doins src/*.{c,h,m} - elif has installsources ${FEATURES}; then - cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src" - fi - - sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die - X - ;;; ${EMACS_SUFFIX} site-lisp configuration - X - (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version) - Y (setq find-function-C-source-directory - Y "${EPREFIX}${cdir}") - X (let ((path (getenv "INFOPATH")) - X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}") - X (re "\\\\\`${EPREFIX}/usr/share\\\\>")) - X (and path - X ;; move Emacs Info dir before anything else in /usr/share - X (let* ((p (cons nil (split-string path ":" t))) (q p)) - X (while (and (cdr q) (not (string-match re (cadr q)))) - X (setq q (cdr q))) - X (setcdr q (cons dir (delete dir (cdr q)))) - X (setenv "INFOPATH" (mapconcat 'identity (cdr p) ":")))))) - EOF - elisp-site-file-install "${T}/${SITEFILE}" || die - - dodoc README BUGS CONTRIBUTE - - if use gui && use aqua; then - dodir /Applications/Gentoo - rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die - mv nextstep/Emacs.app \ - "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die - fi - - local DOC_CONTENTS="You can set the version to be started by - /usr/bin/emacs through the Emacs eselect module, which also - redirects man and info pages. Therefore, several Emacs versions can - be installed at the same time. \"man emacs.eselect\" for details. - \\n\\nIf you upgrade from a previous major version of Emacs, then - it is strongly recommended that you use app-admin/emacs-updater - to rebuild all byte-compiled elisp files of the installed Emacs - packages." - if use gui; then - DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs. - Installing media-fonts/font-adobe-{75,100}dpi on the X server's - machine would satisfy basic Emacs requirements under X11. - See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs - for how to enable anti-aliased fonts." - use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in - \"${EPREFIX}/Applications/Gentoo\". You may want to copy or - symlink it into /Applications by yourself." - fi - tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write - a portable dump file due to being cross-compiled. - To create this file at run time, execute the following command: - \\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable - \"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'" - readme.gentoo_create_doc -} - -pkg_preinst() { - # verify that the PM hasn't removed our Info directory index #257260 - local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}" - [[ -f ${infodir}/dir || ! -d ${infodir} ]] || die -} - -pkg_postinst() { - elisp-site-regen - readme.gentoo_print_elog - - if use livecd; then - # force an update of the emacs symlink for the livecd/dvd, - # because some microemacs packages set it with USE=livecd - eselect emacs update - else - eselect emacs update ifunset - fi -} - -pkg_postrm() { - elisp-site-regen - eselect emacs update ifunset -} diff --git a/app-editors/emacs/emacs-28.2-r12.ebuild b/app-editors/emacs/emacs-28.2-r12.ebuild index 5fc93e210add..81ba9aa1b2a0 100644 --- a/app-editors/emacs/emacs-28.2-r12.ebuild +++ b/app-editors/emacs/emacs-28.2-r12.ebuild @@ -36,7 +36,7 @@ else PATCHES=("${WORKDIR}/patch") SLOT="${PV%%.*}" [[ ${PV} == *.*.* ]] && SLOT+="-vcs" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" fi DESCRIPTION="The extensible, customizable, self-documenting real-time display editor" @@ -190,6 +190,10 @@ src_prepare() { } src_configure() { + # We want floating-point arithmetic to be correct #933380 + replace-flags -Ofast -O3 + append-flags -fno-fast-math -ffp-contract=off + local myconf # Prevents e.g. tests interfering with running Emacs. @@ -285,7 +289,7 @@ src_configure() { if tc-is-cross-compiler; then # Configure a CBUILD directory when cross-compiling to make tools - mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die + mkdir -p "${S}-build" && pushd "${S}-build" >/dev/null || die ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit popd >/dev/null || die # Don't try to execute the binary for dumping during the build diff --git a/app-editors/emacs/emacs-29.2-r2.ebuild b/app-editors/emacs/emacs-29.2-r2.ebuild deleted file mode 100644 index 970be5ea8634..000000000000 --- a/app-editors/emacs/emacs-29.2-r2.ebuild +++ /dev/null @@ -1,619 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs - -if [[ ${PV##*.} = 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git" - EGIT_BRANCH="emacs-29" - EGIT_CHECKOUT_DIR="${WORKDIR}/emacs" - S="${EGIT_CHECKOUT_DIR}" - SLOT="${PV%%.*}-vcs" -else - # FULL_VERSION keeps the full version number, which is needed in - # order to determine some path information correctly for copy/move - # operations later on - FULL_VERSION="${PV%%_*}" - SRC_URI="mirror://gnu/emacs/${P}.tar.xz" - S="${WORKDIR}/emacs-${FULL_VERSION}" - # PV can be in any of the following formats: - # 27.1 released version (slot 27) - # 27.1_rc1 upstream release candidate (27) - # 27.0.9999 live ebuild (slot 27-vcs) - # 27.0.90 upstream prerelease snapshot (27-vcs) - # 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs) - if [[ ${PV} == *_pre* ]]; then - SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz" - S="${WORKDIR}/emacs" - elif [[ ${PV//[0-9]} != "." ]]; then - SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz" - fi - # Patchset from proj/emacs-patches.git - SRC_URI+=" https://dev.gentoo.org/~ulm/emacs/${P}-patches-2.tar.xz" - PATCHES=("${WORKDIR}/patch") - SLOT="${PV%%.*}" - [[ ${PV} == *.*.* ]] && SLOT+="-vcs" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" -fi - -DESCRIPTION="The extensible, customizable, self-documenting real-time display editor" -HOMEPAGE="https://www.gnu.org/software/emacs/" - -LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2" -IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source sqlite ssl svg systemd +threads tiff toolkit-scroll-bars tree-sitter valgrind webp wide-int +X Xaw3d xft +xpm xwidgets zlib" - -X_DEPEND="x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXi - x11-libs/libXinerama - x11-libs/libXrandr - x11-libs/libxcb - x11-libs/xcb-util - x11-misc/xbitmaps - xpm? ( x11-libs/libXpm ) - xft? ( - media-libs/fontconfig - media-libs/freetype - x11-libs/libXrender - cairo? ( >=x11-libs/cairo-1.12.18[X] ) - !cairo? ( x11-libs/libXft ) - harfbuzz? ( media-libs/harfbuzz:0= ) - m17n-lib? ( - >=dev-libs/libotf-0.9.4 - >=dev-libs/m17n-lib-1.5.1 - ) - ) - gtk? ( - x11-libs/gtk+:3 - xwidgets? ( - net-libs/webkit-gtk:4.1= - x11-libs/libXcomposite - ) - ) - !gtk? ( - motif? ( - >=x11-libs/motif-2.3:0 - x11-libs/libXpm - x11-libs/libXmu - x11-libs/libXt - ) - !motif? ( - Xaw3d? ( - x11-libs/libXaw3d - x11-libs/libXmu - x11-libs/libXt - ) - !Xaw3d? ( athena? ( - x11-libs/libXaw - x11-libs/libXmu - x11-libs/libXt - ) ) - ) - )" - -RDEPEND="app-emacs/emacs-common[games?,gui(-)?] - sys-libs/ncurses:0= - acl? ( virtual/acl ) - alsa? ( media-libs/alsa-lib ) - dbus? ( sys-apps/dbus ) - games? ( acct-group/gamestat ) - gmp? ( dev-libs/gmp:0= ) - gpm? ( sys-libs/gpm ) - !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) ) - jit? ( - sys-devel/gcc:=[jit(-)] - sys-libs/zlib - ) - json? ( dev-libs/jansson:= ) - kerberos? ( virtual/krb5 ) - lcms? ( media-libs/lcms:2 ) - libxml2? ( >=dev-libs/libxml2-2.2.0 ) - mailutils? ( net-mail/mailutils[clients] ) - !mailutils? ( acct-group/mail net-libs/liblockfile ) - selinux? ( sys-libs/libselinux ) - sqlite? ( dev-db/sqlite:3 ) - ssl? ( net-libs/gnutls:0= ) - systemd? ( sys-apps/systemd ) - tree-sitter? ( dev-libs/tree-sitter:= ) - valgrind? ( dev-debug/valgrind ) - zlib? ( sys-libs/zlib ) - gui? ( - gif? ( media-libs/giflib:0= ) - jpeg? ( media-libs/libjpeg-turbo:0= ) - png? ( >=media-libs/libpng-1.4:0= ) - svg? ( >=gnome-base/librsvg-2.0 ) - tiff? ( media-libs/tiff:= ) - webp? ( media-libs/libwebp:0= ) - imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] ) - !aqua? ( - gsettings? ( - app-emacs/emacs-common[gsettings(-)] - >=dev-libs/glib-2.28.6 - ) - gtk? ( !X? ( - media-libs/fontconfig - media-libs/freetype - >=x11-libs/cairo-1.12.18 - x11-libs/gtk+:3 - harfbuzz? ( media-libs/harfbuzz:0= ) - m17n-lib? ( - >=dev-libs/libotf-0.9.4 - >=dev-libs/m17n-lib-1.5.1 - ) - xwidgets? ( net-libs/webkit-gtk:4.1= ) - ) ) - !gtk? ( ${X_DEPEND} ) - X? ( ${X_DEPEND} ) - ) - )" - -DEPEND="${RDEPEND} - gui? ( !aqua? ( - !gtk? ( x11-base/xorg-proto ) - X? ( x11-base/xorg-proto ) - ) )" - -BDEPEND="sys-apps/texinfo - virtual/pkgconfig - gzip-el? ( app-arch/gzip )" - -IDEPEND="app-eselect/eselect-emacs" - -RDEPEND+=" ${IDEPEND}" - -EMACS_SUFFIX="emacs-${SLOT}" -SITEFILE="20${EMACS_SUFFIX}-gentoo.el" - -# Suppress false positive QA warnings #898304 #925091 -QA_CONFIG_IMPL_DECL_SKIP=( - malloc_set_state malloc_get_state MIN static_assert alignof - statvfs64 re_set_syntax re_compile_pattern re_search re_match -) - -src_prepare() { - if [[ ${PV##*.} = 9999 ]]; then - FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[^0-9.]*\([0-9.]*\).*/\1/p' \ - configure.ac) - [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version" - einfo "Emacs branch: ${EGIT_BRANCH}" - einfo "Commit: ${EGIT_VERSION}" - einfo "Emacs version number: ${FULL_VERSION}" - [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \ - || die "Upstream version number changed to ${FULL_VERSION}" - fi - - default - - if use jit; then - find lisp -type f -name "*.elc" -delete || die - - # These files ignore LDFLAGS. We assign the variable here, because - # for live ebuilds FULL_VERSION doesn't exist in global scope - QA_FLAGS_IGNORED="usr/$(get_libdir)/emacs/${FULL_VERSION}/native-lisp/.*" - - # gccjit doesn't play well with ccache or distcc #801580 - # For now, work around the problem with an explicit LIBRARY_PATH - has ccache ${FEATURES} || has distcc ${FEATURES} && tc-is-gcc \ - && export LIBRARY_PATH=$("$(tc-getCC)" -print-search-dirs \ - | sed -n '/^libraries:/{s:^[^/]*::;p}') - fi - - # Fix filename reference in redirected man page - sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die - - # libseccomp is detected by configure but doesn't appear to have any - # effect on the installed image. Suppress it by supplying pkg-config - # with a wrong library name. - sed -i -e "/CHECK_MODULES/s/libseccomp/DiSaBlE&/" configure.ac || die - - # Tests that use bubblewrap don't work in the sandbox: - # "bwrap: setting up uid map: Permission denied" - # So, disrupt the search for the bwrap executable. - sed -i -e 's/(executable-find "bwrap")/nil/' test/src/emacs-tests.el \ - test/lisp/emacs-lisp/bytecomp-tests.el || die - - AT_M4DIR=m4 eautoreconf -} - -src_configure() { - local myconf - - # Prevents e.g. tests interfering with running Emacs. - unset EMACS_SOCKET_NAME - - if use alsa; then - use sound || ewarn \ - "USE flag \"alsa\" overrides \"-sound\"; enabling sound support." - myconf+=" --with-sound=alsa" - else - myconf+=" --with-sound=$(usex sound oss)" - fi - - if use jit; then - use zlib || ewarn \ - "USE flag \"jit\" overrides \"-zlib\"; enabling zlib support." - myconf+=" --with-zlib" - else - myconf+=" $(use_with zlib)" - fi - - # Emacs supports these window systems: - # X11, pure GTK (without X11), or Nextstep (Aqua/Cocoa). - # General GUI support is enabled by the "gui" USE flag, then - # the window system is selected as follows: - # "aqua" -> Nextstep - # "gtk -X" -> pure GTK - # otherwise -> X11 - # For X11 there is the further choice of toolkits GTK, Motif, - # Athena (Lucid), or no toolkit. They are enabled (in order of - # preference) with the "gtk", "motif", "Xaw3d", and "athena" flags. - - if ! use gui; then - einfo "Configuring to build without window system support" - myconf+=" --without-x --without-pgtk --without-ns" - elif use aqua; then - einfo "Configuring to build with Nextstep (Macintosh Cocoa) support" - myconf+=" --with-ns --disable-ns-self-contained" - myconf+=" --without-x --without-pgtk" - elif use gtk && ! use X; then - einfo "Configuring to build with pure GTK (without X11) support" - myconf+=" --with-pgtk --without-x --without-ns" - myconf+=" --with-toolkit-scroll-bars" #836392 - myconf+=" --without-gconf" - myconf+=" $(use_with gsettings)" - myconf+=" $(use_with harfbuzz)" - myconf+=" $(use_with m17n-lib libotf)" - myconf+=" $(use_with m17n-lib m17n-flt)" - myconf+=" $(use_with xwidgets)" - else - # X11 - myconf+=" --with-x --without-pgtk --without-ns" - myconf+=" --without-gconf" - myconf+=" $(use_with gsettings)" - myconf+=" $(use_with toolkit-scroll-bars)" - myconf+=" $(use_with xpm)" - - if use xft; then - myconf+=" --with-xft" - myconf+=" $(use_with cairo)" - myconf+=" $(use_with harfbuzz)" - myconf+=" $(use_with m17n-lib libotf)" - myconf+=" $(use_with m17n-lib m17n-flt)" - else - myconf+=" --without-xft" - myconf+=" --without-cairo" - myconf+=" --without-libotf --without-m17n-flt" - use cairo && ewarn \ - "USE flag \"cairo\" has no effect if \"xft\" is not set." - use m17n-lib && ewarn \ - "USE flag \"m17n-lib\" has no effect if \"xft\" is not set." - fi - - local f line - if use gtk; then - einfo "Configuring to build with GIMP Toolkit (GTK+)" - while read line; do ewarn "${line}"; done <<-EOF - Your version of GTK+ will have problems with closing open - displays. This is no problem if you just use one display, but - if you use more than one and close one of them Emacs may crash. - See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and - <https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>. - If you intend to use more than one display, then it is strongly - recommended that you compile Emacs with the Athena/Lucid or the - Motif toolkit instead. - EOF - myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)" - for f in motif Xaw3d athena; do - use ${f} && ewarn \ - "USE flag \"${f}\" has no effect if \"gtk\" is set." - done - elif use motif; then - einfo "Configuring to build with Motif toolkit" - myconf+=" --with-x-toolkit=motif" - for f in Xaw3d athena; do - use ${f} && ewarn \ - "USE flag \"${f}\" has no effect if \"motif\" is set." - done - elif use athena || use Xaw3d; then - einfo "Configuring to build with Athena/Lucid toolkit" - myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)" - else - einfo "Configuring to build with no toolkit" - myconf+=" --with-x-toolkit=no" - fi - ! use gtk && use xwidgets && ewarn \ - "USE flag \"xwidgets\" has no effect if \"gtk\" is not set." - fi - - if use gui; then - # Common flags recognised for all GUIs - myconf+=" $(use_with gif)" - myconf+=" $(use_with jpeg)" - myconf+=" $(use_with png)" - myconf+=" $(use_with svg rsvg)" - myconf+=" $(use_with tiff)" - myconf+=" $(use_with webp)" - myconf+=" $(use_with imagemagick)" - fi - - if tc-is-cross-compiler; then - # Configure a CBUILD directory when cross-compiling to make tools - mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die - ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit - popd >/dev/null || die - # Don't try to execute the binary for dumping during the build - myconf+=" --with-dumping=none" - elif use m68k; then - # Workaround for https://debbugs.gnu.org/44531 - myconf+=" --with-dumping=unexec" - else - myconf+=" --with-dumping=pdumper" - fi - - econf \ - --program-suffix="-${EMACS_SUFFIX}" \ - --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \ - --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \ - --localstatedir="${EPREFIX}"/var \ - --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \ - --without-compress-install \ - --without-hesiod \ - --without-pop \ - --with-file-notification=$(usev inotify || usev gfile || echo no) \ - --with-pdumper \ - $(use_enable acl) \ - $(use_with dbus) \ - $(use_with dynamic-loading modules) \ - $(use_with games gameuser ":gamestat") \ - $(use_with gmp libgmp) \ - $(use_with gpm) \ - $(use_with jit native-compilation aot) \ - $(use_with json) \ - $(use_with kerberos) $(use_with kerberos kerberos5) \ - $(use_with lcms lcms2) \ - $(use_with libxml2 xml2) \ - $(use_with mailutils) \ - $(use_with selinux) \ - $(use_with sqlite sqlite3) \ - $(use_with ssl gnutls) \ - $(use_with systemd libsystemd) \ - $(use_with threads) \ - $(use_with tree-sitter) \ - $(use_with wide-int) \ - ${myconf} -} - -src_compile() { - export ac_cv_header_valgrind_valgrind_h=$(usex valgrind) - append-cppflags -DUSE_VALGRIND=$(usex valgrind) - - if tc-is-cross-compiler; then - # Build native tools for compiling lisp etc. - emake -C "${S}-build" src - emake lib # Cross-compile dependencies first for timestamps - # Save native build tools in the cross-directory - cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die - # Specify the native Emacs to compile lisp - EMACS_EMAKE_ARGS=( EMACS="${S}-build/src/emacs" ) - emake "${EMACS_EMAKE_ARGS[@]}" actual-all - else - EMACS_EMAKE_ARGS=() - emake - fi -} - -src_test() { - # List .el test files with a comment above listing the exact - # subtests which caused failure. Elements should begin with a %. - # e.g. %lisp/gnus/mml-sec-tests.el. - local exclude_tests=( - # Reason: permission denied on /nonexistent - # (vc-*-bzr only fails if breezy is installed, as they - # try to access cache dirs under /nonexistent) - # - # rmail-undigest-test-multipart-mixed-digest - # rmail-undigest-test-rfc1153-less-strict-digest - # rmail-undigest-test-rfc1153-sloppy-digest - # rmail-undigest-test-rfc934-digest - # vc-test-bzr02-state - # vc-test-bzr05-rename-file - # vc-test-bzr06-version-diff - # vc-bzr-test-bug9781 - %lisp/mail/undigest-tests.el - %lisp/vc/vc-tests.el - %lisp/vc/vc-bzr-tests.el - - # Reason: tries to access network - # internet-is-working - %src/process-tests.el - - # Reason: fails with stable version of tree-sitter-json due to - # ast changes. Bug #922525 - %src/treesit-tests.log - - # Reason: test is not skipped if tree-sitter-tsx is not installed - # Bug #922525 - %lisp/progmodes/typescript-ts-mode-tests.el - ) - use threads || exclude_tests+=( - %lisp/server-tests.el - %lisp/progmodes/eglot-tests.el - %src/emacs-module-tests.el - %src/keyboard-tests.el - ) - use xpm || exclude_tests+=( %src/image-tests.el ) - - # Some tests hang with gnupg-2.2.42 - local gpgver=$(best_version app-crypt/gnupg) - gpgver=${gpgver#*gnupg-} - [[ -n ${gpgver} ]] \ - && ver_test "${gpgver}" -ge 2.2.42 && ver_test "${gpgver}" -lt 2.3 \ - && exclude_tests+=( - %lisp/epg-tests.el - %lisp/gnus/mml-sec-tests.el - ) - - # Redirect GnuPG's sockets, in order not to exceed the 108 char limit - # for socket paths on Linux. - mkdir "${T}"/gpg || die - local f - for f in browser extra ssh; do - printf "%%Assuan%%\nsocket=%s\n" "${T}/gpg/S.${f}" \ - > "test/lisp/gnus/mml-sec-resources/S.gpg-agent.${f}" || die - done - - # See test/README for possible options - emake \ - EMACS_TEST_VERBOSE=1 \ - EXCLUDE_TESTS="${exclude_tests[*]}" \ - TEST_BACKTRACE_LINE_LENGTH=nil \ - check -} - -src_install() { - emake \ - "${EMACS_EMAKE_ARGS[@]}" \ - DESTDIR="${D}" \ - NO_BIN_LINK=t \ - BLESSMAIL_TARGET="" \ - install - - mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die - mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die - mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.metainfo.xml || die - - # dissuade Portage from removing our dir file #257260 - touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir - docompress -x /usr/share/info/${EMACS_SUFFIX}/dir - - # movemail must be setgid mail - if ! use mailutils; then - fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail - fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail - fi - - # avoid collision between slots, see bug #169033 e.g. - rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die - rm -rf "${ED}"/usr/share/{applications,icons} || die - rm -rf "${ED}"/usr/share/glib-2.0 || die #911117 - rm -rf "${ED}/usr/$(get_libdir)/systemd" || die - rm -rf "${ED}"/var || die - - # remove unused <version>/site-lisp dir - rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die - - # remove COPYING file (except for etc/COPYING used by describe-copying) - rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die - - if use systemd; then - insinto /usr/lib/systemd/user - sed -e "/^##/d" \ - -e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \ - -e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \ - etc/emacs.service | newins - ${EMACS_SUFFIX}.service - assert - fi - - if use gzip-el; then - # compress .el files when a corresponding .elc exists - find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \ - -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n - assert "gzip .el failed" - fi - - local cdir - if use source; then - cdir="/usr/share/emacs/${FULL_VERSION}/src" - insinto "${cdir}" - # This is not meant to install all the source -- just the - # C source you might find via find-function - doins src/*.{c,h,m} - elif has installsources ${FEATURES}; then - cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src" - fi - - sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die - X - ;;; ${EMACS_SUFFIX} site-lisp configuration - X - (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version) - Y (setq find-function-C-source-directory - Y "${EPREFIX}${cdir}") - X (let ((path (getenv "INFOPATH")) - X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}") - X (re "\\\\\`${EPREFIX}/usr/share\\\\>")) - X (and path - X ;; move Emacs Info dir before anything else in /usr/share - X (let* ((p (cons nil (split-string path ":" t))) (q p)) - X (while (and (cdr q) (not (string-match re (cadr q)))) - X (setq q (cdr q))) - X (setcdr q (cons dir (delete dir (cdr q)))) - X (setenv "INFOPATH" (mapconcat 'identity (cdr p) ":")))))) - EOF - elisp-site-file-install "${T}/${SITEFILE}" || die - - dodoc README BUGS CONTRIBUTE - - if use gui && use aqua; then - dodir /Applications/Gentoo - rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die - mv nextstep/Emacs.app \ - "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die - fi - - local DOC_CONTENTS="You can set the version to be started by - /usr/bin/emacs through the Emacs eselect module, which also - redirects man and info pages. Therefore, several Emacs versions can - be installed at the same time. \"man emacs.eselect\" for details. - \\n\\nIf you upgrade from a previous major version of Emacs, then - it is strongly recommended that you use app-admin/emacs-updater - to rebuild all byte-compiled elisp files of the installed Emacs - packages." - if use gui; then - DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs. - Installing media-fonts/font-adobe-{75,100}dpi on the X server's - machine would satisfy basic Emacs requirements under X11. - See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs - for how to enable anti-aliased fonts." - use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in - \"${EPREFIX}/Applications/Gentoo\". You may want to copy or - symlink it into /Applications by yourself." - fi - tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write - a portable dump file due to being cross-compiled. - To create this file at run time, execute the following command: - \\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable - \"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'" - readme.gentoo_create_doc -} - -pkg_preinst() { - # verify that the PM hasn't removed our Info directory index #257260 - local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}" - [[ -f ${infodir}/dir || ! -d ${infodir} ]] || die -} - -pkg_postinst() { - elisp-site-regen - readme.gentoo_print_elog - - if use livecd; then - # force an update of the emacs symlink for the livecd/dvd, - # because some microemacs packages set it with USE=livecd - eselect emacs update - else - eselect emacs update ifunset - fi -} - -pkg_postrm() { - elisp-site-regen - eselect emacs update ifunset -} diff --git a/app-editors/emacs/emacs-29.3-r1.ebuild b/app-editors/emacs/emacs-29.3-r1.ebuild deleted file mode 100644 index b827e1c7f472..000000000000 --- a/app-editors/emacs/emacs-29.3-r1.ebuild +++ /dev/null @@ -1,627 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs - -if [[ ${PV##*.} = 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git" - EGIT_BRANCH="emacs-29" - EGIT_CHECKOUT_DIR="${WORKDIR}/emacs" - S="${EGIT_CHECKOUT_DIR}" - SLOT="${PV%%.*}-vcs" -else - # FULL_VERSION keeps the full version number, which is needed in - # order to determine some path information correctly for copy/move - # operations later on - FULL_VERSION="${PV%%_*}" - SRC_URI="mirror://gnu/emacs/${P}.tar.xz" - S="${WORKDIR}/emacs-${FULL_VERSION}" - # PV can be in any of the following formats: - # 27.1 released version (slot 27) - # 27.1_rc1 upstream release candidate (27) - # 27.0.9999 live ebuild (slot 27-vcs) - # 27.0.90 upstream prerelease snapshot (27-vcs) - # 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs) - if [[ ${PV} == *_pre* ]]; then - SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz" - S="${WORKDIR}/emacs" - elif [[ ${PV//[0-9]} != "." ]]; then - SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz" - fi - # Patchset from proj/emacs-patches.git - SRC_URI+=" https://dev.gentoo.org/~ulm/emacs/${P}-patches-1.tar.xz" - PATCHES=("${WORKDIR}/patch") - SLOT="${PV%%.*}" - [[ ${PV} == *.*.* ]] && SLOT+="-vcs" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" -fi - -DESCRIPTION="The extensible, customizable, self-documenting real-time display editor" -HOMEPAGE="https://www.gnu.org/software/emacs/" - -LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2" -IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source sqlite ssl svg systemd +threads tiff toolkit-scroll-bars tree-sitter valgrind webp wide-int +X Xaw3d xft +xpm xwidgets zlib" - -X_DEPEND="x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXi - x11-libs/libXinerama - x11-libs/libXrandr - x11-libs/libxcb - x11-libs/xcb-util - x11-misc/xbitmaps - xpm? ( x11-libs/libXpm ) - xft? ( - media-libs/fontconfig - media-libs/freetype - x11-libs/libXrender - cairo? ( >=x11-libs/cairo-1.12.18[X] ) - !cairo? ( x11-libs/libXft ) - harfbuzz? ( media-libs/harfbuzz:0= ) - m17n-lib? ( - >=dev-libs/libotf-0.9.4 - >=dev-libs/m17n-lib-1.5.1 - ) - ) - gtk? ( - x11-libs/gtk+:3 - xwidgets? ( - net-libs/webkit-gtk:4.1= - x11-libs/libXcomposite - ) - ) - !gtk? ( - motif? ( - >=x11-libs/motif-2.3:0 - x11-libs/libXpm - x11-libs/libXmu - x11-libs/libXt - ) - !motif? ( - Xaw3d? ( - x11-libs/libXaw3d - x11-libs/libXmu - x11-libs/libXt - ) - !Xaw3d? ( athena? ( - x11-libs/libXaw - x11-libs/libXmu - x11-libs/libXt - ) ) - ) - )" - -RDEPEND="app-emacs/emacs-common[games?,gui(-)?] - sys-libs/ncurses:0= - acl? ( virtual/acl ) - alsa? ( media-libs/alsa-lib ) - dbus? ( sys-apps/dbus ) - games? ( acct-group/gamestat ) - gmp? ( dev-libs/gmp:0= ) - gpm? ( sys-libs/gpm ) - !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) ) - jit? ( - sys-devel/gcc:=[jit(-)] - sys-libs/zlib - ) - json? ( dev-libs/jansson:= ) - kerberos? ( virtual/krb5 ) - lcms? ( media-libs/lcms:2 ) - libxml2? ( >=dev-libs/libxml2-2.2.0 ) - mailutils? ( net-mail/mailutils[clients] ) - !mailutils? ( acct-group/mail net-libs/liblockfile ) - selinux? ( sys-libs/libselinux ) - sqlite? ( dev-db/sqlite:3 ) - ssl? ( net-libs/gnutls:0= ) - systemd? ( sys-apps/systemd ) - tree-sitter? ( dev-libs/tree-sitter:= ) - valgrind? ( dev-debug/valgrind ) - zlib? ( sys-libs/zlib ) - gui? ( - gif? ( media-libs/giflib:0= ) - jpeg? ( media-libs/libjpeg-turbo:0= ) - png? ( >=media-libs/libpng-1.4:0= ) - svg? ( >=gnome-base/librsvg-2.0 ) - tiff? ( media-libs/tiff:= ) - webp? ( media-libs/libwebp:0= ) - imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] ) - !aqua? ( - gsettings? ( - app-emacs/emacs-common[gsettings(-)] - >=dev-libs/glib-2.28.6 - ) - gtk? ( !X? ( - media-libs/fontconfig - media-libs/freetype - >=x11-libs/cairo-1.12.18 - x11-libs/gtk+:3 - harfbuzz? ( media-libs/harfbuzz:0= ) - m17n-lib? ( - >=dev-libs/libotf-0.9.4 - >=dev-libs/m17n-lib-1.5.1 - ) - xwidgets? ( net-libs/webkit-gtk:4.1= ) - ) ) - !gtk? ( ${X_DEPEND} ) - X? ( ${X_DEPEND} ) - ) - )" - -DEPEND="${RDEPEND} - gui? ( !aqua? ( - !gtk? ( x11-base/xorg-proto ) - X? ( x11-base/xorg-proto ) - ) )" - -BDEPEND="sys-apps/texinfo - virtual/pkgconfig - gzip-el? ( app-arch/gzip )" - -IDEPEND="app-eselect/eselect-emacs" - -RDEPEND+=" ${IDEPEND}" - -EMACS_SUFFIX="emacs-${SLOT}" -SITEFILE="20${EMACS_SUFFIX}-gentoo.el" - -# Suppress false positive QA warnings #898304 #925091 -QA_CONFIG_IMPL_DECL_SKIP=( - malloc_set_state malloc_get_state MIN static_assert alignof - statvfs64 re_set_syntax re_compile_pattern re_search re_match -) - -src_prepare() { - if [[ ${PV##*.} = 9999 ]]; then - FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[^0-9.]*\([0-9.]*\).*/\1/p' \ - configure.ac) - [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version" - einfo "Emacs branch: ${EGIT_BRANCH}" - einfo "Commit: ${EGIT_VERSION}" - einfo "Emacs version number: ${FULL_VERSION}" - [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \ - || die "Upstream version number changed to ${FULL_VERSION}" - fi - - default - - if use jit; then - find lisp -type f -name "*.elc" -delete || die - - # These files ignore LDFLAGS. We assign the variable here, because - # for live ebuilds FULL_VERSION doesn't exist in global scope - QA_FLAGS_IGNORED="usr/$(get_libdir)/emacs/${FULL_VERSION}/native-lisp/.*" - - # gccjit doesn't play well with ccache or distcc #801580 - # For now, work around the problem with an explicit LIBRARY_PATH - has ccache ${FEATURES} || has distcc ${FEATURES} && tc-is-gcc \ - && export LIBRARY_PATH=$("$(tc-getCC)" -print-search-dirs \ - | sed -n '/^libraries:/{s:^[^/]*::;p}') - fi - - # Fix filename reference in redirected man page - sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die - - # libseccomp is detected by configure but doesn't appear to have any - # effect on the installed image. Suppress it by supplying pkg-config - # with a wrong library name. - sed -i -e "/CHECK_MODULES/s/libseccomp/DiSaBlE&/" configure.ac || die - - # Tests that use bubblewrap don't work in the sandbox: - # "bwrap: setting up uid map: Permission denied" - # So, disrupt the search for the bwrap executable. - sed -i -e 's/(executable-find "bwrap")/nil/' test/src/emacs-tests.el \ - test/lisp/emacs-lisp/bytecomp-tests.el || die - - AT_M4DIR=m4 eautoreconf -} - -src_configure() { - local myconf - - # Prevents e.g. tests interfering with running Emacs. - unset EMACS_SOCKET_NAME - - if use alsa; then - use sound || ewarn \ - "USE flag \"alsa\" overrides \"-sound\"; enabling sound support." - myconf+=" --with-sound=alsa" - else - myconf+=" --with-sound=$(usex sound oss)" - fi - - if use jit; then - use zlib || ewarn \ - "USE flag \"jit\" overrides \"-zlib\"; enabling zlib support." - myconf+=" --with-zlib" - else - myconf+=" $(use_with zlib)" - fi - - # Emacs supports these window systems: - # X11, pure GTK (without X11), or Nextstep (Aqua/Cocoa). - # General GUI support is enabled by the "gui" USE flag, then - # the window system is selected as follows: - # "aqua" -> Nextstep - # "gtk -X" -> pure GTK - # otherwise -> X11 - # For X11 there is the further choice of toolkits GTK, Motif, - # Athena (Lucid), or no toolkit. They are enabled (in order of - # preference) with the "gtk", "motif", "Xaw3d", and "athena" flags. - - if ! use gui; then - einfo "Configuring to build without window system support" - myconf+=" --without-x --without-pgtk --without-ns" - elif use aqua; then - einfo "Configuring to build with Nextstep (Macintosh Cocoa) support" - myconf+=" --with-ns --disable-ns-self-contained" - myconf+=" --without-x --without-pgtk" - elif use gtk && ! use X; then - einfo "Configuring to build with pure GTK (without X11) support" - myconf+=" --with-pgtk --without-x --without-ns" - myconf+=" --with-toolkit-scroll-bars" #836392 - myconf+=" --without-gconf" - myconf+=" $(use_with gsettings)" - myconf+=" $(use_with harfbuzz)" - myconf+=" $(use_with m17n-lib libotf)" - myconf+=" $(use_with m17n-lib m17n-flt)" - myconf+=" $(use_with xwidgets)" - else - # X11 - myconf+=" --with-x --without-pgtk --without-ns" - myconf+=" --without-gconf" - myconf+=" $(use_with gsettings)" - myconf+=" $(use_with toolkit-scroll-bars)" - myconf+=" $(use_with xpm)" - - if use xft; then - myconf+=" --with-xft" - myconf+=" $(use_with cairo)" - myconf+=" $(use_with harfbuzz)" - myconf+=" $(use_with m17n-lib libotf)" - myconf+=" $(use_with m17n-lib m17n-flt)" - else - myconf+=" --without-xft" - myconf+=" --without-cairo" - myconf+=" --without-libotf --without-m17n-flt" - use cairo && ewarn \ - "USE flag \"cairo\" has no effect if \"xft\" is not set." - use m17n-lib && ewarn \ - "USE flag \"m17n-lib\" has no effect if \"xft\" is not set." - fi - - local f line - if use gtk; then - einfo "Configuring to build with GIMP Toolkit (GTK+)" - while read line; do ewarn "${line}"; done <<-EOF - Your version of GTK+ will have problems with closing open - displays. This is no problem if you just use one display, but - if you use more than one and close one of them Emacs may crash. - See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and - <https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>. - If you intend to use more than one display, then it is strongly - recommended that you compile Emacs with the Athena/Lucid or the - Motif toolkit instead. - EOF - myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)" - for f in motif Xaw3d athena; do - use ${f} && ewarn \ - "USE flag \"${f}\" has no effect if \"gtk\" is set." - done - elif use motif; then - einfo "Configuring to build with Motif toolkit" - myconf+=" --with-x-toolkit=motif" - for f in Xaw3d athena; do - use ${f} && ewarn \ - "USE flag \"${f}\" has no effect if \"motif\" is set." - done - elif use athena || use Xaw3d; then - einfo "Configuring to build with Athena/Lucid toolkit" - myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)" - else - einfo "Configuring to build with no toolkit" - myconf+=" --with-x-toolkit=no" - fi - ! use gtk && use xwidgets && ewarn \ - "USE flag \"xwidgets\" has no effect if \"gtk\" is not set." - fi - - if use gui; then - # Common flags recognised for all GUIs - myconf+=" $(use_with gif)" - myconf+=" $(use_with jpeg)" - myconf+=" $(use_with png)" - myconf+=" $(use_with svg rsvg)" - myconf+=" $(use_with tiff)" - myconf+=" $(use_with webp)" - myconf+=" $(use_with imagemagick)" - fi - - if tc-is-cross-compiler; then - # Configure a CBUILD directory when cross-compiling to make tools - mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die - ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit - popd >/dev/null || die - # Don't try to execute the binary for dumping during the build - myconf+=" --with-dumping=none" - elif use m68k; then - # Workaround for https://debbugs.gnu.org/44531 - myconf+=" --with-dumping=unexec" - else - myconf+=" --with-dumping=pdumper" - fi - - econf \ - --program-suffix="-${EMACS_SUFFIX}" \ - --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \ - --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \ - --localstatedir="${EPREFIX}"/var \ - --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \ - --without-compress-install \ - --without-hesiod \ - --without-pop \ - --with-file-notification=$(usev inotify || usev gfile || echo no) \ - --with-pdumper \ - $(use_enable acl) \ - $(use_with dbus) \ - $(use_with dynamic-loading modules) \ - $(use_with games gameuser ":gamestat") \ - $(use_with gmp libgmp) \ - $(use_with gpm) \ - $(use_with jit native-compilation aot) \ - $(use_with json) \ - $(use_with kerberos) $(use_with kerberos kerberos5) \ - $(use_with lcms lcms2) \ - $(use_with libxml2 xml2) \ - $(use_with mailutils) \ - $(use_with selinux) \ - $(use_with sqlite sqlite3) \ - $(use_with ssl gnutls) \ - $(use_with systemd libsystemd) \ - $(use_with threads) \ - $(use_with tree-sitter) \ - $(use_with wide-int) \ - ${myconf} -} - -src_compile() { - export ac_cv_header_valgrind_valgrind_h=$(usex valgrind) - append-cppflags -DUSE_VALGRIND=$(usex valgrind) - - if tc-is-cross-compiler; then - # Build native tools for compiling lisp etc. - emake -C "${S}-build" src - emake lib # Cross-compile dependencies first for timestamps - # Save native build tools in the cross-directory - cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die - # Specify the native Emacs to compile lisp - EMACS_EMAKE_ARGS=( EMACS="${S}-build/src/emacs" ) - emake "${EMACS_EMAKE_ARGS[@]}" actual-all - else - EMACS_EMAKE_ARGS=() - emake - fi -} - -src_test() { - # List .el test files with a comment above listing the exact - # subtests which caused failure. Elements should begin with a %. - # e.g. %lisp/gnus/mml-sec-tests.el. - local exclude_tests=( - # Reason: permission denied on /nonexistent - # (vc-*-bzr only fails if breezy is installed, as they - # try to access cache dirs under /nonexistent) - # - # rmail-undigest-test-multipart-mixed-digest - # rmail-undigest-test-rfc1153-less-strict-digest - # rmail-undigest-test-rfc1153-sloppy-digest - # rmail-undigest-test-rfc934-digest - # vc-test-bzr02-state - # vc-test-bzr05-rename-file - # vc-test-bzr06-version-diff - # vc-bzr-test-bug9781 - %lisp/mail/undigest-tests.el - %lisp/vc/vc-tests.el - %lisp/vc/vc-bzr-tests.el - - # Reason: tries to access network - # internet-is-working - %src/process-tests.el - - # Reason: fails with stable version of tree-sitter-json due to - # ast changes. Bug #922525 - %src/treesit-tests.log - - # Reason: test is not skipped if tree-sitter-tsx is not installed - # Bug #922525 - %lisp/progmodes/typescript-ts-mode-tests.el - ) - use threads || exclude_tests+=( - %lisp/server-tests.el - %lisp/progmodes/eglot-tests.el - %src/emacs-module-tests.el - %src/keyboard-tests.el - ) - use xpm || exclude_tests+=( %src/image-tests.el ) - - # Some tests hang with gnupg-2.2.42 - local gpgver=$(best_version app-crypt/gnupg) - gpgver=${gpgver#*gnupg-} - [[ -n ${gpgver} ]] \ - && ver_test "${gpgver}" -ge 2.2.42 && ver_test "${gpgver}" -lt 2.3 \ - && exclude_tests+=( - %lisp/epg-tests.el - %lisp/gnus/mml-sec-tests.el - ) - - # Redirect GnuPG's sockets, in order not to exceed the 108 char limit - # for socket paths on Linux. - mkdir "${T}"/gpg || die - local f - for f in browser extra ssh; do - printf "%%Assuan%%\nsocket=%s\n" "${T}/gpg/S.${f}" \ - > "test/lisp/gnus/mml-sec-resources/S.gpg-agent.${f}" || die - done - - # See test/README for possible options - emake \ - EMACS_TEST_VERBOSE=1 \ - EXCLUDE_TESTS="${exclude_tests[*]}" \ - TEST_BACKTRACE_LINE_LENGTH=nil \ - check -} - -src_install() { - emake \ - "${EMACS_EMAKE_ARGS[@]}" \ - DESTDIR="${D}" \ - NO_BIN_LINK=t \ - BLESSMAIL_TARGET="" \ - install - - mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die - mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die - mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.metainfo.xml || die - - # dissuade Portage from removing our dir file #257260 - touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir - docompress -x /usr/share/info/${EMACS_SUFFIX}/dir - - # movemail must be setgid mail - if ! use mailutils; then - fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail - fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail - fi - - # avoid collision between slots, see bug #169033 e.g. - rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die - rm -rf "${ED}"/usr/share/{applications,icons} || die - rm -rf "${ED}"/usr/share/glib-2.0 || die #911117 - rm -rf "${ED}/usr/$(get_libdir)/systemd" || die - rm -rf "${ED}"/var || die - - # remove unused <version>/site-lisp dir - rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die - - # remove COPYING file (except for etc/COPYING used by describe-copying) - rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die - - if use systemd; then - insinto /usr/lib/systemd/user - sed -e "/^##/d" \ - -e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \ - -e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \ - etc/emacs.service | newins - ${EMACS_SUFFIX}.service - assert - fi - - if use gzip-el; then - # compress .el files when a corresponding .elc exists - find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \ - -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n - assert "gzip .el failed" - fi - - local cdir - if use source; then - cdir="/usr/share/emacs/${FULL_VERSION}/src" - insinto "${cdir}" - # This is not meant to install all the source -- just the - # C source you might find via find-function - doins src/*.{c,h,m} - elif has installsources ${FEATURES}; then - cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src" - fi - - sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die - X - ;;; ${EMACS_SUFFIX} site-lisp configuration - X - (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version) - Y (setq find-function-C-source-directory - Y "${EPREFIX}${cdir}") - X (let ((path (getenv "INFOPATH")) - X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}") - X (re "\\\\\`${EPREFIX}/usr/share\\\\>")) - X (and path - X ;; move Emacs Info dir before anything else in /usr/share - X (let* ((p (cons nil (split-string path ":" t))) (q p)) - X (while (and (cdr q) (not (string-match re (cadr q)))) - X (setq q (cdr q))) - X (setcdr q (cons dir (delete dir (cdr q)))) - X (setenv "INFOPATH" (mapconcat 'identity (cdr p) ":")))))) - EOF - elisp-site-file-install "${T}/${SITEFILE}" || die - - dodoc README BUGS CONTRIBUTE - - if use gui && use aqua; then - dodir /Applications/Gentoo - rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die - mv nextstep/Emacs.app \ - "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die - fi - - local DOC_CONTENTS="You can set the version to be started by - /usr/bin/emacs through the Emacs eselect module, which also - redirects man and info pages. Therefore, several Emacs versions can - be installed at the same time. \"man emacs.eselect\" for details. - \\n\\nIf you upgrade from a previous major version of Emacs, then - it is strongly recommended that you use app-admin/emacs-updater - to rebuild all byte-compiled elisp files of the installed Emacs - packages." - if use gui; then - DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs. - Installing media-fonts/font-adobe-{75,100}dpi on the X server's - machine would satisfy basic Emacs requirements under X11. - See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs - for how to enable anti-aliased fonts." - use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in - \"${EPREFIX}/Applications/Gentoo\". You may want to copy or - symlink it into /Applications by yourself." - fi - if ! use mailutils; then - DOC_CONTENTS+="\\n\\nThe mailutils USE flag is disabled. If Emacs' - own e-mail features are going to be used as an e-mail client - (e.g. Rmail), you are strongly encouraged to enable it. If not, - Emacs will use its own implementation of movemail; which has - fewer features and is less secure. For more information see: - https://www.gnu.org/software/emacs/manual/html_node/emacs/Movemail.html" - fi - tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write - a portable dump file due to being cross-compiled. - To create this file at run time, execute the following command: - \\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable - \"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'" - readme.gentoo_create_doc -} - -pkg_preinst() { - # verify that the PM hasn't removed our Info directory index #257260 - local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}" - [[ -f ${infodir}/dir || ! -d ${infodir} ]] || die -} - -pkg_postinst() { - elisp-site-regen - readme.gentoo_print_elog - - if use livecd; then - # force an update of the emacs symlink for the livecd/dvd, - # because some microemacs packages set it with USE=livecd - eselect emacs update - else - eselect emacs update ifunset - fi -} - -pkg_postrm() { - elisp-site-regen - eselect emacs update ifunset -} diff --git a/app-editors/emacs/emacs-29.3-r2.ebuild b/app-editors/emacs/emacs-29.3-r2.ebuild index 14d83ce44514..01bff7cfa606 100644 --- a/app-editors/emacs/emacs-29.3-r2.ebuild +++ b/app-editors/emacs/emacs-29.3-r2.ebuild @@ -36,7 +36,7 @@ else PATCHES=("${WORKDIR}/patch") SLOT="${PV%%.*}" [[ ${PV} == *.*.* ]] && SLOT+="-vcs" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" fi DESCRIPTION="The extensible, customizable, self-documenting real-time display editor" @@ -223,6 +223,10 @@ src_prepare() { } src_configure() { + # We want floating-point arithmetic to be correct #933380 + replace-flags -Ofast -O3 + append-flags -fno-fast-math -ffp-contract=off + local myconf # Prevents e.g. tests interfering with running Emacs. @@ -345,7 +349,7 @@ src_configure() { if tc-is-cross-compiler; then # Configure a CBUILD directory when cross-compiling to make tools - mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die + mkdir -p "${S}-build" && pushd "${S}-build" >/dev/null || die ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit popd >/dev/null || die # Don't try to execute the binary for dumping during the build @@ -462,7 +466,7 @@ src_test() { # Redirect GnuPG's sockets, in order not to exceed the 108 char limit # for socket paths on Linux. - mkdir "${T}"/gpg || die + mkdir -p "${T}"/gpg || die local f for f in browser extra ssh; do printf "%%Assuan%%\nsocket=%s\n" "${T}/gpg/S.${f}" \ diff --git a/app-editors/emacs/emacs-29.3.9999.ebuild b/app-editors/emacs/emacs-29.3.9999.ebuild index fbd5febcfaa7..8ce5405e7582 100644 --- a/app-editors/emacs/emacs-29.3.9999.ebuild +++ b/app-editors/emacs/emacs-29.3.9999.ebuild @@ -220,6 +220,10 @@ src_prepare() { } src_configure() { + # We want floating-point arithmetic to be correct #933380 + replace-flags -Ofast -O3 + append-flags -fno-fast-math -ffp-contract=off + local myconf # Prevents e.g. tests interfering with running Emacs. @@ -342,7 +346,7 @@ src_configure() { if tc-is-cross-compiler; then # Configure a CBUILD directory when cross-compiling to make tools - mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die + mkdir -p "${S}-build" && pushd "${S}-build" >/dev/null || die ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit popd >/dev/null || die # Don't try to execute the binary for dumping during the build @@ -449,7 +453,7 @@ src_test() { # Redirect GnuPG's sockets, in order not to exceed the 108 char limit # for socket paths on Linux. - mkdir "${T}"/gpg || die + mkdir -p "${T}"/gpg || die local f for f in browser extra ssh; do printf "%%Assuan%%\nsocket=%s\n" "${T}/gpg/S.${f}" \ diff --git a/app-editors/emacs/emacs-30.0.9999.ebuild b/app-editors/emacs/emacs-30.0.9999.ebuild index 572a28d32bdb..886e2dbf4f7f 100644 --- a/app-editors/emacs/emacs-30.0.9999.ebuild +++ b/app-editors/emacs/emacs-30.0.9999.ebuild @@ -220,6 +220,10 @@ src_prepare() { } src_configure() { + # We want floating-point arithmetic to be correct #933380 + replace-flags -Ofast -O3 + append-flags -fno-fast-math -ffp-contract=off + local myconf # Prevents e.g. tests interfering with running Emacs. @@ -342,7 +346,7 @@ src_configure() { if tc-is-cross-compiler; then # Configure a CBUILD directory when cross-compiling to make tools - mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die + mkdir -p "${S}-build" && pushd "${S}-build" >/dev/null || die ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit popd >/dev/null || die # Don't try to execute the binary for dumping during the build @@ -449,7 +453,7 @@ src_test() { # Redirect GnuPG's sockets, in order not to exceed the 108 char limit # for socket paths on Linux. - mkdir "${T}"/gpg || die + mkdir -p "${T}"/gpg || die local f for f in browser extra ssh; do printf "%%Assuan%%\nsocket=%s\n" "${T}/gpg/S.${f}" \ diff --git a/app-editors/focuswriter/metadata.xml b/app-editors/focuswriter/metadata.xml index 1af3afbebbe7..d47d80ec0e2c 100644 --- a/app-editors/focuswriter/metadata.xml +++ b/app-editors/focuswriter/metadata.xml @@ -1,10 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="project"> - <email>qt@gentoo.org</email> - <name>Gentoo Qt Project</name> - </maintainer> + <!-- maintainer-needed --> <upstream> <bugs-to>https://gottcode.org/focuswriter/bugs/</bugs-to> <remote-id type="github">gottcode/focuswriter</remote-id> diff --git a/app-editors/ghostwriter/Manifest b/app-editors/ghostwriter/Manifest index cf1c77b18e1c..8ead9ee997e0 100644 --- a/app-editors/ghostwriter/Manifest +++ b/app-editors/ghostwriter/Manifest @@ -1 +1,2 @@ DIST ghostwriter-24.02.2.tar.xz 3629096 BLAKE2B f167301849348ee59d45fea07286d3e0c1cacd4eeb84769d4bb6182fc508aaa0f8b749f2553054a6054ffc48706ec53f05ec164b1a913b0f926395134e72ac7a SHA512 ebe605f82710ced4fecf4effd5c257e5d6bc274bbbc6cb36138423ef05b14504dd5d39d698eb23640838df53bc55f9ba3523280731482b1eb1b1ad6d46178381 +DIST ghostwriter-24.05.0.tar.xz 3630880 BLAKE2B 29970c04991a44501777971201d74696a3cab1594303d419b4095b5a5fe4746546a5606e87e49efde5e22986b48ae1dad45802a0d88a30d15da24e5c197a7b53 SHA512 587b53f590452ec253feca04caa9b349bbdb718945c935b5775093a6a12ff306191c89e3bf1800336a0d9c162c058d238387ac217b59f06809141f72a96130e6 diff --git a/app-editors/ghostwriter/ghostwriter-24.05.0.ebuild b/app-editors/ghostwriter/ghostwriter-24.05.0.ebuild new file mode 100644 index 000000000000..fc23d8fe01a3 --- /dev/null +++ b/app-editors/ghostwriter/ghostwriter-24.05.0.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KDE_ORG_CATEGORY="office" +ECM_HANDBOOK="optional" +KFMIN=6.0.0 +QTMIN=6.6.2 +inherit ecm gear.kde.org + +DESCRIPTION="Cross-platform, aesthetic, distraction-free markdown editor" +HOMEPAGE="https://ghostwriter.kde.org/" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="" + +RDEPEND=" + app-text/hunspell:= + >=dev-qt/qtbase-${QTMIN}:6[gui,widgets] + >=dev-qt/qtsvg-${QTMIN}:6 + >=dev-qt/qtwebchannel-${QTMIN}:6 + >=dev-qt/qtwebengine-${QTMIN}:6 + >=kde-frameworks/kcoreaddons-${KFMIN}:6 + >=kde-frameworks/kwidgetsaddons-${KFMIN}:6 + >=kde-frameworks/kxmlgui-${KFMIN}:6 + >=kde-frameworks/sonnet-${KFMIN}:6 + virtual/opengl +" +DEPEND="${RDEPEND} + >=dev-qt/qtbase-${QTMIN}:6[concurrent] +" +BDEPEND=" + >=dev-qt/qttools-${QTMIN}:6[linguist] + virtual/pkgconfig +" + +DOCS=( CHANGELOG.md README.md ) diff --git a/app-editors/gvim/Manifest b/app-editors/gvim/Manifest index 71f002ea046c..67344428f5b6 100644 --- a/app-editors/gvim/Manifest +++ b/app-editors/gvim/Manifest @@ -1,9 +1,4 @@ -DIST vim-9.0.1503.tar.gz 17010118 BLAKE2B 4f74d52a3fcf7875031378f86fc3411c64c92e4b82bee371148b19042478d3f974793477c3fc2d9ddff9233fa1ec3c864962880840867544e92464f1a0876f51 SHA512 2f3242ec0f79cf6affc2f7fdaf689c35d8597706ac1689dbbdc01352676199605bb37f22bd901f1e8d59f312237d3fce4bee8b979b28a744ea9e40558621980e -DIST vim-9.0.1627.tar.gz 17048824 BLAKE2B 3fa583cf676c2388641b1240ed4b90c2e42cd9f50ea44a943cce86bba4bf278adf54837bb5c4530471fd57cfcd08cd39be78b17a5e907435a02dc5874ff7f571 SHA512 d2fb863e03d4ad773fcba8917f3cd1e373f661aa8b8a20bd3e416a73788997d31c6dd106a1bf59d72475bb577bbe6d52eb079fff9c7152d96bb6e5c9aa6e2f3b -DIST vim-9.0.1678.tar.gz 17069551 BLAKE2B e83cea77513eb0d8b3ed02bd508333fb97357d2d7a91a90c5a9376b03b444a0b65b6ce04b14e191e33445132845af71193ab140ea615bb03a2c24a904b726cb4 SHA512 c5ffb7ca56ff4eee70f06599dd84db2eb28ddadac229d4f7faf01174805923636a4ce61486bdf5a47910c929613dc9b9290dfc9288006222b4bc4ac891548bb8 -DIST vim-9.0.1777.tar.gz 17177555 BLAKE2B ad6d785f4c6b112199bd2f34e0b7f6070615fba8dce25354a7ded40ff8536388e7b7120c1f2fad790c8dc7134d74649697b6e95777e79dcf1e208ead81b229d6 SHA512 702781b6a9cf540d22aa0bc1e25a4fb785ff2b22e9c6a59643e87fd6f7b3e5444adbee1816bfaa0b45b9655bb56dc2d13904230840a0ecea56f5453034d81a2e DIST vim-9.0.2092-patches.tar.xz 2640 BLAKE2B 3a4b2bc57712de3b92b0e8d9b2d428e4d576665a183927051eddd53d019a5ca413c74dc10aff09917ee3120bd2e2ba441219d7238994f0d5ba14fc9c31180199 SHA512 ec27e4056460948ff86bc48a21de239a84b53757a8283144ec121654096796d970ad832234d6591a132bcd38bc12dc507cc7795a11cd383d20f08b4d9bcb051f -DIST vim-9.0.2092.tar.gz 17359377 BLAKE2B eeb50de7e4876ce0e2a1e8b241ea2c7c472898495ef5517fa115e01f29ef8922fb7ef970f2c1a3ffe65a8274e2c59bd5a939f397048c6b486683c29c01484d1e SHA512 1c3e78ee1bb507858e0d30a8a1e646c16dd6d8d666ea587e91d1c90e490aef46387d6dfadc01e80f9aa807f7b109e4072efa8d8115fcd2a81dd62cabc30a8001 DIST vim-9.0.2167.tar.gz 17405049 BLAKE2B 496c8f9672bc4ecce743a145bc2b671bf09034b2875e728406b318c8b12e2d8d4ee3423ce94f8749679f07d36f229954f7ef0b12ce7bc4d71ccf6637ce2d6029 SHA512 6a9a785b1915dc167210b0da4d5e4401c71ee49b3554c8a22566378658ddcc3493562897ea39035852399cc5ffb55a73355ab13390c27a4d00ffd76bcd10ddf0 DIST vim-9.1.0366.tar.gz 17861209 BLAKE2B 8771f5ef6a966c1b5992a437dd6cf1de9525458f61a4cd8fa53737a7bde29a4da101668639a301288a266ee8b3911857d1ba5b4e88870b60473eb1eaa608d7a5 SHA512 11be2a6e349c7b6d26fc1943c35ea18c662baa4f30ae76936eefb30e0b4d988bfcaedf7ecd2c3903f64e23c75957f55b9bb4073e0f38c7eb10ef0ee0dc652ddb -DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a +DIST vim-9.1.0470.tar.gz 17919981 BLAKE2B 90ebffc6e7b6162f8a047976659e044b75aaa946799b901e9f8c88f04a787543cde56545c8c6e5394fa2bc957d2e46810c5ca3f1315fc20a398a57bbdbc90f4c SHA512 41b71e9e5385237b30aa256f064c9d5c914b29a97c0ec562f1995ac5d476fcf840c3f0e9a52e599f6084777db147e83fcbf0ec6b985bb94c126264d4cbafb964 diff --git a/app-editors/gvim/gvim-9.0.1503.ebuild b/app-editors/gvim/gvim-9.0.1503.ebuild deleted file mode 100644 index bf09149d4a15..000000000000 --- a/app-editors/gvim/gvim-9.0.1503.ebuild +++ /dev/null @@ -1,360 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with app-editors/vim-core and app-editors/vim - -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" - -LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" - -inherit bash-completion-r1 flag-o-matic lua-single prefix python-single-r1 ruby-single toolchain-funcs vim-doc xdg-utils - -if [[ ${PV} == 9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/vim/vim.git" - EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} -else - SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" -fi -S="${WORKDIR}"/vim-${PV} - -DESCRIPTION="GUI version of the Vim text editor" -HOMEPAGE="https://www.vim.org https://github.com/vim/vim" - -LICENSE="vim" -SLOT="0" -IUSE="acl aqua crypt cscope debug lua minimal motif netbeans nls perl python racket ruby selinux session sound tcl" -REQUIRED_USE=" - lua? ( ${LUA_REQUIRED_USE} ) - python? ( ${PYTHON_REQUIRED_USE} ) - aqua? ( !motif ) -" - -RDEPEND=" - ~app-editors/vim-core-${PV} - >=app-eselect/eselect-vi-1.1 - >=sys-libs/ncurses-5.2-r2:0= - x11-libs/libICE - x11-libs/libSM - x11-libs/libXext - x11-libs/libXt - acl? ( kernel_linux? ( sys-apps/acl ) ) - !aqua? ( - motif? ( >=x11-libs/motif-2.3:0 ) - !motif? ( - x11-libs/gtk+:3 - x11-libs/libXft - ) - ) - crypt? ( dev-libs/libsodium:= ) - cscope? ( dev-util/cscope ) - lua? ( - ${LUA_DEPS} - $(lua_gen_impl_dep 'deprecated' lua5-1) - ) - nls? ( virtual/libintl ) - perl? ( dev-lang/perl:= ) - python? ( ${PYTHON_DEPS} ) - racket? ( dev-scheme/racket ) - ruby? ( ${RUBY_DEPS} ) - selinux? ( sys-libs/libselinux ) - session? ( x11-libs/libSM ) - sound? ( media-libs/libcanberra ) - tcl? ( dev-lang/tcl:0= ) -" -DEPEND="${RDEPEND} - x11-base/xorg-proto" -# configure runs the Lua interpreter -BDEPEND=" - dev-build/autoconf - virtual/pkgconfig - lua? ( ${LUA_DEPS} ) - nls? ( sys-devel/gettext ) -" -PDEPEND="!minimal? ( app-vim/gentoo-syntax )" - -if [[ ${PV} != 9999* ]]; then - # Gentoo patches to fix runtime issues, cross-compile errors, etc - PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" - ) -fi - -# various failures (bugs #630042 and #682320) -RESTRICT="test" - -# platform-specific checks (bug #898450): -# - acl() -- Solaris -# - statacl() -- AIX -QA_CONFIG_IMPL_DECL_SKIP=( - 'acl' - 'statacl' -) - -pkg_setup() { - # people with broken alphabets run into trouble. bug 82186. - unset LANG LC_ALL - export LC_COLLATE="C" - - use lua && lua-single_pkg_setup - use python && python-single-r1_pkg_setup -} - -src_prepare() { - default - - # Fixup a script to use awk instead of nawk - sed -i -e \ - '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ - "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" - - # Read vimrc and gvimrc from /etc/vim - echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - - # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. - # Hopefully this pattern won't break for a while at least. - # This fixes bug 29398 (27 Sep 2003 agriffis) - sed -i -e \ - 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ - "${S}"/runtime/doc/syntax.txt \ - "${S}"/runtime/doc/tagsrch.txt \ - "${S}"/runtime/doc/usr_29.txt \ - "${S}"/runtime/menu.vim \ - "${S}"/src/configure.ac || die 'sed failed' - - # gcc on sparc32 has this, uhm, interesting problem with detecting EOF - # correctly. To avoid some really entertaining error messages about stuff - # which isn't even in the source file being invalid, we'll do some trickery - # to make the error never occur. bug 66162 (02 October 2004 ciaranm) - find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" - done - - # Try to avoid sandbox problems. Bug #114475. - if [[ -d "${S}"/src/po ]]; then - sed -i -e \ - '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ - "${S}"/src/po/Makefile || die - fi - - cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" - - # Fix bug 18245: Prevent "make" from the following chain: - # (1) Notice configure.ac is newer than auto/configure - # (2) Rebuild auto/configure - # (3) Notice auto/configure is newer than auto/config.mk - # (4) Run ./configure (with wrong args) to remake auto/config.mk - sed -i -e \ - 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" - rm -v src/auto/configure || die "rm failed" - - # --with-features=huge forces on cscope even if we --disable it. We need - # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) - if ! use cscope; then - sed -i -e \ - '/# define FEAT_CSCOPE/d' src/feature.h || die "couldn't disable cscope" - fi -} - -src_configure() { - - # Fix bug 37354: Disallow -funroll-all-loops on amd64 - # Bug 57859 suggests that we want to do this for all archs - filter-flags -funroll-all-loops - - # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for - # everyone since previous flag filtering bugs have turned out to affect - # multiple archs... - replace-flags -O3 -O2 - - emake -j1 -C src autoconf - - # This should fix a sandbox violation (see bug 24447). The hvc - # things are for ppc64, see bug 86433. - local file - for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do - if [[ -e ${file} ]]; then - addwrite $file - fi - done - - use debug && append-flags "-DDEBUG" - - local myconf=( - --with-features=huge - --disable-gpm - --with-gnome=no - $(use_enable sound canberra) - $(use_enable acl) - $(use_enable crypt libsodium) - $(use_enable cscope) - $(use_enable netbeans) - $(use_enable nls) - $(use_enable perl perlinterp) - $(use_enable python python3interp) - $(use_with python python3-command "${PYTHON}") - $(use_enable racket mzschemeinterp) - $(use_enable ruby rubyinterp) - $(use_enable selinux) - $(use_enable session xsmp) - $(use_enable tcl tclinterp) - ) - - if use lua; then - # -DLUA_COMPAT_OPENLIB=1 is required to enable the - # deprecated (in 5.1) luaL_openlib API (#874690) - use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1 - - myconf+=( - --enable-luainterp - $(use_with lua_single_target_luajit luajit) - --with-lua-prefix="${EPREFIX}/usr" - ) - fi - - # Default is gtk unless aqua or motif are enabled - echo ; echo - if use aqua; then - einfo "Building gvim with the Carbon GUI" - myconf+=( - --enable-darwin - --enable-gui=carbon - ) - elif use motif; then - einfo "Building gvim with the MOTIF GUI" - myconf+=( --enable-gui=motif ) - else - myconf+=( --enable-gtk3-check ) - einfo "Building gvim with the gtk+-3 GUI" - myconf+=( --enable-gui=gtk3 ) - fi - echo ; echo - - # let package manager strip binaries - export ac_cv_prog_STRIP="$(type -P true ) faking strip" - - # keep prefix env contained within the EPREFIX - use prefix && myconf+=( --without-local-dir ) - - if tc-is-cross-compiler ; then - export vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=yes \ - vim_cv_terminfo=yes \ - vim_cv_toupper_broken=no - fi - - econf \ - --with-modified-by=Gentoo-${PVR} \ - --with-vim-name=gvim \ - --with-x \ - "${myconf[@]}" -} - -src_compile() { - # The following allows emake to be used - emake -j1 -C src auto/osdef.h objects - - emake -} - -src_test() { - einfo - einfo "Starting vim tests. Several error messages will be shown" - einfo "while the tests run. This is normal behaviour and does not" - einfo "indicate a fault." - einfo - ewarn "If the tests fail, your terminal may be left in a strange" - ewarn "state. Usually, running 'reset' will fix this." - einfo - - # Don't let vim talk to X - unset DISPLAY - - # Make gvim not try to connect to X. See :help gui-x11-start in vim for how - # this evil trickery works. - ln -s "${S}"/src/gvim "${S}"/src/testvim || die - - # Make sure our VIMPROG is used. - sed -i -e 's:\.\./vim:../testvim:' src/testdir/test49.vim || die - - # Don't do additional GUI tests. - emake -j1 VIMPROG=../testvim -C src/testdir nongui -} - -# Call eselect vi update with --if-unset -# to respect user's choice (bug 187449) -eselect_vi_update() { - ebegin "Calling eselect vi update" - eselect vi update --if-unset - eend $? -} - -src_install() { - local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} - - dobin src/gvim - dosym gvim /usr/bin/gvimdiff - dosym gvim /usr/bin/evim - dosym gvim /usr/bin/eview - dosym gvim /usr/bin/gview - dosym gvim /usr/bin/rgvim - dosym gvim /usr/bin/rgview - - emake -C src DESTDIR="${D}" DATADIR="${EPREFIX}"/usr/share install-icons - - dodir /usr/share/man/man1 - echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1 || die "echo failed" - echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1 || die "echo failed" - echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1 || \ - die "echo failed" - - insinto /etc/vim - newins "${FILESDIR}"/gvimrc-r1 gvimrc - eprefixify "${ED}"/etc/vim/gvimrc - - # bash completion script, bug #79018. - newbashcomp "${FILESDIR}"/${PN}-completion ${PN} - - # don't install vim desktop file - rm -v "${ED}"/usr/share/applications/vim.desktop || die "failed to remove vim.desktop" -} - -pkg_postinst() { - # update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update fdo mime stuff, bug #78394 - xdg_desktop_database_update - - # update icon cache - xdg_icon_cache_update - - # call eselect vi update - eselect_vi_update -} - -pkg_postrm() { - # update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update fdo mime stuff, bug #78394 - xdg_desktop_database_update - - # update icon cache - xdg_icon_cache_update - - # call eselect vi update - eselect_vi_update -} diff --git a/app-editors/gvim/gvim-9.0.1627.ebuild b/app-editors/gvim/gvim-9.0.1627.ebuild deleted file mode 100644 index 3baf872227e8..000000000000 --- a/app-editors/gvim/gvim-9.0.1627.ebuild +++ /dev/null @@ -1,360 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with app-editors/vim-core and app-editors/vim - -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" - -LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" - -inherit bash-completion-r1 flag-o-matic lua-single prefix python-single-r1 ruby-single toolchain-funcs vim-doc xdg-utils - -if [[ ${PV} == 9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/vim/vim.git" - EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} -else - SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" -fi -S="${WORKDIR}"/vim-${PV} - -DESCRIPTION="GUI version of the Vim text editor" -HOMEPAGE="https://www.vim.org https://github.com/vim/vim" - -LICENSE="vim" -SLOT="0" -IUSE="acl aqua crypt cscope debug lua minimal motif netbeans nls perl python racket ruby selinux session sound tcl" -REQUIRED_USE=" - lua? ( ${LUA_REQUIRED_USE} ) - python? ( ${PYTHON_REQUIRED_USE} ) - aqua? ( !motif ) -" - -RDEPEND=" - ~app-editors/vim-core-${PV} - >=app-eselect/eselect-vi-1.1 - >=sys-libs/ncurses-5.2-r2:0= - x11-libs/libICE - x11-libs/libSM - x11-libs/libXext - x11-libs/libXt - acl? ( kernel_linux? ( sys-apps/acl ) ) - !aqua? ( - motif? ( >=x11-libs/motif-2.3:0 ) - !motif? ( - x11-libs/gtk+:3 - x11-libs/libXft - ) - ) - crypt? ( dev-libs/libsodium:= ) - cscope? ( dev-util/cscope ) - lua? ( - ${LUA_DEPS} - $(lua_gen_impl_dep 'deprecated' lua5-1) - ) - nls? ( virtual/libintl ) - perl? ( dev-lang/perl:= ) - python? ( ${PYTHON_DEPS} ) - racket? ( dev-scheme/racket ) - ruby? ( ${RUBY_DEPS} ) - selinux? ( sys-libs/libselinux ) - session? ( x11-libs/libSM ) - sound? ( media-libs/libcanberra ) - tcl? ( dev-lang/tcl:0= ) -" -DEPEND="${RDEPEND} - x11-base/xorg-proto" -# configure runs the Lua interpreter -BDEPEND=" - dev-build/autoconf - virtual/pkgconfig - lua? ( ${LUA_DEPS} ) - nls? ( sys-devel/gettext ) -" -PDEPEND="!minimal? ( app-vim/gentoo-syntax )" - -if [[ ${PV} != 9999* ]]; then - # Gentoo patches to fix runtime issues, cross-compile errors, etc - PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" - ) -fi - -# various failures (bugs #630042 and #682320) -RESTRICT="test" - -# platform-specific checks (bug #898450): -# - acl() -- Solaris -# - statacl() -- AIX -QA_CONFIG_IMPL_DECL_SKIP=( - 'acl' - 'statacl' -) - -pkg_setup() { - # people with broken alphabets run into trouble. bug 82186. - unset LANG LC_ALL - export LC_COLLATE="C" - - use lua && lua-single_pkg_setup - use python && python-single-r1_pkg_setup -} - -src_prepare() { - default - - # Fixup a script to use awk instead of nawk - sed -i -e \ - '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ - "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" - - # Read vimrc and gvimrc from /etc/vim - echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - - # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. - # Hopefully this pattern won't break for a while at least. - # This fixes bug 29398 (27 Sep 2003 agriffis) - sed -i -e \ - 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ - "${S}"/runtime/doc/syntax.txt \ - "${S}"/runtime/doc/tagsrch.txt \ - "${S}"/runtime/doc/usr_29.txt \ - "${S}"/runtime/menu.vim \ - "${S}"/src/configure.ac || die 'sed failed' - - # gcc on sparc32 has this, uhm, interesting problem with detecting EOF - # correctly. To avoid some really entertaining error messages about stuff - # which isn't even in the source file being invalid, we'll do some trickery - # to make the error never occur. bug 66162 (02 October 2004 ciaranm) - find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" - done - - # Try to avoid sandbox problems. Bug #114475. - if [[ -d "${S}"/src/po ]]; then - sed -i -e \ - '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ - "${S}"/src/po/Makefile || die - fi - - cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" - - # Fix bug 18245: Prevent "make" from the following chain: - # (1) Notice configure.ac is newer than auto/configure - # (2) Rebuild auto/configure - # (3) Notice auto/configure is newer than auto/config.mk - # (4) Run ./configure (with wrong args) to remake auto/config.mk - sed -i -e \ - 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" - rm -v src/auto/configure || die "rm failed" - - # --with-features=huge forces on cscope even if we --disable it. We need - # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) - if ! use cscope; then - sed -i -e \ - '/# define FEAT_CSCOPE/d' src/feature.h || die "couldn't disable cscope" - fi -} - -src_configure() { - - # Fix bug 37354: Disallow -funroll-all-loops on amd64 - # Bug 57859 suggests that we want to do this for all archs - filter-flags -funroll-all-loops - - # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for - # everyone since previous flag filtering bugs have turned out to affect - # multiple archs... - replace-flags -O3 -O2 - - emake -j1 -C src autoconf - - # This should fix a sandbox violation (see bug 24447). The hvc - # things are for ppc64, see bug 86433. - local file - for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do - if [[ -e ${file} ]]; then - addwrite $file - fi - done - - use debug && append-flags "-DDEBUG" - - local myconf=( - --with-features=huge - --disable-gpm - --with-gnome=no - $(use_enable sound canberra) - $(use_enable acl) - $(use_enable crypt libsodium) - $(use_enable cscope) - $(use_enable netbeans) - $(use_enable nls) - $(use_enable perl perlinterp) - $(use_enable python python3interp) - $(use_with python python3-command "${PYTHON}") - $(use_enable racket mzschemeinterp) - $(use_enable ruby rubyinterp) - $(use_enable selinux) - $(use_enable session xsmp) - $(use_enable tcl tclinterp) - ) - - if use lua; then - # -DLUA_COMPAT_OPENLIB=1 is required to enable the - # deprecated (in 5.1) luaL_openlib API (#874690) - use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1 - - myconf+=( - --enable-luainterp - $(use_with lua_single_target_luajit luajit) - --with-lua-prefix="${EPREFIX}/usr" - ) - fi - - # Default is gtk unless aqua or motif are enabled - echo ; echo - if use aqua; then - einfo "Building gvim with the Carbon GUI" - myconf+=( - --enable-darwin - --enable-gui=carbon - ) - elif use motif; then - einfo "Building gvim with the MOTIF GUI" - myconf+=( --enable-gui=motif ) - else - myconf+=( --enable-gtk3-check ) - einfo "Building gvim with the gtk+-3 GUI" - myconf+=( --enable-gui=gtk3 ) - fi - echo ; echo - - # let package manager strip binaries - export ac_cv_prog_STRIP="$(type -P true ) faking strip" - - # keep prefix env contained within the EPREFIX - use prefix && myconf+=( --without-local-dir ) - - if tc-is-cross-compiler ; then - export vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=yes \ - vim_cv_terminfo=yes \ - vim_cv_toupper_broken=no - fi - - econf \ - --with-modified-by=Gentoo-${PVR} \ - --with-vim-name=gvim \ - --with-x \ - "${myconf[@]}" -} - -src_compile() { - # The following allows emake to be used - emake -j1 -C src auto/osdef.h objects - - emake -} - -src_test() { - einfo - einfo "Starting vim tests. Several error messages will be shown" - einfo "while the tests run. This is normal behaviour and does not" - einfo "indicate a fault." - einfo - ewarn "If the tests fail, your terminal may be left in a strange" - ewarn "state. Usually, running 'reset' will fix this." - einfo - - # Don't let vim talk to X - unset DISPLAY - - # Make gvim not try to connect to X. See :help gui-x11-start in vim for how - # this evil trickery works. - ln -s "${S}"/src/gvim "${S}"/src/testvim || die - - # Make sure our VIMPROG is used. - sed -i -e 's:\.\./vim:../testvim:' src/testdir/test49.vim || die - - # Don't do additional GUI tests. - emake -j1 VIMPROG=../testvim -C src/testdir nongui -} - -# Call eselect vi update with --if-unset -# to respect user's choice (bug 187449) -eselect_vi_update() { - ebegin "Calling eselect vi update" - eselect vi update --if-unset - eend $? -} - -src_install() { - local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} - - dobin src/gvim - dosym gvim /usr/bin/gvimdiff - dosym gvim /usr/bin/evim - dosym gvim /usr/bin/eview - dosym gvim /usr/bin/gview - dosym gvim /usr/bin/rgvim - dosym gvim /usr/bin/rgview - - emake -C src DESTDIR="${D}" DATADIR="${EPREFIX}"/usr/share install-icons - - dodir /usr/share/man/man1 - echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1 || die "echo failed" - echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1 || die "echo failed" - echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1 || \ - die "echo failed" - - insinto /etc/vim - newins "${FILESDIR}"/gvimrc-r1 gvimrc - eprefixify "${ED}"/etc/vim/gvimrc - - # bash completion script, bug #79018. - newbashcomp "${FILESDIR}"/${PN}-completion ${PN} - - # don't install vim desktop file - rm -v "${ED}"/usr/share/applications/vim.desktop || die "failed to remove vim.desktop" -} - -pkg_postinst() { - # update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update fdo mime stuff, bug #78394 - xdg_desktop_database_update - - # update icon cache - xdg_icon_cache_update - - # call eselect vi update - eselect_vi_update -} - -pkg_postrm() { - # update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update fdo mime stuff, bug #78394 - xdg_desktop_database_update - - # update icon cache - xdg_icon_cache_update - - # call eselect vi update - eselect_vi_update -} diff --git a/app-editors/gvim/gvim-9.0.1678.ebuild b/app-editors/gvim/gvim-9.0.1678.ebuild deleted file mode 100644 index 91813ab71f13..000000000000 --- a/app-editors/gvim/gvim-9.0.1678.ebuild +++ /dev/null @@ -1,360 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with app-editors/vim-core and app-editors/vim - -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" - -LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" - -inherit bash-completion-r1 flag-o-matic lua-single prefix python-single-r1 ruby-single toolchain-funcs vim-doc xdg-utils - -if [[ ${PV} == 9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/vim/vim.git" - EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} -else - SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" -fi -S="${WORKDIR}"/vim-${PV} - -DESCRIPTION="GUI version of the Vim text editor" -HOMEPAGE="https://www.vim.org https://github.com/vim/vim" - -LICENSE="vim" -SLOT="0" -IUSE="acl aqua crypt cscope debug lua minimal motif netbeans nls perl python racket ruby selinux session sound tcl" -REQUIRED_USE=" - lua? ( ${LUA_REQUIRED_USE} ) - python? ( ${PYTHON_REQUIRED_USE} ) - aqua? ( !motif ) -" - -RDEPEND=" - ~app-editors/vim-core-${PV} - >=app-eselect/eselect-vi-1.1 - >=sys-libs/ncurses-5.2-r2:0= - x11-libs/libICE - x11-libs/libSM - x11-libs/libXext - x11-libs/libXt - acl? ( kernel_linux? ( sys-apps/acl ) ) - !aqua? ( - motif? ( >=x11-libs/motif-2.3:0 ) - !motif? ( - x11-libs/gtk+:3 - x11-libs/libXft - ) - ) - crypt? ( dev-libs/libsodium:= ) - cscope? ( dev-util/cscope ) - lua? ( - ${LUA_DEPS} - $(lua_gen_impl_dep 'deprecated' lua5-1) - ) - nls? ( virtual/libintl ) - perl? ( dev-lang/perl:= ) - python? ( ${PYTHON_DEPS} ) - racket? ( dev-scheme/racket ) - ruby? ( ${RUBY_DEPS} ) - selinux? ( sys-libs/libselinux ) - session? ( x11-libs/libSM ) - sound? ( media-libs/libcanberra ) - tcl? ( dev-lang/tcl:0= ) -" -DEPEND="${RDEPEND} - x11-base/xorg-proto" -# configure runs the Lua interpreter -BDEPEND=" - dev-build/autoconf - virtual/pkgconfig - lua? ( ${LUA_DEPS} ) - nls? ( sys-devel/gettext ) -" -PDEPEND="!minimal? ( app-vim/gentoo-syntax )" - -if [[ ${PV} != 9999* ]]; then - # Gentoo patches to fix runtime issues, cross-compile errors, etc - PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" - ) -fi - -# various failures (bugs #630042 and #682320) -RESTRICT="test" - -# platform-specific checks (bug #898450): -# - acl() -- Solaris -# - statacl() -- AIX -QA_CONFIG_IMPL_DECL_SKIP=( - 'acl' - 'statacl' -) - -pkg_setup() { - # people with broken alphabets run into trouble. bug 82186. - unset LANG LC_ALL - export LC_COLLATE="C" - - use lua && lua-single_pkg_setup - use python && python-single-r1_pkg_setup -} - -src_prepare() { - default - - # Fixup a script to use awk instead of nawk - sed -i -e \ - '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ - "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" - - # Read vimrc and gvimrc from /etc/vim - echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - - # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. - # Hopefully this pattern won't break for a while at least. - # This fixes bug 29398 (27 Sep 2003 agriffis) - sed -i -e \ - 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ - "${S}"/runtime/doc/syntax.txt \ - "${S}"/runtime/doc/tagsrch.txt \ - "${S}"/runtime/doc/usr_29.txt \ - "${S}"/runtime/menu.vim \ - "${S}"/src/configure.ac || die 'sed failed' - - # gcc on sparc32 has this, uhm, interesting problem with detecting EOF - # correctly. To avoid some really entertaining error messages about stuff - # which isn't even in the source file being invalid, we'll do some trickery - # to make the error never occur. bug 66162 (02 October 2004 ciaranm) - find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" - done - - # Try to avoid sandbox problems. Bug #114475. - if [[ -d "${S}"/src/po ]]; then - sed -i -e \ - '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ - "${S}"/src/po/Makefile || die - fi - - cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" - - # Fix bug 18245: Prevent "make" from the following chain: - # (1) Notice configure.ac is newer than auto/configure - # (2) Rebuild auto/configure - # (3) Notice auto/configure is newer than auto/config.mk - # (4) Run ./configure (with wrong args) to remake auto/config.mk - sed -i -e \ - 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" - rm -v src/auto/configure || die "rm failed" - - # --with-features=huge forces on cscope even if we --disable it. We need - # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) - if ! use cscope; then - sed -i -e \ - '/# define FEAT_CSCOPE/d' src/feature.h || die "couldn't disable cscope" - fi -} - -src_configure() { - - # Fix bug 37354: Disallow -funroll-all-loops on amd64 - # Bug 57859 suggests that we want to do this for all archs - filter-flags -funroll-all-loops - - # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for - # everyone since previous flag filtering bugs have turned out to affect - # multiple archs... - replace-flags -O3 -O2 - - emake -j1 -C src autoconf - - # This should fix a sandbox violation (see bug 24447). The hvc - # things are for ppc64, see bug 86433. - local file - for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do - if [[ -e ${file} ]]; then - addwrite $file - fi - done - - use debug && append-flags "-DDEBUG" - - local myconf=( - --with-features=huge - --disable-gpm - --with-gnome=no - $(use_enable sound canberra) - $(use_enable acl) - $(use_enable crypt libsodium) - $(use_enable cscope) - $(use_enable netbeans) - $(use_enable nls) - $(use_enable perl perlinterp) - $(use_enable python python3interp) - $(use_with python python3-command "${PYTHON}") - $(use_enable racket mzschemeinterp) - $(use_enable ruby rubyinterp) - $(use_enable selinux) - $(use_enable session xsmp) - $(use_enable tcl tclinterp) - ) - - if use lua; then - # -DLUA_COMPAT_OPENLIB=1 is required to enable the - # deprecated (in 5.1) luaL_openlib API (#874690) - use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1 - - myconf+=( - --enable-luainterp - $(use_with lua_single_target_luajit luajit) - --with-lua-prefix="${EPREFIX}/usr" - ) - fi - - # Default is gtk unless aqua or motif are enabled - echo ; echo - if use aqua; then - einfo "Building gvim with the Carbon GUI" - myconf+=( - --enable-darwin - --enable-gui=carbon - ) - elif use motif; then - einfo "Building gvim with the MOTIF GUI" - myconf+=( --enable-gui=motif ) - else - myconf+=( --enable-gtk3-check ) - einfo "Building gvim with the gtk+-3 GUI" - myconf+=( --enable-gui=gtk3 ) - fi - echo ; echo - - # let package manager strip binaries - export ac_cv_prog_STRIP="$(type -P true ) faking strip" - - # keep prefix env contained within the EPREFIX - use prefix && myconf+=( --without-local-dir ) - - if tc-is-cross-compiler ; then - export vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=yes \ - vim_cv_terminfo=yes \ - vim_cv_toupper_broken=no - fi - - econf \ - --with-modified-by="Gentoo-${PVR} (RIP Bram)" \ - --with-vim-name=gvim \ - --with-x \ - "${myconf[@]}" -} - -src_compile() { - # The following allows emake to be used - emake -j1 -C src auto/osdef.h objects - - emake -} - -src_test() { - einfo - einfo "Starting vim tests. Several error messages will be shown" - einfo "while the tests run. This is normal behaviour and does not" - einfo "indicate a fault." - einfo - ewarn "If the tests fail, your terminal may be left in a strange" - ewarn "state. Usually, running 'reset' will fix this." - einfo - - # Don't let vim talk to X - unset DISPLAY - - # Make gvim not try to connect to X. See :help gui-x11-start in vim for how - # this evil trickery works. - ln -s "${S}"/src/gvim "${S}"/src/testvim || die - - # Make sure our VIMPROG is used. - sed -i -e 's:\.\./vim:../testvim:' src/testdir/test49.vim || die - - # Don't do additional GUI tests. - emake -j1 VIMPROG=../testvim -C src/testdir nongui -} - -# Call eselect vi update with --if-unset -# to respect user's choice (bug 187449) -eselect_vi_update() { - ebegin "Calling eselect vi update" - eselect vi update --if-unset - eend $? -} - -src_install() { - local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} - - dobin src/gvim - dosym gvim /usr/bin/gvimdiff - dosym gvim /usr/bin/evim - dosym gvim /usr/bin/eview - dosym gvim /usr/bin/gview - dosym gvim /usr/bin/rgvim - dosym gvim /usr/bin/rgview - - emake -C src DESTDIR="${D}" DATADIR="${EPREFIX}"/usr/share install-icons - - dodir /usr/share/man/man1 - echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1 || die "echo failed" - echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1 || die "echo failed" - echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1 || \ - die "echo failed" - - insinto /etc/vim - newins "${FILESDIR}"/gvimrc-r1 gvimrc - eprefixify "${ED}"/etc/vim/gvimrc - - # bash completion script, bug #79018. - newbashcomp "${FILESDIR}"/${PN}-completion ${PN} - - # don't install vim desktop file - rm -v "${ED}"/usr/share/applications/vim.desktop || die "failed to remove vim.desktop" -} - -pkg_postinst() { - # update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update fdo mime stuff, bug #78394 - xdg_desktop_database_update - - # update icon cache - xdg_icon_cache_update - - # call eselect vi update - eselect_vi_update -} - -pkg_postrm() { - # update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update fdo mime stuff, bug #78394 - xdg_desktop_database_update - - # update icon cache - xdg_icon_cache_update - - # call eselect vi update - eselect_vi_update -} diff --git a/app-editors/gvim/gvim-9.0.1777.ebuild b/app-editors/gvim/gvim-9.0.1777.ebuild deleted file mode 100644 index 5d9b88f5d4f7..000000000000 --- a/app-editors/gvim/gvim-9.0.1777.ebuild +++ /dev/null @@ -1,360 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with app-editors/vim-core and app-editors/vim - -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" - -LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" - -inherit bash-completion-r1 flag-o-matic lua-single prefix python-single-r1 ruby-single toolchain-funcs vim-doc xdg-utils - -if [[ ${PV} == 9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/vim/vim.git" - EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} -else - SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" -fi -S="${WORKDIR}"/vim-${PV} - -DESCRIPTION="GUI version of the Vim text editor" -HOMEPAGE="https://www.vim.org https://github.com/vim/vim" - -LICENSE="vim" -SLOT="0" -IUSE="acl aqua crypt cscope debug lua minimal motif netbeans nls perl python racket ruby selinux session sound tcl" -REQUIRED_USE=" - lua? ( ${LUA_REQUIRED_USE} ) - python? ( ${PYTHON_REQUIRED_USE} ) - aqua? ( !motif ) -" - -RDEPEND=" - ~app-editors/vim-core-${PV} - >=app-eselect/eselect-vi-1.1 - >=sys-libs/ncurses-5.2-r2:0= - x11-libs/libICE - x11-libs/libSM - x11-libs/libXext - x11-libs/libXt - acl? ( kernel_linux? ( sys-apps/acl ) ) - !aqua? ( - motif? ( >=x11-libs/motif-2.3:0 ) - !motif? ( - x11-libs/gtk+:3 - x11-libs/libXft - ) - ) - crypt? ( dev-libs/libsodium:= ) - cscope? ( dev-util/cscope ) - lua? ( - ${LUA_DEPS} - $(lua_gen_impl_dep 'deprecated' lua5-1) - ) - nls? ( virtual/libintl ) - perl? ( dev-lang/perl:= ) - python? ( ${PYTHON_DEPS} ) - racket? ( dev-scheme/racket ) - ruby? ( ${RUBY_DEPS} ) - selinux? ( sys-libs/libselinux ) - session? ( x11-libs/libSM ) - sound? ( media-libs/libcanberra ) - tcl? ( dev-lang/tcl:0= ) -" -DEPEND="${RDEPEND} - x11-base/xorg-proto" -# configure runs the Lua interpreter -BDEPEND=" - dev-build/autoconf - virtual/pkgconfig - lua? ( ${LUA_DEPS} ) - nls? ( sys-devel/gettext ) -" -PDEPEND="!minimal? ( app-vim/gentoo-syntax )" - -if [[ ${PV} != 9999* ]]; then - # Gentoo patches to fix runtime issues, cross-compile errors, etc - PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" - ) -fi - -# various failures (bugs #630042 and #682320) -RESTRICT="test" - -# platform-specific checks (bug #898450): -# - acl() -- Solaris -# - statacl() -- AIX -QA_CONFIG_IMPL_DECL_SKIP=( - 'acl' - 'statacl' -) - -pkg_setup() { - # people with broken alphabets run into trouble. bug 82186. - unset LANG LC_ALL - export LC_COLLATE="C" - - use lua && lua-single_pkg_setup - use python && python-single-r1_pkg_setup -} - -src_prepare() { - default - - # Fixup a script to use awk instead of nawk - sed -i -e \ - '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ - "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" - - # Read vimrc and gvimrc from /etc/vim - echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - - # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. - # Hopefully this pattern won't break for a while at least. - # This fixes bug 29398 (27 Sep 2003 agriffis) - sed -i -e \ - 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ - "${S}"/runtime/doc/syntax.txt \ - "${S}"/runtime/doc/tagsrch.txt \ - "${S}"/runtime/doc/usr_29.txt \ - "${S}"/runtime/menu.vim \ - "${S}"/src/configure.ac || die 'sed failed' - - # gcc on sparc32 has this, uhm, interesting problem with detecting EOF - # correctly. To avoid some really entertaining error messages about stuff - # which isn't even in the source file being invalid, we'll do some trickery - # to make the error never occur. bug 66162 (02 October 2004 ciaranm) - find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" - done - - # Try to avoid sandbox problems. Bug #114475. - if [[ -d "${S}"/src/po ]]; then - sed -i -e \ - '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ - "${S}"/src/po/Makefile || die - fi - - cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" - - # Fix bug 18245: Prevent "make" from the following chain: - # (1) Notice configure.ac is newer than auto/configure - # (2) Rebuild auto/configure - # (3) Notice auto/configure is newer than auto/config.mk - # (4) Run ./configure (with wrong args) to remake auto/config.mk - sed -i -e \ - 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" - rm -v src/auto/configure || die "rm failed" - - # --with-features=huge forces on cscope even if we --disable it. We need - # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) - if ! use cscope; then - sed -i -e \ - '/# define FEAT_CSCOPE/d' src/feature.h || die "couldn't disable cscope" - fi -} - -src_configure() { - - # Fix bug 37354: Disallow -funroll-all-loops on amd64 - # Bug 57859 suggests that we want to do this for all archs - filter-flags -funroll-all-loops - - # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for - # everyone since previous flag filtering bugs have turned out to affect - # multiple archs... - replace-flags -O3 -O2 - - emake -j1 -C src autoconf - - # This should fix a sandbox violation (see bug 24447). The hvc - # things are for ppc64, see bug 86433. - local file - for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do - if [[ -e ${file} ]]; then - addwrite $file - fi - done - - use debug && append-flags "-DDEBUG" - - local myconf=( - --with-features=huge - --disable-gpm - --with-gnome=no - $(use_enable sound canberra) - $(use_enable acl) - $(use_enable crypt libsodium) - $(use_enable cscope) - $(use_enable netbeans) - $(use_enable nls) - $(use_enable perl perlinterp) - $(use_enable python python3interp) - $(use_with python python3-command "${PYTHON}") - $(use_enable racket mzschemeinterp) - $(use_enable ruby rubyinterp) - $(use_enable selinux) - $(use_enable session xsmp) - $(use_enable tcl tclinterp) - ) - - if use lua; then - # -DLUA_COMPAT_OPENLIB=1 is required to enable the - # deprecated (in 5.1) luaL_openlib API (#874690) - use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1 - - myconf+=( - --enable-luainterp - $(use_with lua_single_target_luajit luajit) - --with-lua-prefix="${EPREFIX}/usr" - ) - fi - - # Default is gtk unless aqua or motif are enabled - echo ; echo - if use aqua; then - einfo "Building gvim with the Carbon GUI" - myconf+=( - --enable-darwin - --enable-gui=carbon - ) - elif use motif; then - einfo "Building gvim with the MOTIF GUI" - myconf+=( --enable-gui=motif ) - else - myconf+=( --enable-gtk3-check ) - einfo "Building gvim with the gtk+-3 GUI" - myconf+=( --enable-gui=gtk3 ) - fi - echo ; echo - - # let package manager strip binaries - export ac_cv_prog_STRIP="$(type -P true ) faking strip" - - # keep prefix env contained within the EPREFIX - use prefix && myconf+=( --without-local-dir ) - - if tc-is-cross-compiler ; then - export vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=yes \ - vim_cv_terminfo=yes \ - vim_cv_toupper_broken=no - fi - - econf \ - --with-modified-by="Gentoo-${PVR} (RIP Bram)" \ - --with-vim-name=gvim \ - --with-x \ - "${myconf[@]}" -} - -src_compile() { - # The following allows emake to be used - emake -j1 -C src auto/osdef.h objects - - emake -} - -src_test() { - einfo - einfo "Starting vim tests. Several error messages will be shown" - einfo "while the tests run. This is normal behaviour and does not" - einfo "indicate a fault." - einfo - ewarn "If the tests fail, your terminal may be left in a strange" - ewarn "state. Usually, running 'reset' will fix this." - einfo - - # Don't let vim talk to X - unset DISPLAY - - # Make gvim not try to connect to X. See :help gui-x11-start in vim for how - # this evil trickery works. - ln -s "${S}"/src/gvim "${S}"/src/testvim || die - - # Make sure our VIMPROG is used. - sed -i -e 's:\.\./vim:../testvim:' src/testdir/test49.vim || die - - # Don't do additional GUI tests. - emake -j1 VIMPROG=../testvim -C src/testdir nongui -} - -# Call eselect vi update with --if-unset -# to respect user's choice (bug 187449) -eselect_vi_update() { - ebegin "Calling eselect vi update" - eselect vi update --if-unset - eend $? -} - -src_install() { - local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} - - dobin src/gvim - dosym gvim /usr/bin/gvimdiff - dosym gvim /usr/bin/evim - dosym gvim /usr/bin/eview - dosym gvim /usr/bin/gview - dosym gvim /usr/bin/rgvim - dosym gvim /usr/bin/rgview - - emake -C src DESTDIR="${D}" DATADIR="${EPREFIX}"/usr/share install-icons - - dodir /usr/share/man/man1 - echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1 || die "echo failed" - echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1 || die "echo failed" - echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1 || \ - die "echo failed" - - insinto /etc/vim - newins "${FILESDIR}"/gvimrc-r1 gvimrc - eprefixify "${ED}"/etc/vim/gvimrc - - # bash completion script, bug #79018. - newbashcomp "${FILESDIR}"/${PN}-completion ${PN} - - # don't install vim desktop file - rm -v "${ED}"/usr/share/applications/vim.desktop || die "failed to remove vim.desktop" -} - -pkg_postinst() { - # update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update fdo mime stuff, bug #78394 - xdg_desktop_database_update - - # update icon cache - xdg_icon_cache_update - - # call eselect vi update - eselect_vi_update -} - -pkg_postrm() { - # update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update fdo mime stuff, bug #78394 - xdg_desktop_database_update - - # update icon cache - xdg_icon_cache_update - - # call eselect vi update - eselect_vi_update -} diff --git a/app-editors/gvim/gvim-9.1.0366.ebuild b/app-editors/gvim/gvim-9.1.0366.ebuild index 826999e81017..0b232812613b 100644 --- a/app-editors/gvim/gvim-9.1.0366.ebuild +++ b/app-editors/gvim/gvim-9.1.0366.ebuild @@ -22,7 +22,7 @@ if [[ ${PV} == 9999* ]]; then else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" + KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" fi S="${WORKDIR}"/vim-${PV} diff --git a/app-editors/gvim/gvim-9.0.2092.ebuild b/app-editors/gvim/gvim-9.1.0470.ebuild index b4393c4f6a4c..826999e81017 100644 --- a/app-editors/gvim/gvim-9.0.2092.ebuild +++ b/app-editors/gvim/gvim-9.1.0470.ebuild @@ -5,13 +5,13 @@ EAPI=8 # Please bump with app-editors/vim-core and app-editors/vim -VIM_VERSION="9.0" +VIM_VERSION="9.1" VIM_PATCHES_VERSION="9.0.2092" LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) +PYTHON_COMPAT=( python3_{10..12} ) PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" +USE_RUBY="ruby31 ruby32" inherit bash-completion-r1 flag-o-matic lua-single prefix python-single-r1 ruby-single toolchain-funcs vim-doc xdg-utils @@ -22,7 +22,7 @@ if [[ ${PV} == 9999* ]]; then else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" fi S="${WORKDIR}"/vim-${PV} @@ -118,9 +118,9 @@ src_prepare() { # Read vimrc and gvimrc from /etc/vim echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" + >> "${S}"/src/feature.h || die "echo failed" echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" + >> "${S}"/src/feature.h || die "echo failed" # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. # Hopefully this pattern won't break for a while at least. @@ -138,7 +138,7 @@ src_prepare() { # which isn't even in the source file being invalid, we'll do some trickery # to make the error never occur. bug 66162 (02 October 2004 ciaranm) find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" + echo >> "$c" || die "echo failed" done # Try to avoid sandbox problems. Bug #114475. @@ -165,6 +165,11 @@ src_prepare() { sed -i -e \ '/# define FEAT_CSCOPE/d' src/feature.h || die "couldn't disable cscope" fi + + # bug 908961 + if use elibc_musl ; then + sed -i -e '/ja.sjis/d' src/po/Make_all.mak || die + fi } src_configure() { diff --git a/app-editors/gvim/gvim-9999.ebuild b/app-editors/gvim/gvim-9999.ebuild index 9f2b67d6fdc0..826999e81017 100644 --- a/app-editors/gvim/gvim-9999.ebuild +++ b/app-editors/gvim/gvim-9999.ebuild @@ -5,13 +5,13 @@ EAPI=8 # Please bump with app-editors/vim-core and app-editors/vim -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" +VIM_VERSION="9.1" +VIM_PATCHES_VERSION="9.0.2092" LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) +PYTHON_COMPAT=( python3_{10..12} ) PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" +USE_RUBY="ruby31 ruby32" inherit bash-completion-r1 flag-o-matic lua-single prefix python-single-r1 ruby-single toolchain-funcs vim-doc xdg-utils @@ -21,7 +21,7 @@ if [[ ${PV} == 9999* ]]; then EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" + https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" fi S="${WORKDIR}"/vim-${PV} @@ -70,7 +70,8 @@ RDEPEND=" sound? ( media-libs/libcanberra ) tcl? ( dev-lang/tcl:0= ) " -DEPEND="${RDEPEND}" +DEPEND="${RDEPEND} + x11-base/xorg-proto" # configure runs the Lua interpreter BDEPEND=" dev-build/autoconf @@ -83,7 +84,7 @@ PDEPEND="!minimal? ( app-vim/gentoo-syntax )" if [[ ${PV} != 9999* ]]; then # Gentoo patches to fix runtime issues, cross-compile errors, etc PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" + "${WORKDIR}/vim-${VIM_PATCHES_VERSION}-patches" ) fi @@ -117,9 +118,9 @@ src_prepare() { # Read vimrc and gvimrc from /etc/vim echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" + >> "${S}"/src/feature.h || die "echo failed" echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" + >> "${S}"/src/feature.h || die "echo failed" # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. # Hopefully this pattern won't break for a while at least. @@ -137,7 +138,7 @@ src_prepare() { # which isn't even in the source file being invalid, we'll do some trickery # to make the error never occur. bug 66162 (02 October 2004 ciaranm) find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" + echo >> "$c" || die "echo failed" done # Try to avoid sandbox problems. Bug #114475. @@ -260,7 +261,7 @@ src_configure() { fi econf \ - --with-modified-by=Gentoo-${PVR} \ + --with-modified-by="Gentoo-${PVR} (RIP Bram)" \ --with-vim-name=gvim \ --with-x \ "${myconf[@]}" diff --git a/app-editors/helix/helix-23.05.ebuild b/app-editors/helix/helix-23.05.ebuild index 74e224996d9b..8f47c3f4d3ff 100644 --- a/app-editors/helix/helix-23.05.ebuild +++ b/app-editors/helix/helix-23.05.ebuild @@ -1,4 +1,4 @@ -# Copyright 2023-2023 Gentoo Authors +# Copyright 2023-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -263,11 +263,9 @@ S="${WORKDIR}" LICENSE="0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 ISC MIT MPL-2.0 Unicode-DFS-2016 Unlicense ZLIB" SLOT="0" KEYWORDS="~amd64" -IUSE="+grammar" QA_FLAGS_IGNORED=" usr/bin/hx - usr/share/helix/runtime/grammars/.*\.so " DOCS=( @@ -278,7 +276,7 @@ DOCS=( ) src_compile() { - use grammar || local -x HELIX_DISABLE_AUTO_GRAMMAR_BUILD=1 + local -x HELIX_DISABLE_AUTO_GRAMMAR_BUILD=1 cargo_src_compile } @@ -286,12 +284,10 @@ src_compile() { src_install() { cargo_src_install --path helix-term - rm -r runtime/grammars/.gitkeep || die - rm -r runtime/grammars/sources || die + insinto /usr/share/helix/runtime + doins -r runtime/{queries,themes,tutor} insinto /usr/share/helix - doins -r runtime - dodoc -r "${DOCS[@]}" doicon -s 256x256 contrib/${PN}.png diff --git a/app-editors/helix/helix-23.10-r2.ebuild b/app-editors/helix/helix-23.10-r2.ebuild index e28a697c495b..2ee1d5fb78d8 100644 --- a/app-editors/helix/helix-23.10-r2.ebuild +++ b/app-editors/helix/helix-23.10-r2.ebuild @@ -277,14 +277,11 @@ S="${WORKDIR}" LICENSE="0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 ISC MIT MPL-2.0 Unicode-DFS-2016 Unlicense ZLIB" SLOT="0" KEYWORDS="amd64" -IUSE="+grammar" -BDEPEND="grammar? ( dev-vcs/git )" RDEPEND="dev-vcs/git" QA_FLAGS_IGNORED=" usr/bin/hx - usr/share/helix/runtime/grammars/.*\.so " DOCS=( @@ -299,7 +296,7 @@ PATCHES=( ) src_compile() { - use grammar || local -x HELIX_DISABLE_AUTO_GRAMMAR_BUILD=1 + local -x HELIX_DISABLE_AUTO_GRAMMAR_BUILD=1 cargo_src_compile } @@ -307,12 +304,10 @@ src_compile() { src_install() { cargo_src_install --path helix-term - rm -r runtime/grammars/.gitkeep || die - rm -r runtime/grammars/sources || die + insinto /usr/share/helix/runtime + doins -r runtime/{queries,themes,tutor} insinto /usr/share/helix - doins -r runtime - dodoc -r "${DOCS[@]}" doicon -s 256x256 contrib/${PN}.png @@ -329,11 +324,16 @@ src_install() { } pkg_postinst() { - einfo "The runtime files (grammars, queries, themes) have been" + einfo "The runtime files (queries, themes) have been" einfo "installed in '/usr/share/helix/runtime'. The environment variable" einfo "HELIX_RUNTIME was also installed on your system. In running shell instances" einfo "you need to run 'source /etc/profile' to pick up the new variable" einfo "or manually set the environment variable HELIX_RUNTIME=/usr/share/helix/runtime." + einfo "" + einfo "Grammars are not installed yet. To fetch and install them, run:" + einfo "" + einfo " hx --grammar fetch" + einfo " hx --grammar build" xdg_desktop_database_update xdg_icon_cache_update } diff --git a/app-editors/helix/helix-24.03.ebuild b/app-editors/helix/helix-24.03.ebuild index b989a0d04ed8..ae80d6841b50 100644 --- a/app-editors/helix/helix-24.03.ebuild +++ b/app-editors/helix/helix-24.03.ebuild @@ -290,14 +290,11 @@ S="${WORKDIR}" LICENSE="0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 ISC MIT MPL-2.0 Unicode-DFS-2016 Unlicense ZLIB" SLOT="0" KEYWORDS="~amd64" -IUSE="+grammar" -BDEPEND="grammar? ( dev-vcs/git )" RDEPEND="dev-vcs/git" QA_FLAGS_IGNORED=" usr/bin/hx - usr/share/helix/runtime/grammars/.*\.so " DOCS=( @@ -308,7 +305,7 @@ DOCS=( ) src_compile() { - use grammar || local -x HELIX_DISABLE_AUTO_GRAMMAR_BUILD=1 + local -x HELIX_DISABLE_AUTO_GRAMMAR_BUILD=1 cargo_src_compile } @@ -316,12 +313,10 @@ src_compile() { src_install() { cargo_src_install --path helix-term - rm -r runtime/grammars/.gitkeep || die - rm -r runtime/grammars/sources || die + insinto /usr/share/helix/runtime + doins -r runtime/{queries,themes,tutor} insinto /usr/share/helix - doins -r runtime - dodoc -r "${DOCS[@]}" doicon -s 256x256 contrib/${PN}.png @@ -338,11 +333,16 @@ src_install() { } pkg_postinst() { - einfo "The runtime files (grammars, queries, themes) have been" + einfo "The runtime files (queries, themes) have been" einfo "installed in '/usr/share/helix/runtime'. The environment variable" einfo "HELIX_RUNTIME was also installed on your system. In running shell instances" einfo "you need to run 'source /etc/profile' to pick up the new variable" einfo "or manually set the environment variable HELIX_RUNTIME=/usr/share/helix/runtime." + einfo "" + einfo "Grammars are not installed yet. To fetch and install them, run:" + einfo "" + einfo " hx --grammar fetch" + einfo " hx --grammar build" xdg_desktop_database_update xdg_icon_cache_update } diff --git a/app-editors/helix/metadata.xml b/app-editors/helix/metadata.xml index 07edb24ed94b..f699ef0c9568 100644 --- a/app-editors/helix/metadata.xml +++ b/app-editors/helix/metadata.xml @@ -13,9 +13,6 @@ <email>proxy-maint@gentoo.org</email> <name>Proxy Maintainers</name> </maintainer> - <use> - <flag name="grammar">Build and install grammar language files</flag> - </use> <upstream> <bugs-to>https://github.com/helix-editor/helix/issues</bugs-to> <changelog>https://github.com/helix-editor/helix/commits/master</changelog> diff --git a/app-editors/hyx/Manifest b/app-editors/hyx/Manifest index f504800319e1..dc6685b59878 100644 --- a/app-editors/hyx/Manifest +++ b/app-editors/hyx/Manifest @@ -1,2 +1 @@ -DIST hyx-2021.06.09.tar.xz 13864 BLAKE2B 2c97364e1ae185e7dd63fdfb452637cb68b8ab0d76d0009ce515d6f0fe709d38b910f86dfa465ac6843c88feb997dfdc3c736e21bb0b4265a39440c054f75251 SHA512 43f990e29ce097f8e2378a4511a3097e2576fd72e16f3b5c81688702487c8715e7189cb4a368e344c5440a90a1c759d2f76e7831ab401fa814f7e5ff7e145bd8 DIST hyx-2024.02.29.tar.xz 13964 BLAKE2B 8333f6fa1a2be76152d9753fd0c759bd82679cb09d936df5e4a6caba87c5ff81c141a5d47f79047601bbd85a1efd0f371a111db14a019c7fc6da4ed095a312a5 SHA512 b5c17b045d1c97106212745b1bb4c4052cfe7ac5a28ec0a2240764785410d7e68292d0ff976fbdc58172cd9433ce49b1cad89b767e09d5d6207088a6a60b4e85 diff --git a/app-editors/hyx/files/hyx-ldflags.patch b/app-editors/hyx/files/hyx-ldflags.patch deleted file mode 100644 index 714e76a795db..000000000000 --- a/app-editors/hyx/files/hyx-ldflags.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -Naur hyx-2021.06.09.org/Makefile hyx-2021.06.09/Makefile ---- hyx-2021.06.09.org/Makefile 2021-06-09 18:09:18.000000000 +0200 -+++ hyx-2021.06.09/Makefile 2022-08-31 08:20:27.711819466 +0200 -@@ -1,18 +1,19 @@ - - all: CFLAGS ?= -O2 -Wl,-s \ -- -Wl,-z,relro,-z,now -fpic -pie -D_FORTIFY_SOURCE=2 -fstack-protector-all --all: CFLAGS += -std=c99 -pedantic -Wall -Wextra -DNDEBUG -+ -std=c99 -pedantic -Wall -Wextra -DNDEBUG -+all: LDFLAGS ?= -Wl,-z,relro,-z,now -fpic -pie -D_FORTIFY_SOURCE=2 -fstack-protector-all - all: hyx - - debug: CFLAGS ?= -O0 -g \ - -fsanitize=undefined \ -- -Wl,-z,relro,-z,now -fpic -pie -fstack-protector-all --debug: CFLAGS += -std=c99 -pedantic -Wall -Wextra -Werror -+ -std=c99 -pedantic -Wall -Wextra -Werror -+debug: LDFLAGS ?= -Wl,-z,relro,-z,now -fpic -pie -fstack-protector-all - debug: hyx - - hyx: *.h *.c - $(CC) \ - $(CFLAGS) \ -+ $(LDFLAGS) \ - hyx.c common.c blob.c history.c view.c input.c \ - -o hyx - diff --git a/app-editors/hyx/hyx-2021.06.09.ebuild b/app-editors/hyx/hyx-2021.06.09.ebuild deleted file mode 100644 index 4877bc384b3b..000000000000 --- a/app-editors/hyx/hyx-2021.06.09.ebuild +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit toolchain-funcs - -DESCRIPTION="A minimalistic console hex editor with vim-like controls" -HOMEPAGE="https://yx7.cc/code/" -SRC_URI="https://yx7.cc/code/hyx/${P}.tar.xz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 x86" - -PATCHES=( - # Avoid complaining about not respecting LDFLAGS - "${FILESDIR}/${PN}-ldflags.patch" -) - -src_compile() { - CC=$(tc-getCC) emake -} - -src_install() { - dobin hyx -} diff --git a/app-editors/hyx/hyx-2024.02.29.ebuild b/app-editors/hyx/hyx-2024.02.29.ebuild index 7bc61a413080..d5035733cf9e 100644 --- a/app-editors/hyx/hyx-2024.02.29.ebuild +++ b/app-editors/hyx/hyx-2024.02.29.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://yx7.cc/code/hyx/${P}.tar.xz" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 x86" src_compile() { CC=$(tc-getCC) emake diff --git a/app-editors/juffed/metadata.xml b/app-editors/juffed/metadata.xml index a475b019c5cf..6c3a67d3900a 100644 --- a/app-editors/juffed/metadata.xml +++ b/app-editors/juffed/metadata.xml @@ -1,10 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="project"> - <email>qt@gentoo.org</email> - <name>Gentoo Qt Project</name> - </maintainer> + <!-- maintainer-needed --> <upstream> <remote-id type="sourceforge">juffed</remote-id> <remote-id type="github">Mezomish/juffed</remote-id> diff --git a/app-editors/mg/mg-20230501.ebuild b/app-editors/mg/mg-20230501.ebuild index dc7838663d6b..9724cf464295 100644 --- a/app-editors/mg/mg-20230501.ebuild +++ b/app-editors/mg/mg-20230501.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/hboetes/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="public-domain" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ~ppc64 ~riscv sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ppc ~ppc64 ~riscv sparc x86" IUSE="livecd" RDEPEND=" diff --git a/app-editors/nano/nano-8.0.ebuild b/app-editors/nano/nano-8.0.ebuild index e66a301a6c4b..b2711faf22a3 100644 --- a/app-editors/nano/nano-8.0.ebuild +++ b/app-editors/nano/nano-8.0.ebuild @@ -11,7 +11,7 @@ if [[ ${PV} == 9999 ]] ; then else MY_P="${PN}-${PV/_}" SRC_URI="https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi DESCRIPTION="GNU GPL'd Pico clone with more functionality" diff --git a/app-editors/neovim/Manifest b/app-editors/neovim/Manifest index ee8308abaa48..052fb11ac704 100644 --- a/app-editors/neovim/Manifest +++ b/app-editors/neovim/Manifest @@ -1,2 +1,3 @@ +DIST neovim-0.10.0.tar.gz 12792034 BLAKE2B b9bf44d2f0ae1075196f5f96b2fb5e974907406fa6e5bf09593d1f9f36135dab466b6a063d1d03e3716dce435df296ec6d00a2f015e85d0edd231fb9fd4c9385 SHA512 878cb58729a18179b38303bd9cf79e38997c87946665ac4e7b76d87e15f5d001028fd1454ce30b20773b20a4fe929dfa399fc2ec7f6db0774a4e864c9e8586c1 DIST neovim-0.9.4.tar.gz 11585425 BLAKE2B f98b9737df537be9a6f9bfba0e48f47f33cacdf5aa5f9fb3b47a693ea9fa5fbe32aa8628403fdb136b625ccad30c8aad1c25abe280384515df603e92d9ed898a SHA512 a9bac18aeecd99dfeab79b367c3f0c46003b95d057edb6fd18ba178d6b6f22434689508d0bfe91b2f771ef0a23a4888815e8c4001abb76f2a60357bab0cd7004 DIST neovim-0.9.5.tar.gz 11590180 BLAKE2B a982ea5704a8e5810c42475198157c3d2255c033f47cba940f9f6414c649167ecafe08c7fe9aeb3154a15566fdf8f5db8d535fa752e467e36ff5d552a7aa2179 SHA512 6e20d0a1d506dc292dd68dabe4b5635f86c019ca832f9927e907377e6d21fe7765b3010f5bba644bb2d7a76c178d55b290af24856a7e3c4083a1aa60bc496775 diff --git a/app-editors/neovim/files/sysinit.vim-r1 b/app-editors/neovim/files/sysinit.vim-r1 new file mode 100644 index 000000000000..de47eef7299e --- /dev/null +++ b/app-editors/neovim/files/sysinit.vim-r1 @@ -0,0 +1,97 @@ +" Default Gentoo configuration file for neovim +" Based on the default vimrc shipped by Gentoo with app-editors/vim-core + +" You can override any of these settings on a global basis via the +" "/etc/vim/nvimrc.local" file, and on a per-user basis via "~/.nvimrc". +" You may need to create these. + +" Neovim comes with sensible defaults, see: +" https://github.com/neovim/neovim/issues/2676 +" Most of the general settings from Gentoo's vimrc have been dropped here. +" We add only some necessary fixes and a few Gentoo specific settings. + +" {{{ Locale settings +" If we have a BOM, always honour that rather than trying to guess. +if &fileencodings !~? "ucs-bom" + set fileencodings^=ucs-bom +endif + +" Always check for UTF-8 when trying to determine encodings. +if &fileencodings !~? "utf-8" + " If we have to add this, the default encoding is not Unicode. + let g:added_fenc_utf8 = 1 + set fileencodings+=utf-8 +endif +" }}} + +" {{{ Fix &shell, see bug #101665. +if "" == &shell + if executable("/bin/bash") + set shell=/bin/bash + elseif executable("/bin/sh") + set shell=/bin/sh + endif +endif +"}}} + +" {{{ Our default /bin/sh is bash, not ksh, so syntax highlighting for .sh +" files should default to bash. See :help sh-syntax and bug #101819. +if has("eval") + let is_bash=1 +endif +" }}} + +" {{{ Autocommands +if has("autocmd") + +augroup gentoo + au! + + " Gentoo-specific settings for ebuilds. These are the federally-mandated + " required tab settings. See the following for more information: + " http://www.gentoo.org/proj/en/devrel/handbook/handbook.xml + " Note that the rules below are very minimal and don't cover everything. + " Better to emerge app-vim/gentoo-syntax, which provides full syntax, + " filetype and indent settings for all things Gentoo. + au BufRead,BufNewFile *.e{build,class} set ts=4 sw=4 noexpandtab + + " When editing a file, always jump to the last cursor position + autocmd BufReadPost * + \ if ! exists("g:leave_my_cursor_position_alone") | + \ if line("'\"") > 0 && line ("'\"") <= line("$") | + \ exe "normal g'\"" | + \ endif | + \ endif + + " When editing a crontab file, set backupcopy to yes rather than auto. See + " :help crontab and bug #53437. + autocmd FileType crontab set backupcopy=yes + + " If we previously detected that the default encoding is not UTF-8 + " (g:added_fenc_utf8), assume that a file with only ASCII characters (or no + " characters at all) isn't a Unicode file, but is in the default encoding. + " Except of course if a byte-order mark is in effect. + autocmd BufReadPost * + \ if exists("g:added_fenc_utf8") && &fileencoding == "utf-8" && + \ ! &bomb && search('[\x80-\xFF]','nw') == 0 && &modifiable | + \ set fileencoding= | + \ endif + + " Strip trailing spaces on write + autocmd BufWritePre *.e{build,class} + \ if ! exists("g:leave_my_trailing_space_alone") | + \ :%s/\s\+$//e | + \ endif + +augroup END + +endif " has("autocmd") +" }}} + +" {{{ nvimrc.local +if filereadable("/etc/vim/nvimrc.local") + source /etc/vim/nvimrc.local +endif +" }}} + +" vim: set tw=80 sw=2 sts=2 et foldmethod=marker : diff --git a/app-editors/neovim/neovim-0.10.0.ebuild b/app-editors/neovim/neovim-0.10.0.ebuild new file mode 100644 index 000000000000..1ae8d920bf61 --- /dev/null +++ b/app-editors/neovim/neovim-0.10.0.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# RelWithDebInfo sets -Og -g +CMAKE_BUILD_TYPE=Release +LUA_COMPAT=( lua5-{1..2} luajit ) +inherit cmake lua-single optfeature xdg + +DESCRIPTION="Vim-fork focused on extensibility and agility" +HOMEPAGE="https://neovim.io" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/neovim/neovim.git" +else + SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" +fi + +LICENSE="Apache-2.0 vim" +SLOT="0" +IUSE="+nvimpager test" + +# Upstream say the test library needs LuaJIT +# https://github.com/neovim/neovim/blob/91109ffda23d0ce61cec245b1f4ffb99e7591b62/CMakeLists.txt#L377 +REQUIRED_USE="${LUA_REQUIRED_USE} test? ( lua_single_target_luajit )" +# TODO: Get tests running +RESTRICT="!test? ( test ) test" + +# Upstream build scripts invoke the Lua interpreter +BDEPEND="${LUA_DEPS} + >=dev-util/gperf-3.1 + >=sys-devel/gettext-0.20.1 + virtual/libiconv + virtual/libintl + virtual/pkgconfig +" +# Check https://github.com/neovim/neovim/blob/master/third-party/CMakeLists.txt for +# new dependency bounds and so on on bumps (obviously adjust for right branch/tag). +DEPEND="${LUA_DEPS} + >=dev-lua/luv-1.45.0[${LUA_SINGLE_USEDEP}] + $(lua_gen_cond_dep ' + dev-lua/lpeg[${LUA_USEDEP}] + dev-lua/mpack[${LUA_USEDEP}] + ') + $(lua_gen_cond_dep ' + dev-lua/LuaBitOp[${LUA_USEDEP}] + ' lua5-{1,2}) + >=dev-libs/libuv-1.46.0:= + >=dev-libs/libvterm-0.3.3 + >=dev-libs/msgpack-3.0.0:= + >=dev-libs/tree-sitter-0.20.9:= + >=dev-libs/unibilium-2.0.0:0= +" +RDEPEND=" + ${DEPEND} + app-eselect/eselect-vi +" +BDEPEND+=" + test? ( + $(lua_gen_cond_dep 'dev-lua/busted[${LUA_USEDEP}]') + ) +" + +PATCHES=( + "${FILESDIR}/${PN}-0.9.0-cmake_lua_version.patch" + "${FILESDIR}/${PN}-9999-cmake-darwin.patch" +) + +src_prepare() { + # Use our system vim dir + sed -e "/^# define SYS_VIMRC_FILE/s|\$VIM|${EPREFIX}/etc/vim|" \ + -i src/nvim/globals.h || die + + # https://forums.gentoo.org/viewtopic-p-8750050.html + xdg_environment_reset + cmake_src_prepare +} + +src_configure() { + ln -s "${BROOT}"/usr/bin/luajit "${BUILD_DIR}"/luajit || die + # TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now + local mycmakeargs=( + # appends -flto + -DENABLE_LTO=OFF + -DPREFER_LUA=$(usex lua_single_target_luajit no "$(lua_get_version)") + -DLUA_PRG="${ELUA}" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + # install a default configuration file + insinto /etc/vim + doins "${FILESDIR}"/sysinit.vim + + # conditionally install a symlink for nvimpager + if use nvimpager; then + dosym ../share/nvim/runtime/macros/less.sh /usr/bin/nvimpager + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "clipboard support" x11-misc/xsel x11-misc/xclip gui-apps/wl-clipboard + optfeature "Python plugin support" dev-python/pynvim + optfeature "Ruby plugin support" dev-ruby/neovim-ruby-client + optfeature "remote/nvr support" dev-python/neovim-remote +} diff --git a/app-editors/neovim/neovim-0.9.4-r1.ebuild b/app-editors/neovim/neovim-0.9.4-r1.ebuild new file mode 100644 index 000000000000..a9d362d6c679 --- /dev/null +++ b/app-editors/neovim/neovim-0.9.4-r1.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# RelWithDebInfo sets -Og -g +CMAKE_BUILD_TYPE=Release +LUA_COMPAT=( lua5-{1..2} luajit ) +inherit cmake lua-single optfeature xdg + +DESCRIPTION="Vim-fork focused on extensibility and agility" +HOMEPAGE="https://neovim.io" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/neovim/neovim.git" +else + SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" +fi + +LICENSE="Apache-2.0 vim" +SLOT="0" +IUSE="+nvimpager test" + +# Upstream say the test library needs LuaJIT +# https://github.com/neovim/neovim/blob/91109ffda23d0ce61cec245b1f4ffb99e7591b62/CMakeLists.txt#L377 +REQUIRED_USE="${LUA_REQUIRED_USE} test? ( lua_single_target_luajit )" +# TODO: Get tests running +RESTRICT="!test? ( test ) test" + +# Upstream build scripts invoke the Lua interpreter +BDEPEND="${LUA_DEPS} + >=dev-util/gperf-3.1 + >=sys-devel/gettext-0.20.1 + virtual/libiconv + virtual/libintl + virtual/pkgconfig +" +# Check https://github.com/neovim/neovim/blob/master/third-party/CMakeLists.txt for +# new dependency bounds and so on on bumps (obviously adjust for right branch/tag). +DEPEND="${LUA_DEPS} + >=dev-lua/luv-1.45.0[${LUA_SINGLE_USEDEP}] + $(lua_gen_cond_dep ' + dev-lua/lpeg[${LUA_USEDEP}] + dev-lua/mpack[${LUA_USEDEP}] + ') + $(lua_gen_cond_dep ' + dev-lua/LuaBitOp[${LUA_USEDEP}] + ' lua5-{1,2}) + >=dev-libs/libuv-1.46.0:= + >=dev-libs/libvterm-0.3.3 + >=dev-libs/msgpack-3.0.0:= + >=dev-libs/tree-sitter-0.20.8:= + >=dev-libs/libtermkey-0.22 + >=dev-libs/unibilium-2.0.0:0= +" +RDEPEND=" + ${DEPEND} + app-eselect/eselect-vi +" +BDEPEND+=" + test? ( + $(lua_gen_cond_dep 'dev-lua/busted[${LUA_USEDEP}]') + ) +" + +PATCHES=( + "${FILESDIR}/${PN}-0.9.0-cmake_lua_version.patch" + "${FILESDIR}/${PN}-0.9.1-cmake-darwin.patch" + "${FILESDIR}/${PN}-0.9.0-cmake-release-type.patch" +) + +src_prepare() { + # Use our system vim dir + sed -e "/^# define SYS_VIMRC_FILE/s|\$VIM|${EPREFIX}/etc/vim|" \ + -i src/nvim/globals.h || die + + # https://forums.gentoo.org/viewtopic-p-8750050.html + xdg_environment_reset + cmake_src_prepare +} + +src_configure() { + # TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now + local mycmakeargs=( + # appends -flto + -DENABLE_LTO=OFF + -DPREFER_LUA=$(usex lua_single_target_luajit no "$(lua_get_version)") + -DLUA_PRG="${ELUA}" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + # install a default configuration file + insinto /etc/vim + newins "${FILESDIR}"/sysinit.vim-r1 sysinit.vim + + # conditionally install a symlink for nvimpager + if use nvimpager; then + dosym ../share/nvim/runtime/macros/less.sh /usr/bin/nvimpager + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "clipboard support" x11-misc/xsel x11-misc/xclip gui-apps/wl-clipboard + optfeature "Python plugin support" dev-python/pynvim + optfeature "Ruby plugin support" dev-ruby/neovim-ruby-client + optfeature "remote/nvr support" dev-python/neovim-remote +} diff --git a/app-editors/neovim/neovim-0.9.5-r1.ebuild b/app-editors/neovim/neovim-0.9.5-r1.ebuild new file mode 100644 index 000000000000..539c462636df --- /dev/null +++ b/app-editors/neovim/neovim-0.9.5-r1.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# RelWithDebInfo sets -Og -g +CMAKE_BUILD_TYPE=Release +LUA_COMPAT=( lua5-{1..2} luajit ) +inherit cmake lua-single optfeature xdg + +DESCRIPTION="Vim-fork focused on extensibility and agility" +HOMEPAGE="https://neovim.io" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/neovim/neovim.git" +else + SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" +fi + +LICENSE="Apache-2.0 vim" +SLOT="0" +IUSE="+nvimpager test" + +# Upstream say the test library needs LuaJIT +# https://github.com/neovim/neovim/blob/91109ffda23d0ce61cec245b1f4ffb99e7591b62/CMakeLists.txt#L377 +REQUIRED_USE="${LUA_REQUIRED_USE} test? ( lua_single_target_luajit )" +# TODO: Get tests running +RESTRICT="!test? ( test ) test" + +# Upstream build scripts invoke the Lua interpreter +BDEPEND="${LUA_DEPS} + >=dev-util/gperf-3.1 + >=sys-devel/gettext-0.20.1 + virtual/libiconv + virtual/libintl + virtual/pkgconfig +" +# Check https://github.com/neovim/neovim/blob/master/third-party/CMakeLists.txt for +# new dependency bounds and so on on bumps (obviously adjust for right branch/tag). +DEPEND="${LUA_DEPS} + >=dev-lua/luv-1.45.0[${LUA_SINGLE_USEDEP}] + $(lua_gen_cond_dep ' + dev-lua/lpeg[${LUA_USEDEP}] + dev-lua/mpack[${LUA_USEDEP}] + ') + $(lua_gen_cond_dep ' + dev-lua/LuaBitOp[${LUA_USEDEP}] + ' lua5-{1,2}) + >=dev-libs/libuv-1.46.0:= + >=dev-libs/libvterm-0.3.3 + >=dev-libs/msgpack-3.0.0:= + >=dev-libs/tree-sitter-0.20.8:= + >=dev-libs/libtermkey-0.22 + >=dev-libs/unibilium-2.0.0:0= +" +RDEPEND=" + ${DEPEND} + app-eselect/eselect-vi +" +BDEPEND+=" + test? ( + $(lua_gen_cond_dep 'dev-lua/busted[${LUA_USEDEP}]') + ) +" + +PATCHES=( + "${FILESDIR}/${PN}-0.9.0-cmake_lua_version.patch" + "${FILESDIR}/${PN}-0.9.1-cmake-darwin.patch" + "${FILESDIR}/${PN}-0.9.0-cmake-release-type.patch" +) + +src_prepare() { + # Use our system vim dir + sed -e "/^# define SYS_VIMRC_FILE/s|\$VIM|${EPREFIX}/etc/vim|" \ + -i src/nvim/globals.h || die + + # https://forums.gentoo.org/viewtopic-p-8750050.html + xdg_environment_reset + cmake_src_prepare +} + +src_configure() { + # Upstream default to LTO on non-debug builds + # Let's expose it as a USE flag because upstream + # have preferences for how we should use LTO + # if we want it on (not just -flto) + # ... but allow turning it off. + # TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now + local mycmakeargs=( + # appends -flto + -DENABLE_LTO=OFF + -DPREFER_LUA=$(usex lua_single_target_luajit no "$(lua_get_version)") + -DLUA_PRG="${ELUA}" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + # install a default configuration file + insinto /etc/vim + newins "${FILESDIR}"/sysinit.vim-r1 sysinit.vim + + # conditionally install a symlink for nvimpager + if use nvimpager; then + dosym ../share/nvim/runtime/macros/less.sh /usr/bin/nvimpager + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "clipboard support" x11-misc/xsel x11-misc/xclip gui-apps/wl-clipboard + optfeature "Python plugin support" dev-python/pynvim + optfeature "Ruby plugin support" dev-ruby/neovim-ruby-client + optfeature "remote/nvr support" dev-python/neovim-remote +} diff --git a/app-editors/neovim/neovim-9999.ebuild b/app-editors/neovim/neovim-9999.ebuild index f0c3aab23120..e09b705b7388 100644 --- a/app-editors/neovim/neovim-9999.ebuild +++ b/app-editors/neovim/neovim-9999.ebuild @@ -16,7 +16,7 @@ if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://github.com/neovim/neovim.git" else SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~x64-macos" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" fi LICENSE="Apache-2.0 vim" @@ -51,8 +51,7 @@ DEPEND="${LUA_DEPS} >=dev-libs/libuv-1.46.0:= >=dev-libs/libvterm-0.3.3 >=dev-libs/msgpack-3.0.0:= - >=dev-libs/tree-sitter-0.20.9:= - >=dev-libs/libtermkey-0.22 + >=dev-libs/tree-sitter-0.22.6:= >=dev-libs/unibilium-2.0.0:0= " RDEPEND=" @@ -97,7 +96,7 @@ src_install() { # install a default configuration file insinto /etc/vim - doins "${FILESDIR}"/sysinit.vim + newins "${FILESDIR}"/sysinit.vim-r1 sysinit.vim # conditionally install a symlink for nvimpager if use nvimpager; then diff --git a/app-editors/padre/padre-1.0.0-r2.ebuild b/app-editors/padre/padre-1.0.0-r3.ebuild index f583d1929264..00df896963fe 100644 --- a/app-editors/padre/padre-1.0.0-r2.ebuild +++ b/app-editors/padre/padre-1.0.0-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,10 +13,9 @@ HOMEPAGE="https://padre.perlide.org/" SLOT="0" KEYWORDS="~amd64 ~riscv ~x86" -IUSE="" # Test Deps -TDEPEND=" +TESTDEPEND=" >=dev-perl/Test-MockObject-1.90.0 >=dev-perl/Test-Script-1.70.0 >=dev-perl/Test-Exception-0.270.0 @@ -26,7 +25,7 @@ TDEPEND=" " RDEPEND=" - dev-lang/perl[ithreads] + || ( >=dev-lang/perl-5.38.2-r3[perl_features_ithreads] <dev-lang/perl-5.38.2-r3[ithreads] ) >=dev-lang/perl-5.10.1 >=dev-perl/Algorithm-Diff-1.190.0 >=dev-perl/Capture-Tiny-0.60.0 @@ -92,7 +91,7 @@ RDEPEND=" " BDEPEND="${RDEPEND} test? ( - ${TDEPEND} + ${TESTDEPEND} ) " diff --git a/app-editors/pluma-plugins/metadata.xml b/app-editors/pluma-plugins/metadata.xml index 694df975ee24..724f7d707ba9 100644 --- a/app-editors/pluma-plugins/metadata.xml +++ b/app-editors/pluma-plugins/metadata.xml @@ -9,4 +9,7 @@ <flag name="synctex">Enable synctex support for pdflatex</flag> <flag name="terminal">Embed a terminal in the bottom pane</flag> </use> +<upstream> + <remote-id type="github">mate-desktop/pluma-plugins</remote-id> +</upstream> </pkgmetadata> diff --git a/app-editors/pluma-plugins/pluma-plugins-1.26.0-r1.ebuild b/app-editors/pluma-plugins/pluma-plugins-1.26.0-r2.ebuild index 1969a87f5e98..0c6a11fbb5eb 100644 --- a/app-editors/pluma-plugins/pluma-plugins-1.26.0-r1.ebuild +++ b/app-editors/pluma-plugins/pluma-plugins-1.26.0-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 2021-2023 Gentoo Authors +# Copyright 2021-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -29,7 +29,7 @@ REQUIRED_USE=" RDEPEND=" >=dev-libs/libpeas-1.14.1:0[gtk] - >=app-editors/gedit-40.0 + >=app-editors/pluma-1.25.3 >=dev-libs/glib-2.32:2 >=x11-libs/gtk+-3.9:3 @@ -38,7 +38,7 @@ RDEPEND=" python? ( ${PYTHON_DEPS} $(python_gen_cond_dep ' - app-editors/gedit[python,${PYTHON_SINGLE_USEDEP}] + app-editors/pluma[${PYTHON_SINGLE_USEDEP}] dev-libs/libpeas:0[python,${PYTHON_SINGLE_USEDEP}] >=dev-python/dbus-python-0.82[${PYTHON_USEDEP}] dev-python/pycairo[${PYTHON_USEDEP}] @@ -65,6 +65,14 @@ pkg_setup() { use python && python-single-r1_pkg_setup } +src_configure() { + local myeconfargs=( + $(use_enable python) + ) + + econf "${myeconfargs[@]}" +} + src_install() { mate_src_install use python && python_optimize "${ED}/usr/$(get_libdir)/gedit/plugins/" diff --git a/app-editors/pluma-plugins/pluma-plugins-1.26.0-r3.ebuild b/app-editors/pluma-plugins/pluma-plugins-1.26.0-r3.ebuild new file mode 100644 index 000000000000..cf3247965042 --- /dev/null +++ b/app-editors/pluma-plugins/pluma-plugins-1.26.0-r3.ebuild @@ -0,0 +1,72 @@ +# Copyright 2021-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +MATE_LA_PUNT="yes" + +PYTHON_COMPAT=( python3_{9..11} ) + +inherit mate python-single-r1 + +if [[ ${PV} != 9999 ]]; then + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="A set of plugins for Pluma, the MATE text editor." +LICENSE="FDL-1.1+ GPL-2+ LGPL-2+" +SLOT="0" + +IUSE="+python" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + >=dev-libs/libpeas-1.14.1:0[gtk] + >=app-editors/pluma-1.25.3 + + >=dev-libs/glib-2.32:2 + >=x11-libs/gtk+-3.9:3 + >=x11-libs/gtksourceview-4.0.2:4 + + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + app-editors/pluma[${PYTHON_SINGLE_USEDEP}] + dev-libs/libpeas:0[python,${PYTHON_SINGLE_USEDEP}] + >=dev-python/dbus-python-0.82[${PYTHON_USEDEP}] + dev-python/pycairo[${PYTHON_USEDEP}] + dev-python/pygobject:3[cairo,${PYTHON_USEDEP}] + >=dev-python/dbus-python-0.82[${PYTHON_USEDEP}] + >=x11-libs/vte-0.52:2.91[introspection] + ') + >=x11-libs/gtk+-3.9:3[introspection] + >=x11-libs/gtksourceview-4.0.2:4[introspection] + x11-libs/pango[introspection] + x11-libs/gdk-pixbuf:2[introspection] + + )" + +DEPEND="${RDEPEND}" +BDEPEND=" + dev-libs/libxml2 + dev-util/itstool + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig +" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_configure() { + local myeconfargs=( + $(use_enable python) + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + mate_src_install + use python && python_optimize "${ED}/usr/$(get_libdir)/gedit/plugins/" +} diff --git a/app-editors/qemacs/qemacs-0.4.1_pre20170225.ebuild b/app-editors/qemacs/qemacs-0.4.1_pre20170225-r1.ebuild index bebc3f453493..307c9f40c805 100644 --- a/app-editors/qemacs/qemacs-0.4.1_pre20170225.ebuild +++ b/app-editors/qemacs/qemacs-0.4.1_pre20170225-r1.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=8 inherit toolchain-funcs @@ -9,6 +9,7 @@ DESCRIPTION="QEmacs is a very small but powerful UNIX editor" HOMEPAGE="https://savannah.nongnu.org/projects/qemacs/" # snapshot of http://cvs.savannah.gnu.org/viewvc/?root=qemacs SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz" +S="${WORKDIR}/${PN}" LICENSE="LGPL-2.1+ GPL-2+" SLOT="0" @@ -26,8 +27,6 @@ DEPEND="${RDEPEND} >=app-text/texi2html-5 gui? ( x11-base/xorg-proto )" -S="${WORKDIR}/${PN}" - src_prepare() { eapply "${FILESDIR}/${P}-Makefile.patch" eapply "${FILESDIR}/${P}-nostrip.patch" diff --git a/app-editors/qhexedit2/qhexedit2-0.8.9_p20210525-r2.ebuild b/app-editors/qhexedit2/qhexedit2-0.8.9_p20210525-r3.ebuild index 34d3906f4682..8d04bc22466a 100644 --- a/app-editors/qhexedit2/qhexedit2-0.8.9_p20210525-r2.ebuild +++ b/app-editors/qhexedit2/qhexedit2-0.8.9_p20210525-r3.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{9..11} ) +PYTHON_COMPAT=( python3_{10..12} ) inherit python-r1 qmake-utils EGIT_COMMIT="541139125be034b90b6811a84faa1413e357fd94" @@ -11,6 +11,7 @@ DESCRIPTION="Hex editor library, Qt application written in C++ with Python bindi HOMEPAGE="https://github.com/Simsys/qhexedit2/" SRC_URI="https://github.com/Simsys/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-${EGIT_COMMIT}" LICENSE="GPL-2" SLOT="0" KEYWORDS="amd64 ~riscv x86" @@ -28,6 +29,7 @@ RDEPEND=" dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtwidgets:5 + media-libs/libglvnd python? ( ${PYTHON_DEPS} $(python_gen_cond_dep ' @@ -45,8 +47,6 @@ BDEPEND=" ) " -S="${WORKDIR}/${PN}-${EGIT_COMMIT}" - src_prepare() { default sed -i -e '/^unix:DESTDIR/ d' -e "\$atarget.path = /usr/$(get_libdir)" \ diff --git a/app-editors/qxmledit/metadata.xml b/app-editors/qxmledit/metadata.xml index 9608118110f3..357450ea4ed6 100644 --- a/app-editors/qxmledit/metadata.xml +++ b/app-editors/qxmledit/metadata.xml @@ -1,10 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="project"> - <email>qt@gentoo.org</email> - <name>Gentoo Qt Project</name> - </maintainer> + <!-- maintainer-needed --> <longdescription lang="en"> QXmlEdit is a simple XML editor based on Qt libraries. Its main features are unusual data visualization modes, nice XML manipulation and presentation diff --git a/app-editors/qxmledit/qxmledit-0.9.18-r1.ebuild b/app-editors/qxmledit/qxmledit-0.9.18-r1.ebuild index e97a2ee618a1..7ffe8a368b2e 100644 --- a/app-editors/qxmledit/qxmledit-0.9.18-r1.ebuild +++ b/app-editors/qxmledit/qxmledit-0.9.18-r1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://downloads.sourceforge.net/${PN}/${P}-src.tgz" LICENSE="LGPL-2" SLOT="0" -KEYWORDS="~amd64 ~riscv ~x86" +KEYWORDS="amd64 ~riscv x86" DEPEND=" dev-qt/qtconcurrent:5 diff --git a/app-editors/retext/retext-8.0.2.ebuild b/app-editors/retext/retext-8.0.2.ebuild index 0ad582a951db..cdc4a71a388f 100644 --- a/app-editors/retext/retext-8.0.2.ebuild +++ b/app-editors/retext/retext-8.0.2.ebuild @@ -19,7 +19,7 @@ if [[ ${PV} == *9999 ]]; then EGIT_REPO_URI="https://github.com/retext-project/retext.git" else inherit pypi - KEYWORDS="~amd64" + KEYWORDS="amd64" fi LICENSE="GPL-2+" diff --git a/app-editors/shed/Manifest b/app-editors/shed/Manifest index 06487aa06f5e..04900f430aac 100644 --- a/app-editors/shed/Manifest +++ b/app-editors/shed/Manifest @@ -1,2 +1 @@ -DIST shed-1.15.tar.gz 87777 BLAKE2B 7c23f01e649de6ad15b870ef3786bd1747b6ab765f19a748d08bad878325f11e38483b957ed6a791ae4a7de752e96cca2057fd69838625c3fe660d2ba3fbc984 SHA512 fe401303e686fb11975b71de0f84d0cdb84dc5a48e1094356d012f95d8c956ed05bd6b39bf65af924212e83c1db45bbfe556342489150bb0e10fb4c832fb6c78 DIST shed-1.16.tar.gz 104323 BLAKE2B 30c4d6ec7d497a64cc4e313496d26e3a4b8a8050bcfd05c50d9eef865d987df76cd1d7fa13509bdfed184159676dfc2c8bb8d3eb98f64573845e543d174cae7b SHA512 0c807205540b17ee977c157c8edd916b34ba6c4ace280f59c10a92abbe820ef7fe24c4a64c2fc8b5fcd3d86f71e26672cef469340ddce393d370b53aa8785e7c diff --git a/app-editors/shed/files/shed-1.15-cflags.patch b/app-editors/shed/files/shed-1.15-cflags.patch deleted file mode 100644 index 2b675f7449f7..000000000000 --- a/app-editors/shed/files/shed-1.15-cflags.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/configure.in -+++ b/configure.in -@@ -2,7 +2,7 @@ - AM_INIT_AUTOMAKE(shed,1.15) - AC_PROG_CC - AC_PROG_INSTALL --CFLAGS="-Wall" -+CFLAGS="$CFLAGS -Wall" - AC_SUBST(CFLAGS) - - AC_ARG_ENABLE(debug, [ --enable-debug gcc -g],enable_debug=yes) diff --git a/app-editors/shed/files/shed-1.15-tinfo.patch b/app-editors/shed/files/shed-1.15-tinfo.patch deleted file mode 100644 index d1a406521c0f..000000000000 --- a/app-editors/shed/files/shed-1.15-tinfo.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/configure.in -+++ b/configure.in -@@ -41,8 +41,7 @@ - fi - - ERR="Required package missing!" --AC_CHECK_HEADER(ncurses.h,:,AC_MSG_ERROR([$ERR])) -+PKG_CHECK_MODULES(ncurses,ncurses,[LIBS="$LIBS $ncurses_LIBS"],AC_MSG_ERROR([$ERR])) - AC_CHECK_HEADER(getopt.h,:,AC_MSG_ERROR([$ERR])) --AC_CHECK_LIB(ncurses,initscr) - AC_CHECK_LIB(m,pow) - AC_OUTPUT(Makefile) diff --git a/app-editors/shed/shed-1.15.ebuild b/app-editors/shed/shed-1.15.ebuild deleted file mode 100644 index 6b0e8951131c..000000000000 --- a/app-editors/shed/shed-1.15.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit autotools - -DESCRIPTION="Simple Hex EDitor" -HOMEPAGE="https://shed.sourceforge.net/" -SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" - -LICENSE="GPL-2+" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ppc ~riscv x86 ~amd64-linux ~x86-linux ~ppc-macos" - -RDEPEND="sys-libs/ncurses:0=" -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" - -PATCHES=( - "${FILESDIR}"/${P}-cflags.patch - "${FILESDIR}"/${P}-tinfo.patch -) - -src_prepare() { - default - - mv configure.{in,ac} || die - eautoreconf -} diff --git a/app-editors/shed/shed-1.16.ebuild b/app-editors/shed/shed-1.16.ebuild index cf8ff6542e0c..adb9fde8ed45 100644 --- a/app-editors/shed/shed-1.16.ebuild +++ b/app-editors/shed/shed-1.16.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" LICENSE="GPL-2+" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +KEYWORDS="amd64 ~arm ~arm64 ppc ~riscv x86 ~amd64-linux ~x86-linux ~ppc-macos" RDEPEND="sys-libs/ncurses:0=" DEPEND="${RDEPEND}" diff --git a/app-editors/sublime-text/Manifest b/app-editors/sublime-text/Manifest index 84b4d3ca7ac7..b056e7926ed5 100644 --- a/app-editors/sublime-text/Manifest +++ b/app-editors/sublime-text/Manifest @@ -1,7 +1 @@ -DIST sublime_text_3_build_3211_x32.tar.bz2 13806489 BLAKE2B 1e07df2fc9fb9fb60a6fbfe27a3d657ff80ef46ae91967fa384cfc84bfdc2b5952aea8dbfd9ff015f669b148c1a302cbe01521a72b584abccd51efdab51ac0d8 SHA512 4d19947459046407316382d187ea6fa4cff9b7d3e7ae3c46667d691b6ca425a1f1dfc8599a26cf61b970290a58924a3b605e111ff2802ed124683872c1802803 -DIST sublime_text_3_build_3211_x64.tar.bz2 13677324 BLAKE2B e2ac54c1e8ab90c0fcefb4baf225b02d13a3405e846f08163773ed52c6278f8e89a7b13c15e6c2d6241139d58be9c2c5a1201abb04a3cd68efdffc723075c5af SHA512 a6a068119eff95c5360e9ccbe1d845e7a93e4ad13b3659073752a7bd0e87f4691555820185514875649e677a4e8702e2338f74f5584fc80f69c16b323685d6f1 -DIST sublime_text_build_4126_x64.tar.xz 17313756 BLAKE2B 16a036e15b920f72b47a6425540efcbc5ac5c44d3f3c79fa0a106128857f6fa6775a244d6497c814448a3f42cfe1515546b372475b22b47364a759ad0412bfdc SHA512 1f7a1543e68e67bd507f2f4b65f53085c96796287521878011e183df26579cd593c333d53b5ee9bc5adb41dd5344c62875fea869d11962ba80a39dfb63a80652 -DIST sublime_text_build_4143_x64.tar.xz 17480384 BLAKE2B 37617568f9ff0090a8f4f66c34f07d997c1f3405d31554ebb0d7c5791209713d236ee329714b452d69e474bda13f2ad7fb0c4b9abb2a5112ed36acffdee51371 SHA512 5aba1d587b2f61cc7aa6aa7b1eb37990a2385d51fac92945aa3e991616617c73f6fbe71af3a06a219323ff4656f78c2d27f582e60ea97171b88c0197899845f1 -DIST sublime_text_build_4152_x64.tar.xz 16454288 BLAKE2B b6fa58c94cc24214abe5b3d85abdf850b8cd116001a739a9d1ddcb3fab70913882c7731dc4a856c32979695f77b1465e2e7ec0785255a1ced9b55637f2c30368 SHA512 447a3219841150e22c66b45c8a6d0415e1b309512764060f4310c7f685c93a5b4cba2dd7f202ced01f2a3d910c30784bbf5bbb85bae915296845005a69b0bdf4 -DIST sublime_text_build_4166_x64.tar.xz 16572860 BLAKE2B ede62590f2913edd644b02dfd9e14fd68ac0387bc75946c1206dd7709f985ce6b584ce8f74f05c3961d2ea43590a084e2947c9586c16ced40cccfd82a3847e5a SHA512 a4e5a957160cc47e6c5fc71f3162edea5d6fe03e6a7af33f52074a49dbbd2cd49460b35e0924d38d4083561291469bc0ff43e7aea81232dbc97be6847612c4e1 DIST sublime_text_build_4169_x64.tar.xz 16572760 BLAKE2B 1760e6a763b58e24c7360bb0068704b820b0ba91169c1e80b9b46ca728eaedd04bd2bca75d602b24034fff895c093131d30209c48c3e7b1c56941da7cf1d3296 SHA512 6764363f8f92f65532d64ba014023e28b18f40dc62a1b114239b59360257d445494f9a2f57580174b5f4994c8fa06cd8f562c9419cfda92324c9ebf25d15e576 diff --git a/app-editors/sublime-text/sublime-text-3_p3211-r2.ebuild b/app-editors/sublime-text/sublime-text-3_p3211-r2.ebuild deleted file mode 100644 index 0990d91e8c53..000000000000 --- a/app-editors/sublime-text/sublime-text-3_p3211-r2.ebuild +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit desktop xdg-utils - -# get the major version from PV -MV=${PV:0:1} -MY_PV=${PV#*_p} - -DESCRIPTION="Sophisticated text editor for code, markup and prose" -HOMEPAGE="https://www.sublimetext.com" -SRC_URI=" - amd64? ( https://download.sublimetext.com/sublime_text_${MV}_build_${MY_PV}_x64.tar.bz2 ) - x86? ( https://download.sublimetext.com/sublime_text_${MV}_build_${MY_PV}_x32.tar.bz2 )" - -LICENSE="Sublime" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="dbus" -RESTRICT="bindist mirror strip" - -RDEPEND=" - dev-libs/glib:2 - sys-libs/glibc - x11-libs/gtk+:3 - x11-libs/libX11 - dbus? ( sys-apps/dbus )" - -QA_PREBUILT="*" -S="${WORKDIR}/sublime_text_${MV}" - -# Sublime bundles the kitchen sink, which includes python and other assorted -# modules. Do not try to unbundle these because you are guaranteed to fail. - -src_install() { - insinto /opt/${PN}${MV} - doins -r Packages Icon - doins changelog.txt sublime_plugin.py sublime.py python3.3.zip - - exeinto /opt/${PN}${MV} - doexe crash_reporter plugin_host sublime_text - dosym ../../opt/${PN}${MV}/sublime_text /usr/bin/subl - - local size - for size in 16 32 48 128 256; do - dosym ../../../../../../opt/${PN}${MV}/Icon/${size}x${size}/sublime-text.png \ - /usr/share/icons/hicolor/${size}x${size}/apps/subl.png - done - - make_desktop_entry "subl %F" "Sublime Text ${MV}" subl \ - "TextEditor;IDE;Development" "StartupNotify=true" - - # needed to get WM_CLASS lookup right - mv "${ED}"/usr/share/applications/subl{-sublime-text,}.desktop || die -} - -pkg_postrm() { - xdg_icon_cache_update -} - -pkg_postinst() { - xdg_icon_cache_update -} diff --git a/app-editors/sublime-text/sublime-text-4_p4126-r1.ebuild b/app-editors/sublime-text/sublime-text-4_p4126-r1.ebuild deleted file mode 100644 index 3f2823912619..000000000000 --- a/app-editors/sublime-text/sublime-text-4_p4126-r1.ebuild +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit desktop wrapper xdg - -# get the major version from PV -MY_PV=$(ver_cut 3) -MY_PN=${PN/-/_} - -DESCRIPTION="Sophisticated text editor for code, markup and prose" -HOMEPAGE="https://www.sublimetext.com" -SRC_URI=" - amd64? ( https://download.sublimetext.com/sublime_text_build_${MY_PV}_x64.tar.xz )" -S="${WORKDIR}/${MY_PN}" - -LICENSE="Sublime" -SLOT="0" -KEYWORDS="~amd64" -IUSE="dbus" -RESTRICT="bindist mirror strip" - -RDEPEND=" - dev-libs/glib:2 - sys-libs/glibc - x11-libs/gtk+:3 - x11-libs/libX11 - dbus? ( sys-apps/dbus )" - -PATCHES=( - "${FILESDIR}"/${PN}-4_p4107-remove-deprecated-key-onlyshowin-from-launcher.patch - "${FILESDIR}"/${PN}-4_p4107-set-explicit-startupwmclass-in-launcher.patch -) - -QA_PREBUILT="*" - -# Sublime bundles the kitchen sink, which includes python and other assorted -# modules. Do not try to unbundle these because you are guaranteed to fail. - -src_install() { - insinto /opt/${MY_PN} - doins -r Packages Lib Icon # /Icon is used at runtime by the application - doins changelog.txt libcrypto.so.1.1 libssl.so.1.1 sublime_text.desktop - - # sublime_merge looks for /opt/sublime_text/sublime_text - exeinto /opt/${MY_PN} - doexe crash_reporter plugin_host-3.3 plugin_host-3.8 sublime_text - - # sublime-text sets its WM_CLASS based on its argv[0]. A wrapper script is - # used instead of a symlink to preserve a consistent WM_CLASS regardless of - # how the application is launched. This causes the WM_CLASS to be - # "sublime_text" which matches the .desktop entry. - make_wrapper subl "/opt/${MY_PN}/sublime_text --fwdargv0 \"\$0\"" - domenu sublime_text.desktop - - local size - for size in 16 32 48 128 256; do - doicon --size ${size} Icon/${size}x${size}/${PN}.png - done -} - -pkg_postinst() { - xdg_pkg_postinst - - elog 'Sublime Text 4'"'"'s window class changes from WM_CLASS="subl" to' - elog 'WM_CLASS="sublime_text" matching other distributions.' -} diff --git a/app-editors/sublime-text/sublime-text-4_p4143-r1.ebuild b/app-editors/sublime-text/sublime-text-4_p4143-r1.ebuild deleted file mode 100644 index 3f2823912619..000000000000 --- a/app-editors/sublime-text/sublime-text-4_p4143-r1.ebuild +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit desktop wrapper xdg - -# get the major version from PV -MY_PV=$(ver_cut 3) -MY_PN=${PN/-/_} - -DESCRIPTION="Sophisticated text editor for code, markup and prose" -HOMEPAGE="https://www.sublimetext.com" -SRC_URI=" - amd64? ( https://download.sublimetext.com/sublime_text_build_${MY_PV}_x64.tar.xz )" -S="${WORKDIR}/${MY_PN}" - -LICENSE="Sublime" -SLOT="0" -KEYWORDS="~amd64" -IUSE="dbus" -RESTRICT="bindist mirror strip" - -RDEPEND=" - dev-libs/glib:2 - sys-libs/glibc - x11-libs/gtk+:3 - x11-libs/libX11 - dbus? ( sys-apps/dbus )" - -PATCHES=( - "${FILESDIR}"/${PN}-4_p4107-remove-deprecated-key-onlyshowin-from-launcher.patch - "${FILESDIR}"/${PN}-4_p4107-set-explicit-startupwmclass-in-launcher.patch -) - -QA_PREBUILT="*" - -# Sublime bundles the kitchen sink, which includes python and other assorted -# modules. Do not try to unbundle these because you are guaranteed to fail. - -src_install() { - insinto /opt/${MY_PN} - doins -r Packages Lib Icon # /Icon is used at runtime by the application - doins changelog.txt libcrypto.so.1.1 libssl.so.1.1 sublime_text.desktop - - # sublime_merge looks for /opt/sublime_text/sublime_text - exeinto /opt/${MY_PN} - doexe crash_reporter plugin_host-3.3 plugin_host-3.8 sublime_text - - # sublime-text sets its WM_CLASS based on its argv[0]. A wrapper script is - # used instead of a symlink to preserve a consistent WM_CLASS regardless of - # how the application is launched. This causes the WM_CLASS to be - # "sublime_text" which matches the .desktop entry. - make_wrapper subl "/opt/${MY_PN}/sublime_text --fwdargv0 \"\$0\"" - domenu sublime_text.desktop - - local size - for size in 16 32 48 128 256; do - doicon --size ${size} Icon/${size}x${size}/${PN}.png - done -} - -pkg_postinst() { - xdg_pkg_postinst - - elog 'Sublime Text 4'"'"'s window class changes from WM_CLASS="subl" to' - elog 'WM_CLASS="sublime_text" matching other distributions.' -} diff --git a/app-editors/sublime-text/sublime-text-4_p4152.ebuild b/app-editors/sublime-text/sublime-text-4_p4152.ebuild deleted file mode 100644 index a417eaeb1067..000000000000 --- a/app-editors/sublime-text/sublime-text-4_p4152.ebuild +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit desktop wrapper xdg - -# get the major version from PV -MY_PV=$(ver_cut 3) -MY_PN=${PN/-/_} - -DESCRIPTION="Sophisticated text editor for code, markup and prose" -HOMEPAGE="https://www.sublimetext.com" -SRC_URI=" - amd64? ( https://download.sublimetext.com/sublime_text_build_${MY_PV}_x64.tar.xz )" -S="${WORKDIR}/${MY_PN}" - -LICENSE="Sublime" -SLOT="0" -KEYWORDS="~amd64" -IUSE="dbus" -RESTRICT="bindist mirror strip" - -RDEPEND=" - dev-libs/glib:2 - sys-libs/glibc - x11-libs/gtk+:3 - x11-libs/libX11 - dbus? ( sys-apps/dbus )" - -PATCHES=( - "${FILESDIR}"/${PN}-4_p4107-remove-deprecated-key-onlyshowin-from-launcher.patch - "${FILESDIR}"/${PN}-4_p4107-set-explicit-startupwmclass-in-launcher.patch -) - -QA_PREBUILT="*" - -# Sublime bundles the kitchen sink, which includes python and other assorted -# modules. Do not try to unbundle these because you are guaranteed to fail. - -src_install() { - insinto /opt/${MY_PN} - doins -r Packages Lib Icon # /Icon is used at runtime by the application - doins changelog.txt libcrypto.so.1.1 libssl.so.1.1 libsqlite3.so sublime_text.desktop - - # sublime_merge looks for /opt/sublime_text/sublime_text - exeinto /opt/${MY_PN} - doexe crash_reporter plugin_host-3.3 plugin_host-3.8 sublime_text - - # sublime-text sets its WM_CLASS based on its argv[0]. A wrapper script is - # used instead of a symlink to preserve a consistent WM_CLASS regardless of - # how the application is launched. This causes the WM_CLASS to be - # "sublime_text" which matches the .desktop entry. - make_wrapper subl "/opt/${MY_PN}/sublime_text --fwdargv0 \"\$0\"" - domenu sublime_text.desktop - - local size - for size in 16 32 48 128 256; do - doicon --size ${size} Icon/${size}x${size}/${PN}.png - done -} - -pkg_postinst() { - xdg_pkg_postinst - - elog 'Sublime Text 4'"'"'s window class changes from WM_CLASS="subl" to' - elog 'WM_CLASS="sublime_text" matching other distributions.' -} diff --git a/app-editors/sublime-text/sublime-text-4_p4166.ebuild b/app-editors/sublime-text/sublime-text-4_p4166.ebuild deleted file mode 100644 index fdb6b4c6c4bb..000000000000 --- a/app-editors/sublime-text/sublime-text-4_p4166.ebuild +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit desktop wrapper xdg - -# get the major version from PV -MY_PV=$(ver_cut 3) -MY_PN=${PN/-/_} - -DESCRIPTION="Sophisticated text editor for code, markup and prose" -HOMEPAGE="https://www.sublimetext.com" -SRC_URI=" - amd64? ( https://download.sublimetext.com/sublime_text_build_${MY_PV}_x64.tar.xz )" -S="${WORKDIR}/${MY_PN}" - -LICENSE="Sublime" -SLOT="0" -KEYWORDS="~amd64" -IUSE="dbus" -RESTRICT="bindist mirror strip" - -RDEPEND=" - dev-libs/glib:2 - sys-libs/glibc - x11-libs/gtk+:3 - x11-libs/libX11 - dbus? ( sys-apps/dbus )" - -PATCHES=( - "${FILESDIR}"/${PN}-4_p4107-remove-deprecated-key-onlyshowin-from-launcher.patch - "${FILESDIR}"/${PN}-4_p4107-set-explicit-startupwmclass-in-launcher.patch -) - -QA_PREBUILT="*" - -# Sublime bundles the kitchen sink, which includes python and other assorted -# modules. Do not try to unbundle these because you are guaranteed to fail. - -src_install() { - insinto /opt/${MY_PN} - doins -r Packages Lib Icon # /Icon is used at runtime by the application - doins changelog.txt libcrypto.so.1.1 libssl.so.1.1 libsqlite3.so sublime_text.desktop - - # sublime_merge looks for /opt/sublime_text/sublime_text - exeinto /opt/${MY_PN} - doexe crash_handler plugin_host-3.3 plugin_host-3.8 sublime_text - - # sublime-text sets its WM_CLASS based on its argv[0]. A wrapper script is - # used instead of a symlink to preserve a consistent WM_CLASS regardless of - # how the application is launched. This causes the WM_CLASS to be - # "sublime_text" which matches the .desktop entry. - make_wrapper subl "/opt/${MY_PN}/sublime_text --fwdargv0 \"\$0\"" - domenu sublime_text.desktop - - local size - for size in 16 32 48 128 256; do - doicon --size ${size} Icon/${size}x${size}/${PN}.png - done -} - -pkg_postinst() { - xdg_pkg_postinst - - elog 'Sublime Text 4'"'"'s window class changes from WM_CLASS="subl" to' - elog 'WM_CLASS="sublime_text" matching other distributions.' -} diff --git a/app-editors/tea/Manifest b/app-editors/tea/Manifest index a27b6e87f7d5..fed0cbb5a98e 100644 --- a/app-editors/tea/Manifest +++ b/app-editors/tea/Manifest @@ -1,3 +1,4 @@ DIST tea-47.0.0.tar.bz2 437273 BLAKE2B 8ed36526dedc6df4af74ef0e400c2ee2e19bb533cf2a4fa51df83f21ad78abb0e8e90bce3469e2e8db5f780ba8a900aedf2737c736945431b836ba0a76574b26 SHA512 7136d59383bf43c6a024a31aa29860a3e89893ff091a42f44f9e7088fb318920ab886cd1fdabc8ff6e3c30f8eb3d46d707228d2d45fb085ed7c822a4ffd89d13 DIST tea-qt-62.1.1.tar.gz 675996 BLAKE2B 2219a7f61fe54426b0216e5612b05048ee6f1451084d4aa66c0744110ce6151c2ba46acf1c7e7b5916ae6194516391fa1c23cb797ecd7ac423e3005a88da85f4 SHA512 1d81b83a6f25f385959a507342f4a79c24be5af20c2841d851f0d233cbd77142c672c9f147a185e3088000172d5d943bd290497dfcbec87c1a3e0b96a40a5217 DIST tea-qt-62.2.1.tar.gz 676570 BLAKE2B f4fa2756d6016d84c0c20c572dc2e03013d8f5b12d726d6d0aa4edbdcb5784552c8330c52f4016dcb85c0d8e1923bfdc90d39dd4dee4f378ac8c07182f1e7eee SHA512 0e2adf21023867466b7a4228c56ac1d05533b27f4abee672529c1f506f8d5e2880216bae35e1ff5ad0e0dc64c22c7536144c54c347c9d8f1d569fb74261101d0 +DIST tea-qt-62.4.0.tar.gz 676565 BLAKE2B 2dbeeb37142bcc6d5a8434e21380e316f49f614e3c602799088848994eac0b57bff54ca07f8ac411a76a480a0079fccf6d648bebc1c10a9c8790228f7c2efd87 SHA512 57af069d0afd25319cede65c9dcf08860267d22f4aebbe9b068e28739fd74d8b1da960f09ce41fc1cb88c68e29c96ec2e2a6e167777ac32cd7bd9d543b05dd42 diff --git a/app-editors/tea/metadata.xml b/app-editors/tea/metadata.xml index f905158e4e39..b5d7b51471d8 100644 --- a/app-editors/tea/metadata.xml +++ b/app-editors/tea/metadata.xml @@ -1,10 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="project"> - <email>qt@gentoo.org</email> - <name>Gentoo Qt Project</name> - </maintainer> + <!-- maintainer-needed --> <longdescription> A very small Qt text editor. It has lots of extra features including syntax highlighting and a built in file manager as well as a built in image viewer. diff --git a/app-editors/tea/tea-62.2.1.ebuild b/app-editors/tea/tea-62.2.1.ebuild index b0c1f115ab1c..d966ed1501ae 100644 --- a/app-editors/tea/tea-62.2.1.ebuild +++ b/app-editors/tea/tea-62.2.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -14,7 +14,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="GPL-3+" SLOT="0" -KEYWORDS="~amd64 ~riscv ~x86" +KEYWORDS="amd64 ~riscv x86" IUSE="aspell djvu qt6 pdf" RESTRICT="test" # no tests diff --git a/app-editors/tea/tea-62.4.0.ebuild b/app-editors/tea/tea-62.4.0.ebuild new file mode 100644 index 000000000000..d966ed1501ae --- /dev/null +++ b/app-editors/tea/tea-62.4.0.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake xdg + +MY_P="tea-qt-${PV}" + +DESCRIPTION="Small, lightweight Qt text editor" +HOMEPAGE="https://tea.ourproject.org/" +SRC_URI="https://github.com/psemiletov/tea-qt/archive/${PV}.tar.gz -> ${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="amd64 ~riscv x86" +IUSE="aspell djvu qt6 pdf" + +RESTRICT="test" # no tests + +DEPEND=" + app-text/hunspell:= + sys-libs/zlib + aspell? ( app-text/aspell ) + djvu? ( app-text/djvu ) + qt6? ( + dev-qt/qtbase:6[widgets] + dev-qt/qt5compat:6 + pdf? ( app-text/poppler:=[qt6(-)] ) + ) + !qt6? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + pdf? ( app-text/poppler:=[qt5] ) + ) +" +RDEPEND="${DEPEND}" +BDEPEND="virtual/pkgconfig" + +DOCS=( AUTHORS ChangeLog NEWS NEWS-RU TODO ) + +PATCHES=( + "${FILESDIR}/tea-62.1.1-fix-desktop.patch" +) + +src_prepare() { + cmake_src_prepare + + # Replace AUR link with p.g.o link + sed -i \ + -e 's,AUR: aur.archlinux.org/packages/tea-qt-git,Gentoo: https://packages.gentoo.org/packages/app-editors/tea,' \ + tea.cpp translations/{de,es,fr,pl,ru}.ts || die + + # Rename tea to tea-qt to avoid file conflict with dev-util/tea + # bug #917587 + # https://github.com/psemiletov/tea-qt/issues/50 + sed -i -e '/set_target_properties(tea PROPERTIES$/ a\ + OUTPUT_NAME \"tea-qt\"' \ + CMakeLists.txt || die + sed -i -e '/Exec/ { s/tea/tea-qt/ }' desktop/tea.desktop || die +} + +src_configure() { + local mycmakeargs=( + -DUSE_ASPELL=$(usex aspell) + -DUSE_PDF=$(usex pdf) + -DUSE_DJVU=$(usex djvu) + -DUSE_PRINTER=OFF # appears to be setup wrong + $(cmake_use_find_package qt6 Qt6) + ) + + cmake_src_configure +} + +pkg_postinst() { + xdg_pkg_postinst + + if [[ "${REPLACING_VERSIONS}" == "47.0.0" ]]; then + elog "Executable 'tea' has been renamed to 'tea-qt'" + fi +} diff --git a/app-editors/vim-core/Manifest b/app-editors/vim-core/Manifest index 71f002ea046c..67344428f5b6 100644 --- a/app-editors/vim-core/Manifest +++ b/app-editors/vim-core/Manifest @@ -1,9 +1,4 @@ -DIST vim-9.0.1503.tar.gz 17010118 BLAKE2B 4f74d52a3fcf7875031378f86fc3411c64c92e4b82bee371148b19042478d3f974793477c3fc2d9ddff9233fa1ec3c864962880840867544e92464f1a0876f51 SHA512 2f3242ec0f79cf6affc2f7fdaf689c35d8597706ac1689dbbdc01352676199605bb37f22bd901f1e8d59f312237d3fce4bee8b979b28a744ea9e40558621980e -DIST vim-9.0.1627.tar.gz 17048824 BLAKE2B 3fa583cf676c2388641b1240ed4b90c2e42cd9f50ea44a943cce86bba4bf278adf54837bb5c4530471fd57cfcd08cd39be78b17a5e907435a02dc5874ff7f571 SHA512 d2fb863e03d4ad773fcba8917f3cd1e373f661aa8b8a20bd3e416a73788997d31c6dd106a1bf59d72475bb577bbe6d52eb079fff9c7152d96bb6e5c9aa6e2f3b -DIST vim-9.0.1678.tar.gz 17069551 BLAKE2B e83cea77513eb0d8b3ed02bd508333fb97357d2d7a91a90c5a9376b03b444a0b65b6ce04b14e191e33445132845af71193ab140ea615bb03a2c24a904b726cb4 SHA512 c5ffb7ca56ff4eee70f06599dd84db2eb28ddadac229d4f7faf01174805923636a4ce61486bdf5a47910c929613dc9b9290dfc9288006222b4bc4ac891548bb8 -DIST vim-9.0.1777.tar.gz 17177555 BLAKE2B ad6d785f4c6b112199bd2f34e0b7f6070615fba8dce25354a7ded40ff8536388e7b7120c1f2fad790c8dc7134d74649697b6e95777e79dcf1e208ead81b229d6 SHA512 702781b6a9cf540d22aa0bc1e25a4fb785ff2b22e9c6a59643e87fd6f7b3e5444adbee1816bfaa0b45b9655bb56dc2d13904230840a0ecea56f5453034d81a2e DIST vim-9.0.2092-patches.tar.xz 2640 BLAKE2B 3a4b2bc57712de3b92b0e8d9b2d428e4d576665a183927051eddd53d019a5ca413c74dc10aff09917ee3120bd2e2ba441219d7238994f0d5ba14fc9c31180199 SHA512 ec27e4056460948ff86bc48a21de239a84b53757a8283144ec121654096796d970ad832234d6591a132bcd38bc12dc507cc7795a11cd383d20f08b4d9bcb051f -DIST vim-9.0.2092.tar.gz 17359377 BLAKE2B eeb50de7e4876ce0e2a1e8b241ea2c7c472898495ef5517fa115e01f29ef8922fb7ef970f2c1a3ffe65a8274e2c59bd5a939f397048c6b486683c29c01484d1e SHA512 1c3e78ee1bb507858e0d30a8a1e646c16dd6d8d666ea587e91d1c90e490aef46387d6dfadc01e80f9aa807f7b109e4072efa8d8115fcd2a81dd62cabc30a8001 DIST vim-9.0.2167.tar.gz 17405049 BLAKE2B 496c8f9672bc4ecce743a145bc2b671bf09034b2875e728406b318c8b12e2d8d4ee3423ce94f8749679f07d36f229954f7ef0b12ce7bc4d71ccf6637ce2d6029 SHA512 6a9a785b1915dc167210b0da4d5e4401c71ee49b3554c8a22566378658ddcc3493562897ea39035852399cc5ffb55a73355ab13390c27a4d00ffd76bcd10ddf0 DIST vim-9.1.0366.tar.gz 17861209 BLAKE2B 8771f5ef6a966c1b5992a437dd6cf1de9525458f61a4cd8fa53737a7bde29a4da101668639a301288a266ee8b3911857d1ba5b4e88870b60473eb1eaa608d7a5 SHA512 11be2a6e349c7b6d26fc1943c35ea18c662baa4f30ae76936eefb30e0b4d988bfcaedf7ecd2c3903f64e23c75957f55b9bb4073e0f38c7eb10ef0ee0dc652ddb -DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a +DIST vim-9.1.0470.tar.gz 17919981 BLAKE2B 90ebffc6e7b6162f8a047976659e044b75aaa946799b901e9f8c88f04a787543cde56545c8c6e5394fa2bc957d2e46810c5ca3f1315fc20a398a57bbdbc90f4c SHA512 41b71e9e5385237b30aa256f064c9d5c914b29a97c0ec562f1995ac5d476fcf840c3f0e9a52e599f6084777db147e83fcbf0ec6b985bb94c126264d4cbafb964 diff --git a/app-editors/vim-core/files/vimrc-r7 b/app-editors/vim-core/files/vimrc-r7 new file mode 100644 index 000000000000..39a30d6f2955 --- /dev/null +++ b/app-editors/vim-core/files/vimrc-r7 @@ -0,0 +1,210 @@ +scriptencoding utf-8 +" ^^ Please leave the above line at the start of the file. + +" Default configuration file for Vim + +" Written by Aron Griffis <agriffis@gentoo.org> +" Modified by Ryan Phillips <rphillips@gentoo.org> +" Modified some more by Ciaran McCreesh <ciaranm@gentoo.org> +" Added Redhat's vimrc info by Seemant Kulleen <seemant@gentoo.org> + +" You can override any of these settings on a global basis via the +" "/etc/vim/vimrc.local" file, and on a per-user basis via "~/.vimrc". You may +" need to create these. + +" {{{ General settings +" The following are some sensible defaults for Vim for most users. +" We attempt to change as little as possible from Vim's defaults, +" deviating only where it makes sense +set nocompatible " Use Vim defaults (much better!) +set bs=2 " Allow backspacing over everything in insert mode +set ai " Always set auto-indenting on +set history=50 " keep 50 lines of command history +set ruler " Show the cursor position all the time + +set viminfo='20,\"500 " Keep a .viminfo file. + +" Don't use Ex mode, use Q for formatting +map Q gq + +" When doing tab completion, give the following files lower priority. You may +" wish to set 'wildignore' to completely ignore files, and 'wildmenu' to enable +" enhanced tab completion. These can be done in the user vimrc file. +set suffixes+=.info,.aux,.log,.dvi,.bbl,.out,.o,.lo + +" When displaying line numbers, don't use an annoyingly wide number column. This +" doesn't enable line numbers -- :set number will do that. The value given is a +" minimum width to use for the number column, not a fixed size. +if v:version >= 700 + set numberwidth=3 +endif +" }}} + +" {{{ Modeline settings +" We don't allow modelines by default. See bug #14088 and bug #73715. +" If you're not concerned about these, you can enable them on a per-user +" basis by adding "set modeline" to your ~/.vimrc file. +set nomodeline +" }}} + +" {{{ Locale settings +" Try to come up with some nice sane GUI fonts. Also try to set a sensible +" value for fileencodings based upon locale. These can all be overridden in +" the user vimrc file. +if v:lang =~? "^ko" + set fileencodings=euc-kr + set guifontset=-*-*-medium-r-normal--16-*-*-*-*-*-*-* +elseif v:lang =~? "^ja_JP" + set fileencodings=euc-jp + set guifontset=-misc-fixed-medium-r-normal--14-*-*-*-*-*-*-* +elseif v:lang =~? "^zh_TW" + set fileencodings=big5 + set guifontset=-sony-fixed-medium-r-normal--16-150-75-75-c-80-iso8859-1,-taipei-fixed-medium-r-normal--16-150-75-75-c-160-big5-0 +elseif v:lang =~? "^zh_CN" + set fileencodings=gb2312 + set guifontset=*-r-* +endif + +" If we have a BOM, always honour that rather than trying to guess. +if &fileencodings !~? "ucs-bom" + set fileencodings^=ucs-bom +endif + +" Always check for UTF-8 when trying to determine encodings. +if &fileencodings !~? "utf-8" + " If we have to add this, the default encoding is not Unicode. + " We use this fact later to revert to the default encoding in plaintext/empty + " files. + let g:added_fenc_utf8 = 1 + set fileencodings+=utf-8 +endif + +" Make sure we have a sane fallback for encoding detection +if &fileencodings !~? "default" + set fileencodings+=default +endif +" }}} + +" {{{ Syntax highlighting settings +" Switch syntax highlighting on, when the terminal has colors +" Also switch on highlighting the last used search pattern. +if &t_Co > 2 || has("gui_running") + syntax on + set hlsearch +endif +" }}} + +" {{{ Terminal fixes +if &term ==? "xterm" + set t_Sb=^[4%dm + set t_Sf=^[3%dm + set ttymouse=xterm2 +endif + +if &term ==? "gnome" && has("eval") + " Set useful keys that vim doesn't discover via termcap but are in the + " builtin xterm termcap. See bug #122562. We use exec to avoid having to + " include raw escapes in the file. + exec "set <C-Left>=\eO5D" + exec "set <C-Right>=\eO5C" +endif +" }}} + +" {{{ Filetype plugin settings +" Enable plugin-provided filetype settings, but only if the ftplugin +" directory exists (which it won't on livecds, for example). +if isdirectory(expand("$VIMRUNTIME/ftplugin")) + filetype plugin on + + " Uncomment the next line (or copy to your ~/.vimrc) for plugin-provided + " indent settings. Some people don't like these, so we won't turn them on by + " default. + " filetype indent on +endif +" }}} + +" {{{ Fix &shell, see bug #101665. +if "" == &shell + if executable("@GENTOO_PORTAGE_EPREFIX@/bin/bash") + set shell=@GENTOO_PORTAGE_EPREFIX@/bin/bash + elseif executable("@GENTOO_PORTAGE_EPREFIX@/bin/sh") + set shell=@GENTOO_PORTAGE_EPREFIX@/bin/sh + endif +endif +"}}} + +" {{{ Our default /bin/sh is bash, not ksh, so syntax highlighting for .sh +" files should default to bash. See :help sh-syntax and bug #101819. +if has("eval") + let is_bash=1 +endif +" }}} + +" {{{ Autocommands +if has("autocmd") + +augroup gentoo + au! + + " Gentoo-specific settings for ebuilds. These are the federally-mandated + " required tab settings. See the following for more information: + " http://www.gentoo.org/proj/en/devrel/handbook/handbook.xml + " Note that the rules below are very minimal and don't cover everything. + " Better to emerge app-vim/gentoo-syntax, which provides full syntax, + " filetype and indent settings for all things Gentoo. + au BufRead,BufNewFile *.e{build,class} let is_bash=1|setfiletype sh + au BufRead,BufNewFile *.e{build,class} set ts=4 sw=4 noexpandtab + + " When editing a file, always jump to the last cursor position + autocmd BufReadPost * + \ if ! exists("g:leave_my_cursor_position_alone") | + \ if line("'\"") > 0 && line ("'\"") <= line("$") | + \ exe "normal! g'\"" | + \ endif | + \ endif + + " When editing a crontab file, set backupcopy to yes rather than auto. See + " :help crontab and bug #53437. + autocmd FileType crontab set backupcopy=yes + + " If we previously detected that the default encoding is not UTF-8 + " (g:added_fenc_utf8), assume that a file with only ASCII characters (or no + " characters at all) isn't a Unicode file, but is in the default encoding. + " Except of course if a byte-order mark is in effect. + autocmd BufReadPost * + \ if exists("g:added_fenc_utf8") && &fileencoding == "utf-8" && + \ ! &bomb && search('[\x80-\xFF]','nw') == 0 && &modifiable | + \ set fileencoding= | + \ endif + +augroup END + +endif " has("autocmd") +" }}} + +" We don't want VIM to load their own built-in defaults, preferring ours here +" instead. This option cannot apply to minimal builds, so it is guarded by a +" test that's guaranteed to fail for those, owing to the lack of +eval. +if 1 + let g:skip_defaults_vim = 1 +endif + +" Enable Omni completion when opening a file only if a specific plugin does +" not already exist for that filetype. This allows Omni completion +" (Ctrl-x/Ctrl-o) to work with any programming language if and only if a syntax +" file exists for the said language. +if exists("+omnifunc") + autocmd Filetype * + \ if &omnifunc == "" | + \ setlocal omnifunc=syntaxcomplete#Complete | + \ endif +endif + +" {{{ vimrc.local +if filereadable("@GENTOO_PORTAGE_EPREFIX@/etc/vim/vimrc.local") + source @GENTOO_PORTAGE_EPREFIX@/etc/vim/vimrc.local +endif +" }}} + +" vim: set fenc=utf-8 tw=80 sw=2 sts=2 et foldmethod=marker : + diff --git a/app-editors/vim-core/vim-core-9.0.1503.ebuild b/app-editors/vim-core/vim-core-9.0.1503.ebuild deleted file mode 100644 index a54e0738beed..000000000000 --- a/app-editors/vim-core/vim-core-9.0.1503.ebuild +++ /dev/null @@ -1,231 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with app-editors/vim and app-editors/gvim - -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" -inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils - -if [[ ${PV} == 9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/vim/vim.git" - EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} -else - SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi -S="${WORKDIR}/vim-${PV}" - -DESCRIPTION="vim and gvim shared files" -HOMEPAGE="https://www.vim.org https://github.com/vim/vim" - -LICENSE="vim" -SLOT="0" -IUSE="nls acl minimal" - -# ncurses is only needed by ./configure, so no subslot operator required -DEPEND=">=sys-libs/ncurses-5.2-r2:0" -BDEPEND="dev-build/autoconf" - -if [[ ${PV} != 9999* ]]; then - # Gentoo patches to fix runtime issues, cross-compile errors, etc - PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" - ) -fi - -# platform-specific checks (bug #898406): -# - acl() -- Solaris -# - statacl() -- AIX -QA_CONFIG_IMPL_DECL_SKIP=( - 'acl' - 'statacl' -) - -pkg_setup() { - # people with broken alphabets run into trouble. bug #82186. - unset LANG LC_ALL - export LC_COLLATE="C" -} - -src_prepare() { - default - - # Fixup a script to use awk instead of nawk - sed -i \ - -e '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ - "${S}"/runtime/tools/mve.awk || die "sed failed" - - # See bug #77841. We remove this file after the tarball extraction. - rm -v "${S}"/runtime/tools/vimspell.sh || die "rm failed" - - # Read vimrc and gvimrc from /etc/vim - echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h || die - echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h || die - - # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. - # Hopefully this pattern won't break for a while at least. - # This fixes bug #29398 (27 Sep 2003 agriffis) - sed -i 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ - "${S}"/runtime/doc/syntax.txt \ - "${S}"/runtime/doc/tagsrch.txt \ - "${S}"/runtime/doc/usr_29.txt \ - "${S}"/runtime/menu.vim \ - "${S}"/src/configure.ac || die 'sed failed' - - # gcc on sparc32 has this, uhm, interesting problem with detecting EOF - # correctly. To avoid some really entertaining error messages about stuff - # which isn't even in the source file being invalid, we'll do some trickery - # to make the error never occur. bug 66162 (02 October 2004 ciaranm) - find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" - done - - # Try to avoid sandbox problems. Bug #114475. - if [[ -d "${S}"/src/po ]]; then - sed -i -e \ - '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ - "${S}"/src/po/Makefile || die "sed failed" - fi - - cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" - - # Fix bug #76331: -O3 causes problems, use -O2 instead. We'll do this for - # everyone since previous flag filtering bugs have turned out to affect - # multiple archs... - replace-flags -O3 -O2 - - # Fix bug #18245: Prevent "make" from the following chain: - # (1) Notice configure.ac is newer than auto/configure - # (2) Rebuild auto/configure - # (3) Notice auto/configure is newer than auto/config.mk - # (4) Run ./configure (with wrong args) to remake auto/config.mk - sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" - - # Remove src/auto/configure file. - rm -v src/auto/configure || die "rm configure failed" -} - -src_configure() { - # Fix bug #37354: Disallow -funroll-all-loops on amd64 - # Bug 57859 suggests that we want to do this for all archs - filter-flags -funroll-all-loops - - emake -j1 -C src autoconf - - # This should fix a sandbox violation (see bug 24447). The hvc - # things are for ppc64, see bug 86433. - for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do - if [[ -e "${file}" ]]; then - addwrite ${file} - fi - done - - # Let Portage do the stripping. Some people like that. - export ac_cv_prog_STRIP="$(type -P true ) faking strip" - - local myconf=( - --with-modified-by=Gentoo-${PVR} - --enable-gui=no - --without-x - --disable-darwin - --disable-perlinterp - --disable-pythoninterp - --disable-rubyinterp - --disable-gpm - --disable-selinux - $(use_enable nls) - $(use_enable acl) - ) - - # Keep Gentoo Prefix env contained within the EPREFIX - use prefix && myconf+=( --without-local-dir ) - - if tc-is-cross-compiler ; then - export vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=yes \ - vim_cv_terminfo=yes \ - vim_cv_toupper_broken=no - fi - - econf "${myconf[@]}" -} - -src_compile() { - emake -j1 -C src auto/osdef.h objects - emake tools -} - -src_test() { :; } - -src_install() { - local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} - - dodir /usr/{bin,share/{man/man1,vim}} - emake -C src \ - installruntime \ - installmanlinks \ - installmacros \ - installtutor \ - installtutorbin \ - installtools \ - install-languages \ - DESTDIR="${D}" \ - BINDIR="${EPREFIX}"/usr/bin \ - MANDIR="${EPREFIX}"/usr/share/man \ - DATADIR="${EPREFIX}"/usr/share - - keepdir ${vimfiles}/keymap - - # default vimrc is installed by vim-core since it applies to - # both vim and gvim - insinto /etc/vim/ - newins "${FILESDIR}"/vimrc-r6 vimrc - eprefixify "${ED}"/etc/vim/vimrc - - if use minimal; then - # To save space, install only a subset of the files. - # Helps minimalize the livecd, bug 65144. - rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die - rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die - rm -v "${ED}"/usr/bin/vimtutor || die - - for f in "${ED}${vimfiles}"/colors/*.vim; do - if [[ ${f} != */@(default).vim ]] ; then - printf '%s\0' "${f}" - fi - done | xargs -0 rm -f || die - - for f in "${ED}${vimfiles}"/syntax/*.vim; do - if [[ ${f} != */@(conf|crontab|fstab|inittab|resolv|sshdconfig|syntax|nosyntax|synload).vim ]] ; then - printf '%s\0' "${f}" - fi - done | xargs -0 rm -f || die - fi - - newbashcomp "${FILESDIR}"/xxd-completion xxd - - # install gvim icon since both vim/gvim desktop files reference it - doicon -s scalable "${FILESDIR}"/gvim.svg -} - -pkg_postinst() { - # update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update icon cache - xdg_icon_cache_update -} - -pkg_postrm() { - # Update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update icon cache - xdg_icon_cache_update -} diff --git a/app-editors/vim-core/vim-core-9.0.1627.ebuild b/app-editors/vim-core/vim-core-9.0.1627.ebuild deleted file mode 100644 index 6cb4710f79e9..000000000000 --- a/app-editors/vim-core/vim-core-9.0.1627.ebuild +++ /dev/null @@ -1,231 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with app-editors/vim and app-editors/gvim - -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" -inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils - -if [[ ${PV} == 9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/vim/vim.git" - EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} -else - SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi -S="${WORKDIR}/vim-${PV}" - -DESCRIPTION="vim and gvim shared files" -HOMEPAGE="https://www.vim.org https://github.com/vim/vim" - -LICENSE="vim" -SLOT="0" -IUSE="nls acl minimal" - -# ncurses is only needed by ./configure, so no subslot operator required -DEPEND=">=sys-libs/ncurses-5.2-r2:0" -BDEPEND="dev-build/autoconf" - -if [[ ${PV} != 9999* ]]; then - # Gentoo patches to fix runtime issues, cross-compile errors, etc - PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" - ) -fi - -# platform-specific checks (bug #898406): -# - acl() -- Solaris -# - statacl() -- AIX -QA_CONFIG_IMPL_DECL_SKIP=( - 'acl' - 'statacl' -) - -pkg_setup() { - # people with broken alphabets run into trouble. bug #82186. - unset LANG LC_ALL - export LC_COLLATE="C" -} - -src_prepare() { - default - - # Fixup a script to use awk instead of nawk - sed -i \ - -e '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ - "${S}"/runtime/tools/mve.awk || die "sed failed" - - # See bug #77841. We remove this file after the tarball extraction. - rm -v "${S}"/runtime/tools/vimspell.sh || die "rm failed" - - # Read vimrc and gvimrc from /etc/vim - echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h || die - echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h || die - - # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. - # Hopefully this pattern won't break for a while at least. - # This fixes bug #29398 (27 Sep 2003 agriffis) - sed -i 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ - "${S}"/runtime/doc/syntax.txt \ - "${S}"/runtime/doc/tagsrch.txt \ - "${S}"/runtime/doc/usr_29.txt \ - "${S}"/runtime/menu.vim \ - "${S}"/src/configure.ac || die 'sed failed' - - # gcc on sparc32 has this, uhm, interesting problem with detecting EOF - # correctly. To avoid some really entertaining error messages about stuff - # which isn't even in the source file being invalid, we'll do some trickery - # to make the error never occur. bug 66162 (02 October 2004 ciaranm) - find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" - done - - # Try to avoid sandbox problems. Bug #114475. - if [[ -d "${S}"/src/po ]]; then - sed -i -e \ - '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ - "${S}"/src/po/Makefile || die "sed failed" - fi - - cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" - - # Fix bug #76331: -O3 causes problems, use -O2 instead. We'll do this for - # everyone since previous flag filtering bugs have turned out to affect - # multiple archs... - replace-flags -O3 -O2 - - # Fix bug #18245: Prevent "make" from the following chain: - # (1) Notice configure.ac is newer than auto/configure - # (2) Rebuild auto/configure - # (3) Notice auto/configure is newer than auto/config.mk - # (4) Run ./configure (with wrong args) to remake auto/config.mk - sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" - - # Remove src/auto/configure file. - rm -v src/auto/configure || die "rm configure failed" -} - -src_configure() { - # Fix bug #37354: Disallow -funroll-all-loops on amd64 - # Bug 57859 suggests that we want to do this for all archs - filter-flags -funroll-all-loops - - emake -j1 -C src autoconf - - # This should fix a sandbox violation (see bug 24447). The hvc - # things are for ppc64, see bug 86433. - for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do - if [[ -e "${file}" ]]; then - addwrite ${file} - fi - done - - # Let Portage do the stripping. Some people like that. - export ac_cv_prog_STRIP="$(type -P true ) faking strip" - - local myconf=( - --with-modified-by=Gentoo-${PVR} - --enable-gui=no - --without-x - --disable-darwin - --disable-perlinterp - --disable-pythoninterp - --disable-rubyinterp - --disable-gpm - --disable-selinux - $(use_enable nls) - $(use_enable acl) - ) - - # Keep Gentoo Prefix env contained within the EPREFIX - use prefix && myconf+=( --without-local-dir ) - - if tc-is-cross-compiler ; then - export vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=yes \ - vim_cv_terminfo=yes \ - vim_cv_toupper_broken=no - fi - - econf "${myconf[@]}" -} - -src_compile() { - emake -j1 -C src auto/osdef.h objects - emake tools -} - -src_test() { :; } - -src_install() { - local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} - - dodir /usr/{bin,share/{man/man1,vim}} - emake -C src \ - installruntime \ - installmanlinks \ - installmacros \ - installtutor \ - installtutorbin \ - installtools \ - install-languages \ - DESTDIR="${D}" \ - BINDIR="${EPREFIX}"/usr/bin \ - MANDIR="${EPREFIX}"/usr/share/man \ - DATADIR="${EPREFIX}"/usr/share - - keepdir ${vimfiles}/keymap - - # default vimrc is installed by vim-core since it applies to - # both vim and gvim - insinto /etc/vim/ - newins "${FILESDIR}"/vimrc-r6 vimrc - eprefixify "${ED}"/etc/vim/vimrc - - if use minimal; then - # To save space, install only a subset of the files. - # Helps minimalize the livecd, bug 65144. - rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die - rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die - rm -v "${ED}"/usr/bin/vimtutor || die - - for f in "${ED}${vimfiles}"/colors/*.vim; do - if [[ ${f} != */@(default).vim ]] ; then - printf '%s\0' "${f}" - fi - done | xargs -0 rm -f || die - - for f in "${ED}${vimfiles}"/syntax/*.vim; do - if [[ ${f} != */@(conf|crontab|fstab|inittab|resolv|sshdconfig|syntax|nosyntax|synload).vim ]] ; then - printf '%s\0' "${f}" - fi - done | xargs -0 rm -f || die - fi - - newbashcomp "${FILESDIR}"/xxd-completion xxd - - # install gvim icon since both vim/gvim desktop files reference it - doicon -s scalable "${FILESDIR}"/gvim.svg -} - -pkg_postinst() { - # update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update icon cache - xdg_icon_cache_update -} - -pkg_postrm() { - # Update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # update icon cache - xdg_icon_cache_update -} diff --git a/app-editors/vim-core/vim-core-9.0.2092.ebuild b/app-editors/vim-core/vim-core-9.0.2167-r1.ebuild index 2c34d0a6f525..bd23f78d0c6a 100644 --- a/app-editors/vim-core/vim-core-9.0.2092.ebuild +++ b/app-editors/vim-core/vim-core-9.0.2167-r1.ebuild @@ -16,7 +16,7 @@ if [[ ${PV} == 9999* ]] ; then else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi S="${WORKDIR}/vim-${PV}" @@ -108,6 +108,11 @@ src_prepare() { # Remove src/auto/configure file. rm -v src/auto/configure || die "rm configure failed" + + # bug 908961 + if use elibc_musl ; then + sed -i -e '/ja.sjis/d' src/po/Make_all.mak || die + fi } src_configure() { @@ -185,7 +190,7 @@ src_install() { # default vimrc is installed by vim-core since it applies to # both vim and gvim insinto /etc/vim/ - newins "${FILESDIR}"/vimrc-r6 vimrc + newins "${FILESDIR}"/vimrc-r7 vimrc eprefixify "${ED}"/etc/vim/vimrc if use minimal; then diff --git a/app-editors/vim-core/vim-core-9.0.1777.ebuild b/app-editors/vim-core/vim-core-9.1.0366-r1.ebuild index b29cfe232334..5e2838b7e83b 100644 --- a/app-editors/vim-core/vim-core-9.0.1777.ebuild +++ b/app-editors/vim-core/vim-core-9.1.0366-r1.ebuild @@ -5,8 +5,8 @@ EAPI=8 # Please bump with app-editors/vim and app-editors/gvim -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" +VIM_VERSION="9.1" +VIM_PATCHES_VERSION="9.0.2092" inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils if [[ ${PV} == 9999* ]] ; then @@ -15,8 +15,8 @@ if [[ ${PV} == 9999* ]] ; then EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" + KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi S="${WORKDIR}/vim-${PV}" @@ -34,7 +34,7 @@ BDEPEND="dev-build/autoconf" if [[ ${PV} != 9999* ]]; then # Gentoo patches to fix runtime issues, cross-compile errors, etc PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" + "${WORKDIR}/vim-${VIM_PATCHES_VERSION}-patches" ) fi @@ -108,6 +108,11 @@ src_prepare() { # Remove src/auto/configure file. rm -v src/auto/configure || die "rm configure failed" + + # bug 908961 + if use elibc_musl ; then + sed -i -e '/ja.sjis/d' src/po/Make_all.mak || die + fi } src_configure() { @@ -185,7 +190,7 @@ src_install() { # default vimrc is installed by vim-core since it applies to # both vim and gvim insinto /etc/vim/ - newins "${FILESDIR}"/vimrc-r6 vimrc + newins "${FILESDIR}"/vimrc-r7 vimrc eprefixify "${ED}"/etc/vim/vimrc if use minimal; then diff --git a/app-editors/vim-core/vim-core-9.0.1678.ebuild b/app-editors/vim-core/vim-core-9.1.0470.ebuild index 66de9fc233f0..759cb04d314d 100644 --- a/app-editors/vim-core/vim-core-9.0.1678.ebuild +++ b/app-editors/vim-core/vim-core-9.1.0470.ebuild @@ -5,8 +5,8 @@ EAPI=8 # Please bump with app-editors/vim and app-editors/gvim -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" +VIM_VERSION="9.1" +VIM_PATCHES_VERSION="9.0.2092" inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils if [[ ${PV} == 9999* ]] ; then @@ -15,7 +15,7 @@ if [[ ${PV} == 9999* ]] ; then EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" + https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi S="${WORKDIR}/vim-${PV}" @@ -34,7 +34,7 @@ BDEPEND="dev-build/autoconf" if [[ ${PV} != 9999* ]]; then # Gentoo patches to fix runtime issues, cross-compile errors, etc PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" + "${WORKDIR}/vim-${VIM_PATCHES_VERSION}-patches" ) fi @@ -108,6 +108,11 @@ src_prepare() { # Remove src/auto/configure file. rm -v src/auto/configure || die "rm configure failed" + + # bug 908961 + if use elibc_musl ; then + sed -i -e '/ja.sjis/d' src/po/Make_all.mak || die + fi } src_configure() { @@ -185,7 +190,7 @@ src_install() { # default vimrc is installed by vim-core since it applies to # both vim and gvim insinto /etc/vim/ - newins "${FILESDIR}"/vimrc-r6 vimrc + newins "${FILESDIR}"/vimrc-r7 vimrc eprefixify "${ED}"/etc/vim/vimrc if use minimal; then diff --git a/app-editors/vim-core/vim-core-9999.ebuild b/app-editors/vim-core/vim-core-9999.ebuild index acfd3ab4aab3..b78c0ae44f87 100644 --- a/app-editors/vim-core/vim-core-9999.ebuild +++ b/app-editors/vim-core/vim-core-9999.ebuild @@ -190,7 +190,7 @@ src_install() { # default vimrc is installed by vim-core since it applies to # both vim and gvim insinto /etc/vim/ - newins "${FILESDIR}"/vimrc-r6 vimrc + newins "${FILESDIR}"/vimrc-r7 vimrc eprefixify "${ED}"/etc/vim/vimrc if use minimal; then diff --git a/app-editors/vim/Manifest b/app-editors/vim/Manifest index 71f002ea046c..67344428f5b6 100644 --- a/app-editors/vim/Manifest +++ b/app-editors/vim/Manifest @@ -1,9 +1,4 @@ -DIST vim-9.0.1503.tar.gz 17010118 BLAKE2B 4f74d52a3fcf7875031378f86fc3411c64c92e4b82bee371148b19042478d3f974793477c3fc2d9ddff9233fa1ec3c864962880840867544e92464f1a0876f51 SHA512 2f3242ec0f79cf6affc2f7fdaf689c35d8597706ac1689dbbdc01352676199605bb37f22bd901f1e8d59f312237d3fce4bee8b979b28a744ea9e40558621980e -DIST vim-9.0.1627.tar.gz 17048824 BLAKE2B 3fa583cf676c2388641b1240ed4b90c2e42cd9f50ea44a943cce86bba4bf278adf54837bb5c4530471fd57cfcd08cd39be78b17a5e907435a02dc5874ff7f571 SHA512 d2fb863e03d4ad773fcba8917f3cd1e373f661aa8b8a20bd3e416a73788997d31c6dd106a1bf59d72475bb577bbe6d52eb079fff9c7152d96bb6e5c9aa6e2f3b -DIST vim-9.0.1678.tar.gz 17069551 BLAKE2B e83cea77513eb0d8b3ed02bd508333fb97357d2d7a91a90c5a9376b03b444a0b65b6ce04b14e191e33445132845af71193ab140ea615bb03a2c24a904b726cb4 SHA512 c5ffb7ca56ff4eee70f06599dd84db2eb28ddadac229d4f7faf01174805923636a4ce61486bdf5a47910c929613dc9b9290dfc9288006222b4bc4ac891548bb8 -DIST vim-9.0.1777.tar.gz 17177555 BLAKE2B ad6d785f4c6b112199bd2f34e0b7f6070615fba8dce25354a7ded40ff8536388e7b7120c1f2fad790c8dc7134d74649697b6e95777e79dcf1e208ead81b229d6 SHA512 702781b6a9cf540d22aa0bc1e25a4fb785ff2b22e9c6a59643e87fd6f7b3e5444adbee1816bfaa0b45b9655bb56dc2d13904230840a0ecea56f5453034d81a2e DIST vim-9.0.2092-patches.tar.xz 2640 BLAKE2B 3a4b2bc57712de3b92b0e8d9b2d428e4d576665a183927051eddd53d019a5ca413c74dc10aff09917ee3120bd2e2ba441219d7238994f0d5ba14fc9c31180199 SHA512 ec27e4056460948ff86bc48a21de239a84b53757a8283144ec121654096796d970ad832234d6591a132bcd38bc12dc507cc7795a11cd383d20f08b4d9bcb051f -DIST vim-9.0.2092.tar.gz 17359377 BLAKE2B eeb50de7e4876ce0e2a1e8b241ea2c7c472898495ef5517fa115e01f29ef8922fb7ef970f2c1a3ffe65a8274e2c59bd5a939f397048c6b486683c29c01484d1e SHA512 1c3e78ee1bb507858e0d30a8a1e646c16dd6d8d666ea587e91d1c90e490aef46387d6dfadc01e80f9aa807f7b109e4072efa8d8115fcd2a81dd62cabc30a8001 DIST vim-9.0.2167.tar.gz 17405049 BLAKE2B 496c8f9672bc4ecce743a145bc2b671bf09034b2875e728406b318c8b12e2d8d4ee3423ce94f8749679f07d36f229954f7ef0b12ce7bc4d71ccf6637ce2d6029 SHA512 6a9a785b1915dc167210b0da4d5e4401c71ee49b3554c8a22566378658ddcc3493562897ea39035852399cc5ffb55a73355ab13390c27a4d00ffd76bcd10ddf0 DIST vim-9.1.0366.tar.gz 17861209 BLAKE2B 8771f5ef6a966c1b5992a437dd6cf1de9525458f61a4cd8fa53737a7bde29a4da101668639a301288a266ee8b3911857d1ba5b4e88870b60473eb1eaa608d7a5 SHA512 11be2a6e349c7b6d26fc1943c35ea18c662baa4f30ae76936eefb30e0b4d988bfcaedf7ecd2c3903f64e23c75957f55b9bb4073e0f38c7eb10ef0ee0dc652ddb -DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a +DIST vim-9.1.0470.tar.gz 17919981 BLAKE2B 90ebffc6e7b6162f8a047976659e044b75aaa946799b901e9f8c88f04a787543cde56545c8c6e5394fa2bc957d2e46810c5ca3f1315fc20a398a57bbdbc90f4c SHA512 41b71e9e5385237b30aa256f064c9d5c914b29a97c0ec562f1995ac5d476fcf840c3f0e9a52e599f6084777db147e83fcbf0ec6b985bb94c126264d4cbafb964 diff --git a/app-editors/vim/vim-9.0.1503.ebuild b/app-editors/vim/vim-9.0.1503.ebuild deleted file mode 100644 index b589d64dbde0..000000000000 --- a/app-editors/vim/vim-9.0.1503.ebuild +++ /dev/null @@ -1,371 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with app-editors/vim-core and app-editors/gvim - -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" - -LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" - -inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils - -if [[ ${PV} == 9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/vim/vim.git" -else - SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -DESCRIPTION="Vim, an improved vi-style text editor" -HOMEPAGE="https://www.vim.org https://github.com/vim/vim" - -LICENSE="vim" -SLOT="0" -IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager" -REQUIRED_USE=" - lua? ( ${LUA_REQUIRED_USE} ) - python? ( ${PYTHON_REQUIRED_USE} ) - vim-pager? ( !minimal ) -" - -RDEPEND=" - >=app-eselect/eselect-vi-1.1 - >=sys-libs/ncurses-5.2-r2:0= - nls? ( virtual/libintl ) - acl? ( kernel_linux? ( sys-apps/acl ) ) - crypt? ( dev-libs/libsodium:= ) - cscope? ( dev-util/cscope ) - gpm? ( >=sys-libs/gpm-1.19.3 ) - lua? ( ${LUA_DEPS} - $(lua_gen_impl_dep 'deprecated' lua5-1) - ) - ~app-editors/vim-core-${PV} - !<app-editors/vim-core-8.2.4328-r1 - vim-pager? ( app-editors/vim-core[-minimal] ) - perl? ( dev-lang/perl:= ) - python? ( ${PYTHON_DEPS} ) - racket? ( dev-scheme/racket ) - ruby? ( ${RUBY_DEPS} ) - selinux? ( sys-libs/libselinux ) - sound? ( media-libs/libcanberra ) - tcl? ( dev-lang/tcl:0= ) - X? ( x11-libs/libXt ) -" -DEPEND="${RDEPEND}" -# configure runs the Lua interpreter -BDEPEND=" - dev-build/autoconf - lua? ( ${LUA_DEPS} ) - nls? ( sys-devel/gettext ) -" -PDEPEND="!minimal? ( app-vim/gentoo-syntax )" - -if [[ ${PV} != 9999* ]]; then - # Gentoo patches to fix runtime issues, cross-compile errors, etc - PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" - ) -fi - -# platform-specific checks (bug #898452): -# - acl() -- Solaris -# - statacl() -- AIX -QA_CONFIG_IMPL_DECL_SKIP=( - 'acl' - 'statacl' -) - -pkg_setup() { - # people with broken alphabets run into trouble. bug #82186. - unset LANG LC_ALL - export LC_COLLATE="C" - - use lua && lua-single_pkg_setup - use python && python-single-r1_pkg_setup -} - -src_prepare() { - default - - # Fixup a script to use awk instead of nawk - sed -i -e \ - '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ - "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" - - # Read vimrc and gvimrc from /etc/vim - echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - - # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. - # Hopefully this pattern won't break for a while at least. - # This fixes bug #29398 (27 Sep 2003 agriffis) - sed -i -e \ - 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ - "${S}"/runtime/doc/syntax.txt \ - "${S}"/runtime/doc/tagsrch.txt \ - "${S}"/runtime/doc/usr_29.txt \ - "${S}"/runtime/menu.vim \ - "${S}"/src/configure.ac || die 'sed failed' - - # gcc on sparc32 has this, uhm, interesting problem with detecting EOF - # correctly. To avoid some really entertaining error messages about stuff - # which isn't even in the source file being invalid, we'll do some trickery - # to make the error never occur. bug 66162 (02 October 2004 ciaranm) - find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" - done - - # conditionally make the manpager.sh script - if use vim-pager; then - cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed" - #!/bin/sh - sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\ - vim \\ - -c 'let no_plugin_maps = 1' \\ - -c 'set nolist nomod ft=man ts=8' \\ - -c 'let g:showmarks_enable=0' \\ - -c 'runtime! macros/less.vim' - - _EOF_ - fi - - # Try to avoid sandbox problems. Bug #114475. - if [[ -d "${S}"/src/po ]]; then - sed -i -e \ - '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ - "${S}"/src/po/Makefile || die "sed failed" - fi - - cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" - - # Fix bug 18245: Prevent "make" from the following chain: - # (1) Notice configure.ac is newer than auto/configure - # (2) Rebuild auto/configure - # (3) Notice auto/configure is newer than auto/config.mk - # (4) Run ./configure (with wrong args) to remake auto/config.mk - sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" - rm src/auto/configure || die "rm failed" -} - -src_configure() { - - # Fix bug #37354: Disallow -funroll-all-loops on amd64 - # Bug #57859 suggests that we want to do this for all archs - filter-flags -funroll-all-loops - - # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for - # everyone since previous flag filtering bugs have turned out to affect - # multiple archs... - replace-flags -O3 -O2 - - emake -j1 -C src autoconf - - # This should fix a sandbox violation (see bug #24447). The hvc - # things are for ppc64, see bug #86433. - for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do - if [[ -e "${file}" ]]; then - addwrite ${file} - fi - done - - local myconf=() - if use minimal; then - myconf=( - --with-features=tiny - --disable-nls - --disable-canberra - --disable-acl - --enable-gui=no - --without-x - --disable-darwin - --disable-luainterp - --disable-perlinterp - --disable-pythoninterp - --disable-mzschemeinterp - --disable-rubyinterp - --disable-selinux - --disable-tclinterp - --disable-gpm - ) - else - use debug && append-flags "-DDEBUG" - - myconf=( - --with-features=huge - $(use_enable sound canberra) - $(use_enable acl) - $(use_enable crypt libsodium) - $(use_enable cscope) - $(use_enable gpm) - $(use_enable nls) - $(use_enable perl perlinterp) - $(use_enable python python3interp) - $(use_with python python3-command "${PYTHON}") - $(use_enable racket mzschemeinterp) - $(use_enable ruby rubyinterp) - $(use_enable selinux) - $(use_enable tcl tclinterp) - $(use_enable terminal) - ) - - # --with-features=huge forces on cscope even if we --disable it. We need - # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) - if ! use cscope; then - sed -i -e \ - '/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed" - fi - - if use lua; then - # -DLUA_COMPAT_OPENLIB=1 is required to enable the - # deprecated (in 5.1) luaL_openlib API (#874690) - use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1 - - myconf+=( - --enable-luainterp - $(use_with lua_single_target_luajit luajit) - --with-lua-prefix="${EPREFIX}/usr" - ) - fi - - # don't test USE=X here ... see bug #19115 - # but need to provide a way to link against X ... see bug #20093 - myconf+=( - --enable-gui=no - --disable-darwin - $(use_with X x) - ) - fi - - # let package manager strip binaries - export ac_cv_prog_STRIP="$(type -P true ) faking strip" - - # keep prefix env contained within the EPREFIX - use prefix && myconf+=( --without-local-dir ) - - if tc-is-cross-compiler ; then - export vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=yes \ - vim_cv_terminfo=yes \ - vim_cv_toupper_broken=no - fi - - econf \ - --with-modified-by=Gentoo-${PVR} \ - "${myconf[@]}" -} - -src_compile() { - # The following allows emake to be used - emake -j1 -C src auto/osdef.h objects - - emake -} - -src_test() { - einfo - einfo "Starting vim tests. Several error messages will be shown" - einfo "while the tests run. This is normal behaviour and does not" - einfo "indicate a fault." - einfo - ewarn "If the tests fail, your terminal may be left in a strange" - ewarn "state. Usually, running 'reset' will fix this." - einfo - - # Don't let vim talk to X - unset DISPLAY - - # Arch and opensuse seem to do this and at this point, I'm willing - # to try anything to avoid random test hangs! - export TERM=xterm - - # See https://github.com/vim/vim/blob/f08b0eb8691ff09f98bc4beef986ece1c521655f/src/testdir/runtest.vim#L5 - # for more information on test variables we can use. - # Note that certain variables need vim-compatible regex (not PCRE), see e.g. - # http://www.softpanorama.org/Editors/Vimorama/vim_regular_expressions.shtml. - # - # Skipped tests: - # - Test_expand_star_star - # Hangs because of a recursive symlink in /usr/include/nodejs (bug #616680) - # - Test_exrc - # Looks in wrong location? (bug #742710) - # - Test_job_tty_in_out - # Fragile and depends on TERM(?) - # - Test_spelldump_bang - # Hangs. - # - Test_fuzzy_completion_env - # Too sensitive to leaked environment variables. - # - Test_term_mouse_multiple_clicks_to_select_mode - # Hangs. - # - Test_spelldump - # Hangs. - export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\)' - - emake -j1 -C src/testdir nongui -} - -# Call eselect vi update with --if-unset -# to respect user's choice (bug #187449) -eselect_vi_update() { - ebegin "Calling eselect vi update" - eselect vi update --if-unset - eend $? -} - -src_install() { - local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} - - # Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are - # managed by eselect-vi - dobin src/vim - if ! use minimal ; then - dosym vim /usr/bin/vimdiff - fi - dosym vim /usr/bin/rvim - dosym vim /usr/bin/rview - if use vim-pager ; then - dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager - dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager - insinto ${vimfiles}/macros - doins runtime/macros/manpager.sh - fperms a+x ${vimfiles}/macros/manpager.sh - fi - - domenu runtime/vim.desktop - - newbashcomp "${FILESDIR}"/${PN}-completion ${PN} - - # keep in sync with 'complete ... -F' list - bashcomp_alias vim ex vi view rvim rview vimdiff -} - -pkg_postinst() { - # Update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # Call eselect vi update - eselect_vi_update - - # update desktop file mime cache - xdg_desktop_database_update -} - -pkg_postrm() { - # Update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # Call eselect vi update - eselect_vi_update - - # update desktop file mime cache - xdg_desktop_database_update -} diff --git a/app-editors/vim/vim-9.0.1627.ebuild b/app-editors/vim/vim-9.0.1627.ebuild deleted file mode 100644 index be5a1d92a8f8..000000000000 --- a/app-editors/vim/vim-9.0.1627.ebuild +++ /dev/null @@ -1,370 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with app-editors/vim-core and app-editors/gvim - -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" - -LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" - -inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils - -if [[ ${PV} == 9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/vim/vim.git" -else - SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -DESCRIPTION="Vim, an improved vi-style text editor" -HOMEPAGE="https://www.vim.org https://github.com/vim/vim" - -LICENSE="vim" -SLOT="0" -IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager" -REQUIRED_USE=" - lua? ( ${LUA_REQUIRED_USE} ) - python? ( ${PYTHON_REQUIRED_USE} ) - vim-pager? ( !minimal ) -" - -RDEPEND=" - >=app-eselect/eselect-vi-1.1 - >=sys-libs/ncurses-5.2-r2:0= - nls? ( virtual/libintl ) - acl? ( kernel_linux? ( sys-apps/acl ) ) - crypt? ( dev-libs/libsodium:= ) - cscope? ( dev-util/cscope ) - gpm? ( >=sys-libs/gpm-1.19.3 ) - lua? ( ${LUA_DEPS} - $(lua_gen_impl_dep 'deprecated' lua5-1) - ) - ~app-editors/vim-core-${PV} - vim-pager? ( app-editors/vim-core[-minimal] ) - perl? ( dev-lang/perl:= ) - python? ( ${PYTHON_DEPS} ) - racket? ( dev-scheme/racket ) - ruby? ( ${RUBY_DEPS} ) - selinux? ( sys-libs/libselinux ) - sound? ( media-libs/libcanberra ) - tcl? ( dev-lang/tcl:0= ) - X? ( x11-libs/libXt ) -" -DEPEND="${RDEPEND}" -# configure runs the Lua interpreter -BDEPEND=" - dev-build/autoconf - lua? ( ${LUA_DEPS} ) - nls? ( sys-devel/gettext ) -" -PDEPEND="!minimal? ( app-vim/gentoo-syntax )" - -if [[ ${PV} != 9999* ]]; then - # Gentoo patches to fix runtime issues, cross-compile errors, etc - PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" - ) -fi - -# platform-specific checks (bug #898452): -# - acl() -- Solaris -# - statacl() -- AIX -QA_CONFIG_IMPL_DECL_SKIP=( - 'acl' - 'statacl' -) - -pkg_setup() { - # people with broken alphabets run into trouble. bug #82186. - unset LANG LC_ALL - export LC_COLLATE="C" - - use lua && lua-single_pkg_setup - use python && python-single-r1_pkg_setup -} - -src_prepare() { - default - - # Fixup a script to use awk instead of nawk - sed -i -e \ - '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ - "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" - - # Read vimrc and gvimrc from /etc/vim - echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - - # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. - # Hopefully this pattern won't break for a while at least. - # This fixes bug #29398 (27 Sep 2003 agriffis) - sed -i -e \ - 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ - "${S}"/runtime/doc/syntax.txt \ - "${S}"/runtime/doc/tagsrch.txt \ - "${S}"/runtime/doc/usr_29.txt \ - "${S}"/runtime/menu.vim \ - "${S}"/src/configure.ac || die 'sed failed' - - # gcc on sparc32 has this, uhm, interesting problem with detecting EOF - # correctly. To avoid some really entertaining error messages about stuff - # which isn't even in the source file being invalid, we'll do some trickery - # to make the error never occur. bug 66162 (02 October 2004 ciaranm) - find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" - done - - # conditionally make the manpager.sh script - if use vim-pager; then - cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed" - #!/bin/sh - sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\ - vim \\ - -c 'let no_plugin_maps = 1' \\ - -c 'set nolist nomod ft=man ts=8' \\ - -c 'let g:showmarks_enable=0' \\ - -c 'runtime! macros/less.vim' - - _EOF_ - fi - - # Try to avoid sandbox problems. Bug #114475. - if [[ -d "${S}"/src/po ]]; then - sed -i -e \ - '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ - "${S}"/src/po/Makefile || die "sed failed" - fi - - cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" - - # Fix bug 18245: Prevent "make" from the following chain: - # (1) Notice configure.ac is newer than auto/configure - # (2) Rebuild auto/configure - # (3) Notice auto/configure is newer than auto/config.mk - # (4) Run ./configure (with wrong args) to remake auto/config.mk - sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" - rm src/auto/configure || die "rm failed" -} - -src_configure() { - - # Fix bug #37354: Disallow -funroll-all-loops on amd64 - # Bug #57859 suggests that we want to do this for all archs - filter-flags -funroll-all-loops - - # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for - # everyone since previous flag filtering bugs have turned out to affect - # multiple archs... - replace-flags -O3 -O2 - - emake -j1 -C src autoconf - - # This should fix a sandbox violation (see bug #24447). The hvc - # things are for ppc64, see bug #86433. - for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do - if [[ -e "${file}" ]]; then - addwrite ${file} - fi - done - - local myconf=() - if use minimal; then - myconf=( - --with-features=tiny - --disable-nls - --disable-canberra - --disable-acl - --enable-gui=no - --without-x - --disable-darwin - --disable-luainterp - --disable-perlinterp - --disable-pythoninterp - --disable-mzschemeinterp - --disable-rubyinterp - --disable-selinux - --disable-tclinterp - --disable-gpm - ) - else - use debug && append-flags "-DDEBUG" - - myconf=( - --with-features=huge - $(use_enable sound canberra) - $(use_enable acl) - $(use_enable crypt libsodium) - $(use_enable cscope) - $(use_enable gpm) - $(use_enable nls) - $(use_enable perl perlinterp) - $(use_enable python python3interp) - $(use_with python python3-command "${PYTHON}") - $(use_enable racket mzschemeinterp) - $(use_enable ruby rubyinterp) - $(use_enable selinux) - $(use_enable tcl tclinterp) - $(use_enable terminal) - ) - - # --with-features=huge forces on cscope even if we --disable it. We need - # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) - if ! use cscope; then - sed -i -e \ - '/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed" - fi - - if use lua; then - # -DLUA_COMPAT_OPENLIB=1 is required to enable the - # deprecated (in 5.1) luaL_openlib API (#874690) - use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1 - - myconf+=( - --enable-luainterp - $(use_with lua_single_target_luajit luajit) - --with-lua-prefix="${EPREFIX}/usr" - ) - fi - - # don't test USE=X here ... see bug #19115 - # but need to provide a way to link against X ... see bug #20093 - myconf+=( - --enable-gui=no - --disable-darwin - $(use_with X x) - ) - fi - - # let package manager strip binaries - export ac_cv_prog_STRIP="$(type -P true ) faking strip" - - # keep prefix env contained within the EPREFIX - use prefix && myconf+=( --without-local-dir ) - - if tc-is-cross-compiler ; then - export vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=yes \ - vim_cv_terminfo=yes \ - vim_cv_toupper_broken=no - fi - - econf \ - --with-modified-by=Gentoo-${PVR} \ - "${myconf[@]}" -} - -src_compile() { - # The following allows emake to be used - emake -j1 -C src auto/osdef.h objects - - emake -} - -src_test() { - einfo - einfo "Starting vim tests. Several error messages will be shown" - einfo "while the tests run. This is normal behaviour and does not" - einfo "indicate a fault." - einfo - ewarn "If the tests fail, your terminal may be left in a strange" - ewarn "state. Usually, running 'reset' will fix this." - einfo - - # Don't let vim talk to X - unset DISPLAY - - # Arch and opensuse seem to do this and at this point, I'm willing - # to try anything to avoid random test hangs! - export TERM=xterm - - # See https://github.com/vim/vim/blob/f08b0eb8691ff09f98bc4beef986ece1c521655f/src/testdir/runtest.vim#L5 - # for more information on test variables we can use. - # Note that certain variables need vim-compatible regex (not PCRE), see e.g. - # http://www.softpanorama.org/Editors/Vimorama/vim_regular_expressions.shtml. - # - # Skipped tests: - # - Test_expand_star_star - # Hangs because of a recursive symlink in /usr/include/nodejs (bug #616680) - # - Test_exrc - # Looks in wrong location? (bug #742710) - # - Test_job_tty_in_out - # Fragile and depends on TERM(?) - # - Test_spelldump_bang - # Hangs. - # - Test_fuzzy_completion_env - # Too sensitive to leaked environment variables. - # - Test_term_mouse_multiple_clicks_to_select_mode - # Hangs. - # - Test_spelldump - # Hangs. - export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\)' - - emake -j1 -C src/testdir nongui -} - -# Call eselect vi update with --if-unset -# to respect user's choice (bug #187449) -eselect_vi_update() { - ebegin "Calling eselect vi update" - eselect vi update --if-unset - eend $? -} - -src_install() { - local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} - - # Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are - # managed by eselect-vi - dobin src/vim - if ! use minimal ; then - dosym vim /usr/bin/vimdiff - fi - dosym vim /usr/bin/rvim - dosym vim /usr/bin/rview - if use vim-pager ; then - dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager - dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager - insinto ${vimfiles}/macros - doins runtime/macros/manpager.sh - fperms a+x ${vimfiles}/macros/manpager.sh - fi - - domenu runtime/vim.desktop - - newbashcomp "${FILESDIR}"/${PN}-completion ${PN} - - # keep in sync with 'complete ... -F' list - bashcomp_alias vim ex vi view rvim rview vimdiff -} - -pkg_postinst() { - # Update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # Call eselect vi update - eselect_vi_update - - # update desktop file mime cache - xdg_desktop_database_update -} - -pkg_postrm() { - # Update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # Call eselect vi update - eselect_vi_update - - # update desktop file mime cache - xdg_desktop_database_update -} diff --git a/app-editors/vim/vim-9.0.1678.ebuild b/app-editors/vim/vim-9.0.1678.ebuild deleted file mode 100644 index f23090161473..000000000000 --- a/app-editors/vim/vim-9.0.1678.ebuild +++ /dev/null @@ -1,370 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with app-editors/vim-core and app-editors/gvim - -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" - -LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" - -inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils - -if [[ ${PV} == 9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/vim/vim.git" -else - SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -DESCRIPTION="Vim, an improved vi-style text editor" -HOMEPAGE="https://www.vim.org https://github.com/vim/vim" - -LICENSE="vim" -SLOT="0" -IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager" -REQUIRED_USE=" - lua? ( ${LUA_REQUIRED_USE} ) - python? ( ${PYTHON_REQUIRED_USE} ) - vim-pager? ( !minimal ) -" - -RDEPEND=" - >=app-eselect/eselect-vi-1.1 - >=sys-libs/ncurses-5.2-r2:0= - nls? ( virtual/libintl ) - acl? ( kernel_linux? ( sys-apps/acl ) ) - crypt? ( dev-libs/libsodium:= ) - cscope? ( dev-util/cscope ) - gpm? ( >=sys-libs/gpm-1.19.3 ) - lua? ( ${LUA_DEPS} - $(lua_gen_impl_dep 'deprecated' lua5-1) - ) - ~app-editors/vim-core-${PV} - vim-pager? ( app-editors/vim-core[-minimal] ) - perl? ( dev-lang/perl:= ) - python? ( ${PYTHON_DEPS} ) - racket? ( dev-scheme/racket ) - ruby? ( ${RUBY_DEPS} ) - selinux? ( sys-libs/libselinux ) - sound? ( media-libs/libcanberra ) - tcl? ( dev-lang/tcl:0= ) - X? ( x11-libs/libXt ) -" -DEPEND="${RDEPEND}" -# configure runs the Lua interpreter -BDEPEND=" - dev-build/autoconf - lua? ( ${LUA_DEPS} ) - nls? ( sys-devel/gettext ) -" -PDEPEND="!minimal? ( app-vim/gentoo-syntax )" - -if [[ ${PV} != 9999* ]]; then - # Gentoo patches to fix runtime issues, cross-compile errors, etc - PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" - ) -fi - -# platform-specific checks (bug #898452): -# - acl() -- Solaris -# - statacl() -- AIX -QA_CONFIG_IMPL_DECL_SKIP=( - 'acl' - 'statacl' -) - -pkg_setup() { - # people with broken alphabets run into trouble. bug #82186. - unset LANG LC_ALL - export LC_COLLATE="C" - - use lua && lua-single_pkg_setup - use python && python-single-r1_pkg_setup -} - -src_prepare() { - default - - # Fixup a script to use awk instead of nawk - sed -i -e \ - '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ - "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" - - # Read vimrc and gvimrc from /etc/vim - echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - - # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. - # Hopefully this pattern won't break for a while at least. - # This fixes bug #29398 (27 Sep 2003 agriffis) - sed -i -e \ - 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ - "${S}"/runtime/doc/syntax.txt \ - "${S}"/runtime/doc/tagsrch.txt \ - "${S}"/runtime/doc/usr_29.txt \ - "${S}"/runtime/menu.vim \ - "${S}"/src/configure.ac || die 'sed failed' - - # gcc on sparc32 has this, uhm, interesting problem with detecting EOF - # correctly. To avoid some really entertaining error messages about stuff - # which isn't even in the source file being invalid, we'll do some trickery - # to make the error never occur. bug 66162 (02 October 2004 ciaranm) - find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" - done - - # conditionally make the manpager.sh script - if use vim-pager; then - cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed" - #!/bin/sh - sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\ - vim \\ - -c 'let no_plugin_maps = 1' \\ - -c 'set nolist nomod ft=man ts=8' \\ - -c 'let g:showmarks_enable=0' \\ - -c 'runtime! macros/less.vim' - - _EOF_ - fi - - # Try to avoid sandbox problems. Bug #114475. - if [[ -d "${S}"/src/po ]]; then - sed -i -e \ - '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ - "${S}"/src/po/Makefile || die "sed failed" - fi - - cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" - - # Fix bug 18245: Prevent "make" from the following chain: - # (1) Notice configure.ac is newer than auto/configure - # (2) Rebuild auto/configure - # (3) Notice auto/configure is newer than auto/config.mk - # (4) Run ./configure (with wrong args) to remake auto/config.mk - sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" - rm src/auto/configure || die "rm failed" -} - -src_configure() { - - # Fix bug #37354: Disallow -funroll-all-loops on amd64 - # Bug #57859 suggests that we want to do this for all archs - filter-flags -funroll-all-loops - - # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for - # everyone since previous flag filtering bugs have turned out to affect - # multiple archs... - replace-flags -O3 -O2 - - emake -j1 -C src autoconf - - # This should fix a sandbox violation (see bug #24447). The hvc - # things are for ppc64, see bug #86433. - for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do - if [[ -e "${file}" ]]; then - addwrite ${file} - fi - done - - local myconf=() - if use minimal; then - myconf=( - --with-features=tiny - --disable-nls - --disable-canberra - --disable-acl - --enable-gui=no - --without-x - --disable-darwin - --disable-luainterp - --disable-perlinterp - --disable-pythoninterp - --disable-mzschemeinterp - --disable-rubyinterp - --disable-selinux - --disable-tclinterp - --disable-gpm - ) - else - use debug && append-flags "-DDEBUG" - - myconf=( - --with-features=huge - $(use_enable sound canberra) - $(use_enable acl) - $(use_enable crypt libsodium) - $(use_enable cscope) - $(use_enable gpm) - $(use_enable nls) - $(use_enable perl perlinterp) - $(use_enable python python3interp) - $(use_with python python3-command "${PYTHON}") - $(use_enable racket mzschemeinterp) - $(use_enable ruby rubyinterp) - $(use_enable selinux) - $(use_enable tcl tclinterp) - $(use_enable terminal) - ) - - # --with-features=huge forces on cscope even if we --disable it. We need - # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) - if ! use cscope; then - sed -i -e \ - '/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed" - fi - - if use lua; then - # -DLUA_COMPAT_OPENLIB=1 is required to enable the - # deprecated (in 5.1) luaL_openlib API (#874690) - use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1 - - myconf+=( - --enable-luainterp - $(use_with lua_single_target_luajit luajit) - --with-lua-prefix="${EPREFIX}/usr" - ) - fi - - # don't test USE=X here ... see bug #19115 - # but need to provide a way to link against X ... see bug #20093 - myconf+=( - --enable-gui=no - --disable-darwin - $(use_with X x) - ) - fi - - # let package manager strip binaries - export ac_cv_prog_STRIP="$(type -P true ) faking strip" - - # keep prefix env contained within the EPREFIX - use prefix && myconf+=( --without-local-dir ) - - if tc-is-cross-compiler ; then - export vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=yes \ - vim_cv_terminfo=yes \ - vim_cv_toupper_broken=no - fi - - econf \ - --with-modified-by="Gentoo-${PVR} (RIP Bram)" \ - "${myconf[@]}" -} - -src_compile() { - # The following allows emake to be used - emake -j1 -C src auto/osdef.h objects - - emake -} - -src_test() { - einfo - einfo "Starting vim tests. Several error messages will be shown" - einfo "while the tests run. This is normal behaviour and does not" - einfo "indicate a fault." - einfo - ewarn "If the tests fail, your terminal may be left in a strange" - ewarn "state. Usually, running 'reset' will fix this." - einfo - - # Don't let vim talk to X - unset DISPLAY - - # Arch and opensuse seem to do this and at this point, I'm willing - # to try anything to avoid random test hangs! - export TERM=xterm - - # See https://github.com/vim/vim/blob/f08b0eb8691ff09f98bc4beef986ece1c521655f/src/testdir/runtest.vim#L5 - # for more information on test variables we can use. - # Note that certain variables need vim-compatible regex (not PCRE), see e.g. - # http://www.softpanorama.org/Editors/Vimorama/vim_regular_expressions.shtml. - # - # Skipped tests: - # - Test_expand_star_star - # Hangs because of a recursive symlink in /usr/include/nodejs (bug #616680) - # - Test_exrc - # Looks in wrong location? (bug #742710) - # - Test_job_tty_in_out - # Fragile and depends on TERM(?) - # - Test_spelldump_bang - # Hangs. - # - Test_fuzzy_completion_env - # Too sensitive to leaked environment variables. - # - Test_term_mouse_multiple_clicks_to_select_mode - # Hangs. - # - Test_spelldump - # Hangs. - export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\)' - - emake -j1 -C src/testdir nongui -} - -# Call eselect vi update with --if-unset -# to respect user's choice (bug #187449) -eselect_vi_update() { - ebegin "Calling eselect vi update" - eselect vi update --if-unset - eend $? -} - -src_install() { - local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} - - # Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are - # managed by eselect-vi - dobin src/vim - if ! use minimal ; then - dosym vim /usr/bin/vimdiff - fi - dosym vim /usr/bin/rvim - dosym vim /usr/bin/rview - if use vim-pager ; then - dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager - dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager - insinto ${vimfiles}/macros - doins runtime/macros/manpager.sh - fperms a+x ${vimfiles}/macros/manpager.sh - fi - - domenu runtime/vim.desktop - - newbashcomp "${FILESDIR}"/${PN}-completion ${PN} - - # keep in sync with 'complete ... -F' list - bashcomp_alias vim ex vi view rvim rview vimdiff -} - -pkg_postinst() { - # Update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # Call eselect vi update - eselect_vi_update - - # update desktop file mime cache - xdg_desktop_database_update -} - -pkg_postrm() { - # Update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # Call eselect vi update - eselect_vi_update - - # update desktop file mime cache - xdg_desktop_database_update -} diff --git a/app-editors/vim/vim-9.0.1777.ebuild b/app-editors/vim/vim-9.0.1777.ebuild deleted file mode 100644 index c50f55589810..000000000000 --- a/app-editors/vim/vim-9.0.1777.ebuild +++ /dev/null @@ -1,370 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with app-editors/vim-core and app-editors/gvim - -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" - -LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" - -inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils - -if [[ ${PV} == 9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/vim/vim.git" -else - SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -DESCRIPTION="Vim, an improved vi-style text editor" -HOMEPAGE="https://www.vim.org https://github.com/vim/vim" - -LICENSE="vim" -SLOT="0" -IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager" -REQUIRED_USE=" - lua? ( ${LUA_REQUIRED_USE} ) - python? ( ${PYTHON_REQUIRED_USE} ) - vim-pager? ( !minimal ) -" - -RDEPEND=" - >=app-eselect/eselect-vi-1.1 - >=sys-libs/ncurses-5.2-r2:0= - nls? ( virtual/libintl ) - acl? ( kernel_linux? ( sys-apps/acl ) ) - crypt? ( dev-libs/libsodium:= ) - cscope? ( dev-util/cscope ) - gpm? ( >=sys-libs/gpm-1.19.3 ) - lua? ( ${LUA_DEPS} - $(lua_gen_impl_dep 'deprecated' lua5-1) - ) - ~app-editors/vim-core-${PV} - vim-pager? ( app-editors/vim-core[-minimal] ) - perl? ( dev-lang/perl:= ) - python? ( ${PYTHON_DEPS} ) - racket? ( dev-scheme/racket ) - ruby? ( ${RUBY_DEPS} ) - selinux? ( sys-libs/libselinux ) - sound? ( media-libs/libcanberra ) - tcl? ( dev-lang/tcl:0= ) - X? ( x11-libs/libXt ) -" -DEPEND="${RDEPEND}" -# configure runs the Lua interpreter -BDEPEND=" - dev-build/autoconf - lua? ( ${LUA_DEPS} ) - nls? ( sys-devel/gettext ) -" -PDEPEND="!minimal? ( app-vim/gentoo-syntax )" - -if [[ ${PV} != 9999* ]]; then - # Gentoo patches to fix runtime issues, cross-compile errors, etc - PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" - ) -fi - -# platform-specific checks (bug #898452): -# - acl() -- Solaris -# - statacl() -- AIX -QA_CONFIG_IMPL_DECL_SKIP=( - 'acl' - 'statacl' -) - -pkg_setup() { - # people with broken alphabets run into trouble. bug #82186. - unset LANG LC_ALL - export LC_COLLATE="C" - - use lua && lua-single_pkg_setup - use python && python-single-r1_pkg_setup -} - -src_prepare() { - default - - # Fixup a script to use awk instead of nawk - sed -i -e \ - '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ - "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" - - # Read vimrc and gvimrc from /etc/vim - echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ - >> "${S}"/src/feature.h || die "echo failed" - - # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. - # Hopefully this pattern won't break for a while at least. - # This fixes bug #29398 (27 Sep 2003 agriffis) - sed -i -e \ - 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ - "${S}"/runtime/doc/syntax.txt \ - "${S}"/runtime/doc/tagsrch.txt \ - "${S}"/runtime/doc/usr_29.txt \ - "${S}"/runtime/menu.vim \ - "${S}"/src/configure.ac || die 'sed failed' - - # gcc on sparc32 has this, uhm, interesting problem with detecting EOF - # correctly. To avoid some really entertaining error messages about stuff - # which isn't even in the source file being invalid, we'll do some trickery - # to make the error never occur. bug 66162 (02 October 2004 ciaranm) - find "${S}" -name '*.c' | while read c; do - echo >> "$c" || die "echo failed" - done - - # conditionally make the manpager.sh script - if use vim-pager; then - cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed" - #!/bin/sh - sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\ - vim \\ - -c 'let no_plugin_maps = 1' \\ - -c 'set nolist nomod ft=man ts=8' \\ - -c 'let g:showmarks_enable=0' \\ - -c 'runtime! macros/less.vim' - - _EOF_ - fi - - # Try to avoid sandbox problems. Bug #114475. - if [[ -d "${S}"/src/po ]]; then - sed -i -e \ - '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ - "${S}"/src/po/Makefile || die "sed failed" - fi - - cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" - - # Fix bug 18245: Prevent "make" from the following chain: - # (1) Notice configure.ac is newer than auto/configure - # (2) Rebuild auto/configure - # (3) Notice auto/configure is newer than auto/config.mk - # (4) Run ./configure (with wrong args) to remake auto/config.mk - sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" - rm src/auto/configure || die "rm failed" -} - -src_configure() { - - # Fix bug #37354: Disallow -funroll-all-loops on amd64 - # Bug #57859 suggests that we want to do this for all archs - filter-flags -funroll-all-loops - - # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for - # everyone since previous flag filtering bugs have turned out to affect - # multiple archs... - replace-flags -O3 -O2 - - emake -j1 -C src autoconf - - # This should fix a sandbox violation (see bug #24447). The hvc - # things are for ppc64, see bug #86433. - for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do - if [[ -e "${file}" ]]; then - addwrite ${file} - fi - done - - local myconf=() - if use minimal; then - myconf=( - --with-features=tiny - --disable-nls - --disable-canberra - --disable-acl - --enable-gui=no - --without-x - --disable-darwin - --disable-luainterp - --disable-perlinterp - --disable-pythoninterp - --disable-mzschemeinterp - --disable-rubyinterp - --disable-selinux - --disable-tclinterp - --disable-gpm - ) - else - use debug && append-flags "-DDEBUG" - - myconf=( - --with-features=huge - $(use_enable sound canberra) - $(use_enable acl) - $(use_enable crypt libsodium) - $(use_enable cscope) - $(use_enable gpm) - $(use_enable nls) - $(use_enable perl perlinterp) - $(use_enable python python3interp) - $(use_with python python3-command "${PYTHON}") - $(use_enable racket mzschemeinterp) - $(use_enable ruby rubyinterp) - $(use_enable selinux) - $(use_enable tcl tclinterp) - $(use_enable terminal) - ) - - # --with-features=huge forces on cscope even if we --disable it. We need - # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) - if ! use cscope; then - sed -i -e \ - '/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed" - fi - - if use lua; then - # -DLUA_COMPAT_OPENLIB=1 is required to enable the - # deprecated (in 5.1) luaL_openlib API (#874690) - use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1 - - myconf+=( - --enable-luainterp - $(use_with lua_single_target_luajit luajit) - --with-lua-prefix="${EPREFIX}/usr" - ) - fi - - # don't test USE=X here ... see bug #19115 - # but need to provide a way to link against X ... see bug #20093 - myconf+=( - --enable-gui=no - --disable-darwin - $(use_with X x) - ) - fi - - # let package manager strip binaries - export ac_cv_prog_STRIP="$(type -P true ) faking strip" - - # keep prefix env contained within the EPREFIX - use prefix && myconf+=( --without-local-dir ) - - if tc-is-cross-compiler ; then - export vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=yes \ - vim_cv_terminfo=yes \ - vim_cv_toupper_broken=no - fi - - econf \ - --with-modified-by="Gentoo-${PVR} (RIP Bram)" \ - "${myconf[@]}" -} - -src_compile() { - # The following allows emake to be used - emake -j1 -C src auto/osdef.h objects - - emake -} - -src_test() { - einfo - einfo "Starting vim tests. Several error messages will be shown" - einfo "while the tests run. This is normal behaviour and does not" - einfo "indicate a fault." - einfo - ewarn "If the tests fail, your terminal may be left in a strange" - ewarn "state. Usually, running 'reset' will fix this." - einfo - - # Don't let vim talk to X - unset DISPLAY - - # Arch and opensuse seem to do this and at this point, I'm willing - # to try anything to avoid random test hangs! - export TERM=xterm - - # See https://github.com/vim/vim/blob/f08b0eb8691ff09f98bc4beef986ece1c521655f/src/testdir/runtest.vim#L5 - # for more information on test variables we can use. - # Note that certain variables need vim-compatible regex (not PCRE), see e.g. - # http://www.softpanorama.org/Editors/Vimorama/vim_regular_expressions.shtml. - # - # Skipped tests: - # - Test_expand_star_star - # Hangs because of a recursive symlink in /usr/include/nodejs (bug #616680) - # - Test_exrc - # Looks in wrong location? (bug #742710) - # - Test_job_tty_in_out - # Fragile and depends on TERM(?) - # - Test_spelldump_bang - # Hangs. - # - Test_fuzzy_completion_env - # Too sensitive to leaked environment variables. - # - Test_term_mouse_multiple_clicks_to_select_mode - # Hangs. - # - Test_spelldump - # Hangs. - export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\)' - - emake -j1 -C src/testdir nongui -} - -# Call eselect vi update with --if-unset -# to respect user's choice (bug #187449) -eselect_vi_update() { - ebegin "Calling eselect vi update" - eselect vi update --if-unset - eend $? -} - -src_install() { - local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} - - # Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are - # managed by eselect-vi - dobin src/vim - if ! use minimal ; then - dosym vim /usr/bin/vimdiff - fi - dosym vim /usr/bin/rvim - dosym vim /usr/bin/rview - if use vim-pager ; then - dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager - dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager - insinto ${vimfiles}/macros - doins runtime/macros/manpager.sh - fperms a+x ${vimfiles}/macros/manpager.sh - fi - - domenu runtime/vim.desktop - - newbashcomp "${FILESDIR}"/${PN}-completion ${PN} - - # keep in sync with 'complete ... -F' list - bashcomp_alias vim ex vi view rvim rview vimdiff -} - -pkg_postinst() { - # Update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # Call eselect vi update - eselect_vi_update - - # update desktop file mime cache - xdg_desktop_database_update -} - -pkg_postrm() { - # Update documentation tags (from vim-doc.eclass) - update_vim_helptags - - # Call eselect vi update - eselect_vi_update - - # update desktop file mime cache - xdg_desktop_database_update -} diff --git a/app-editors/vim/vim-9.1.0366.ebuild b/app-editors/vim/vim-9.1.0366.ebuild index 91f87fbcb9a3..0671b61266ac 100644 --- a/app-editors/vim/vim-9.1.0366.ebuild +++ b/app-editors/vim/vim-9.1.0366.ebuild @@ -21,7 +21,7 @@ if [[ ${PV} == 9999* ]] ; then else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi DESCRIPTION="Vim, an improved vi-style text editor" diff --git a/app-editors/vim/vim-9.0.2092.ebuild b/app-editors/vim/vim-9.1.0470.ebuild index 1b1136741494..91f87fbcb9a3 100644 --- a/app-editors/vim/vim-9.0.2092.ebuild +++ b/app-editors/vim/vim-9.1.0470.ebuild @@ -5,13 +5,13 @@ EAPI=8 # Please bump with app-editors/vim-core and app-editors/gvim -VIM_VERSION="9.0" +VIM_VERSION="9.1" VIM_PATCHES_VERSION="9.0.2092" LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) +PYTHON_COMPAT=( python3_{10..12} ) PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" +USE_RUBY="ruby31 ruby32" inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils @@ -21,7 +21,7 @@ if [[ ${PV} == 9999* ]] ; then else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi DESCRIPTION="Vim, an improved vi-style text editor" @@ -58,7 +58,9 @@ RDEPEND=" tcl? ( dev-lang/tcl:0= ) X? ( x11-libs/libXt ) " -DEPEND="${RDEPEND}" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) +" # configure runs the Lua interpreter BDEPEND=" dev-build/autoconf @@ -153,6 +155,11 @@ src_prepare() { # (4) Run ./configure (with wrong args) to remake auto/config.mk sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" rm src/auto/configure || die "rm failed" + + # bug 908961 + if use elibc_musl ; then + sed -i -e '/ja.sjis/d' src/po/Make_all.mak || die + fi } src_configure() { diff --git a/app-editors/vim/vim-9999.ebuild b/app-editors/vim/vim-9999.ebuild index 850c5dab10c6..91f87fbcb9a3 100644 --- a/app-editors/vim/vim-9999.ebuild +++ b/app-editors/vim/vim-9999.ebuild @@ -5,13 +5,13 @@ EAPI=8 # Please bump with app-editors/vim-core and app-editors/gvim -VIM_VERSION="9.0" -VIM_PATCHES_VERSION="9.0.1000" +VIM_VERSION="9.1" +VIM_PATCHES_VERSION="9.0.2092" LUA_COMPAT=( lua5-{1..4} luajit ) -PYTHON_COMPAT=( python3_{10..11} ) +PYTHON_COMPAT=( python3_{10..12} ) PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby27 ruby30 ruby31" +USE_RUBY="ruby31 ruby32" inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils @@ -20,8 +20,8 @@ if [[ ${PV} == 9999* ]] ; then EGIT_REPO_URI="https://github.com/vim/vim.git" else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz - https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" + https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi DESCRIPTION="Vim, an improved vi-style text editor" @@ -72,7 +72,7 @@ PDEPEND="!minimal? ( app-vim/gentoo-syntax )" if [[ ${PV} != 9999* ]]; then # Gentoo patches to fix runtime issues, cross-compile errors, etc PATCHES=( - "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" + "${WORKDIR}/vim-${VIM_PATCHES_VERSION}-patches" ) fi @@ -266,7 +266,7 @@ src_configure() { fi econf \ - --with-modified-by=Gentoo-${PVR} \ + --with-modified-by="Gentoo-${PVR} (RIP Bram)" \ "${myconf[@]}" } diff --git a/app-editors/vis/Manifest b/app-editors/vis/Manifest index 1d57d4db3820..2d32ac0131a4 100644 --- a/app-editors/vis/Manifest +++ b/app-editors/vis/Manifest @@ -1,2 +1,4 @@ DIST vis-0.8.tar.gz 404496 BLAKE2B eafb7098a6c8e0d8f277be66984d5fd298ac86d524a4219a7d7730599157ca68c040615622cd1680b101e1cd003eba03343496762d0d4dc2766a079116f21eea SHA512 ab4eda075034955411bdbc0ade2fe9149a48c644fa2f70add8d3b9d749f86b98a4e429745b5cae7fdbc0a1e07c8587539a055cd1c6734bb59e43c580c949e0aa +DIST vis-0.9.tar.gz 456713 BLAKE2B 3e812e054c8d7f88e8866882500fb107cfaccd4f2680dd3ff3f68820bf4c76495dcc591e78916d0faef8390eb23cc14ead7ba4e35d2068bfc04964ad46acb3ce SHA512 64025569f6feb1a3b5aa8aaa79af319cdf8fc1fd5d1f5b29a6838ff00ea950cade1efb366d0a95d77e516f5605048bcb557fd7aa52b3a9510a15e69acaee147c DIST vis-test-0.5.tar.gz 99314 BLAKE2B 988d7e93d0f3c58d2fc8fbe9293049c6a3cc44dfcbfbd4f42f7992815cf33a604340b59171dcd880f7180ae56e3f73f46684b7aacd96438480db6c4592851f2c SHA512 c41b40f23a45a7ebd9c16aa853d9c3b517767cb88ff8dc268da44276a02aa8c77de0fc6aa243a1e4cdfbc27182870b82d0b9bc892bb87ea74d5275d76c554ed1 +DIST vis-test-783b7ef67aa360f0b9bd44fa5ea47e644bc49d69.tar.gz 102134 BLAKE2B c9c32cd7c01027853810b18eb418173d3e04947039bb5c103607602838a143bbff52754dcf806c35bb247c8c6be8b8bf86c3a73daa13a54894df525e6f2c0905 SHA512 dd86561e1eaf196c5b2d27e628eaababa721d26f7fab623ef7dd41e0d30352f5f9eb0e5006cdb1a896c5888304ea40f7fd291f3789d312a201403990bfbaf824 diff --git a/app-editors/vis/vis-0.9.ebuild b/app-editors/vis/vis-0.9.ebuild new file mode 100644 index 000000000000..dba3a4d7c4fb --- /dev/null +++ b/app-editors/vis/vis-0.9.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VIS_TEST_COMMIT="783b7ef67aa360f0b9bd44fa5ea47e644bc49d69" +LUA_COMPAT=( lua5-2 lua5-3 lua5-4 ) + +inherit lua-single + +if [ "${PV}" == "9999" ]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/martanne/vis.git" +else + SRC_URI=" + https://github.com/martanne/vis/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz + test? ( https://github.com/martanne/vis-test/archive/${VIS_TEST_COMMIT}.tar.gz -> vis-test-${VIS_TEST_COMMIT}.tar.gz ) + " + KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" +fi + +DESCRIPTION="modern, legacy free, simple yet efficient vim-like editor" +HOMEPAGE="https://github.com/martanne/vis" +LICENSE="ISC MIT" +SLOT="0" +IUSE="+ncurses +lua selinux test tre" +REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )" +RESTRICT="!test? ( test )" + +# - Known to also work with NetBSD curses +DEPEND=" + dev-libs/libtermkey + sys-apps/acl + ncurses? ( sys-libs/ncurses:0= ) + lua? ( ${LUA_DEPS} ) + tre? ( dev-libs/tre ) +" +RDEPEND=" + ${DEPEND} + app-eselect/eselect-vi + lua? ( + $(lua_gen_cond_dep 'dev-lua/lpeg[${LUA_USEDEP}]') + ) +" +# lpeg: https://github.com/martanne/vis-test/issues/28 +BDEPEND="test? ( + $(lua_gen_cond_dep 'dev-lua/lpeg[${LUA_USEDEP}]') + $(lua_gen_cond_dep 'dev-lua/busted[${LUA_USEDEP}]') +)" + +pkg_setup() { + use lua && lua-single_pkg_setup +} + +src_prepare() { + if use test; then + if [ ! "${PV}" == "9999" ]; then + rm -r test || die + mv "${WORKDIR}/vis-test-${VIS_TEST_COMMIT}" test || die + fi + + # https://github.com/martanne/vis-test/issues/27 a Werror clone + sed -i 's;|| strstr(output, "warning");;' test/core/ccan-config.c || die + fi + + sed -i 's|STRIP?=.*|STRIP=true|' Makefile || die + sed -i 's|${DOCPREFIX}/vis|${DOCPREFIX}|' Makefile || die + sed -i 's|DOCUMENTATION = LICENSE|DOCUMENTATION =|' Makefile || die + + default +} + +src_configure() { + ./configure \ + --prefix="${EPREFIX}"/usr \ + --docdir="${EPREFIX}"/usr/share/doc/${PF} \ + --disable-lpeg-static \ + $(use_enable lua) \ + $(use_enable ncurses curses) \ + $(use_enable selinux) \ + $(use_enable tre) || die +} + +update_symlinks() { + einfo "Calling eselect vi update --if-unset" + eselect vi update --if-unset +} + +pkg_postrm() { + update_symlinks +} + +pkg_postinst() { + update_symlinks +} diff --git a/app-editors/vis/vis-9999.ebuild b/app-editors/vis/vis-9999.ebuild index 09bd443398c8..7887e2ae1f55 100644 --- a/app-editors/vis/vis-9999.ebuild +++ b/app-editors/vis/vis-9999.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -MY_PTV=0.5 +VIS_TEST_COMMIT="783b7ef67aa360f0b9bd44fa5ea47e644bc49d69" LUA_COMPAT=( lua5-2 lua5-3 lua5-4 ) inherit lua-single @@ -12,8 +12,10 @@ if [ "${PV}" == "9999" ]; then inherit git-r3 EGIT_REPO_URI="https://github.com/martanne/vis.git" else - SRC_URI="https://github.com/martanne/vis/releases/download/v${PV}/${P}.tar.gz - test? ( https://github.com/martanne/vis-test/releases/download/v${MY_PTV}/vis-test-${MY_PTV}.tar.gz )" + SRC_URI=" + https://github.com/martanne/vis/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz + test? ( https://github.com/martanne/vis-test/archive/${VIS_TEST_COMMIT}.tar.gz -> vis-test-${VIS_TEST_COMMIT}.tar.gz ) + " KEYWORDS="~amd64 ~arm ~riscv ~x86" fi @@ -26,12 +28,15 @@ REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )" RESTRICT="!test? ( test )" # - Known to also work with NetBSD curses -DEPEND="dev-libs/libtermkey +DEPEND=" + dev-libs/libtermkey sys-apps/acl ncurses? ( sys-libs/ncurses:0= ) lua? ( ${LUA_DEPS} ) - tre? ( dev-libs/tre )" -RDEPEND="${DEPEND} + tre? ( dev-libs/tre ) +" +RDEPEND=" + ${DEPEND} app-eselect/eselect-vi lua? ( $(lua_gen_cond_dep 'dev-lua/lpeg[${LUA_USEDEP}]') @@ -51,15 +56,9 @@ src_prepare() { if use test; then if [ ! "${PV}" == "9999" ]; then rm -r test || die - mv "${WORKDIR}/vis-test-${MY_PTV}" test || die + mv "${WORKDIR}/vis-test-${VIS_TEST_COMMIT}" test || die fi - # https://bugs.gentoo.org/722014 https://github.com/martanne/vis-test/pull/22 - sed -i 's;./ccan-config > config.h;./ccan-config "${CC}" ${CFLAGS} > config.h;' test/core/Makefile || die - - # https://github.com/martanne/vis-test/pull/29 - sed -i 's;cpp -P;${CPP:-cpp} -P;' test/vim/test.sh || die - # https://github.com/martanne/vis-test/issues/27 a Werror clone sed -i 's;|| strstr(output, "warning");;' test/core/ccan-config.c || die fi diff --git a/app-editors/vscode/Manifest b/app-editors/vscode/Manifest index f7c8381acc28..29f2ec87b845 100644 --- a/app-editors/vscode/Manifest +++ b/app-editors/vscode/Manifest @@ -1,3 +1,9 @@ -DIST vscode-1.88.1-amd64.tar.gz 142835966 BLAKE2B f78ed2a0a68d9c632ac1b8c811647696da2f9d86d1c171fdc1a0ea75f77872bb5e9a860020a49c0e3a3cfcafd85f9cf9da3300326b1e08077bc6f1eeb1c53f64 SHA512 5730981a13d72a317c180b566ec0d3408e75bb80eb37dd7de58e2beb4492ab59df9009cff92b3ac1cb4283f66868d793bdffc0689248fb3630e9cf55bfcc7bab -DIST vscode-1.88.1-arm.tar.gz 128139341 BLAKE2B 36da83b891554c2e4090e70635f7c241e20dd5be0beddcf15df32563ef47e20e5de3f4cef874b2b0ebf49702582cb604e7a4e2355d5a46ecc8f934de42b49c1e SHA512 79e181b0c8603c06605eaa1901527bb5da593c40ce2a830b36f80911648736125c5f12ec98fe9ca61edeea051f5ab8cd172983a0228800b32a718ef4a00ef089 -DIST vscode-1.88.1-arm64.tar.gz 139073832 BLAKE2B 884231acc011963151ca6121243c459415b261158ee01056cbc7316f4ac7f05fe65583500d6f2cc9967975fd5ff063b02c2b7bd85aa2e2614d844f72385cb672 SHA512 af02536c815e78c12ffeb5f472e63f7390cb619e772256d00cf130898fb836a853fe9fd6362540d1dd1384949e13ca261a98da6abdf8781e62e981ab47847eaf +DIST vscode-1.89.0-amd64.tar.gz 143134909 BLAKE2B 93fffeb6d1d13d5f1b553bb16816a6b9b6ff1979a5ae4c3e3f294ce911875f5b1ebdf0888c4fcba5a47cad3229ff5b88bb938c0d180f84a22f060fd53c878d8b SHA512 7509c6c073fd8e23eb1c989e67085b4f9f9686d26c33d6dd915b1836fd8501b59b261b142590cf00cecf62cbccc30f2c620ebfef6af2173b0f41fa59160e4428 +DIST vscode-1.89.0-arm.tar.gz 128531766 BLAKE2B 12920281d644fcd2582ffe32b15328888a3acd5341578f6548f48c976c41c330fb33ea30d0933742f1978423afae42d187d5a6feea2bb96837da4fb0067352e2 SHA512 25ac38362cfbdbbb51fe278ba641323ecefe3281b731d22d6ca3b57e125eb12bd6c9cccb68d69cd1c50dc4a399606e5c7ae19dafef8ae6b113658d975ed56560 +DIST vscode-1.89.0-arm64.tar.gz 139462657 BLAKE2B b0873b26f8d49d5c1be9cc0d71e7f88c1154faf3e8660ecd1ea8f79932b9399ec70d468035bdc7a067970e6c315ae3b92658239e2278b0cd5cdd16bebd637007 SHA512 156cf694f9c7a0acff313108e49e0d0a300bf6e5a4aef410056c4f874b6c054d5718542213da6edae42d3ba738a0b8fbd537f7c725d7352a2fd5e8129fc6d22c +DIST vscode-1.89.1-amd64.tar.gz 143147679 BLAKE2B 1b6e33d02e6b65ac91710276d0ffcffb636f645c9a21bad2057c20855dd621702d5cebaabfcf7be02632d41d1bbaa89fe5270326be4237d7d69de04a343bc655 SHA512 09ff935fbb56a8c63d6a18a2cae482dc45e1f34f524260591f4e5859f6a6297a789291b856e3c644af9255a64a92815b0217f8dda237fc00e445f822e1adf531 +DIST vscode-1.89.1-arm.tar.gz 128552384 BLAKE2B 3f26d82a44d7a68588205c2ee2b7523ffd992860deaa7863322e8dbfbc886062ee3fa4530a647d655c4eaf8b1b22c5b981436fd658c9005e9fcfd7aacc159b6b SHA512 fe63cf0315e382b80367bfd8bdc8fc75f11f734b38f8413fa3ad2da25e9402fd52fb1f48cf2faa13d702bb6d8ea8e82e5ca5dbb4aaf8819d35d6a442c8e01d0f +DIST vscode-1.89.1-arm64.tar.gz 139443388 BLAKE2B 4a88f080b631688a969160b002d47b1846d2bd6d80360f6f3bbbf3d6c2620abd29aa431ba15e4414beb009445f9342f2d6f57c39678490b362b68c53a793f8fc SHA512 ebd1176aea7cb5ecf260324c40353b4af274c19c4b09f665fe7eec7e83bf163609503d986f75f50681ecb2ef2996c41988a794b2c526a1f865ef87c1313bab30 +DIST vscode-1.90.0-amd64.tar.gz 143930997 BLAKE2B cc855974d718f32536ff663c4ee25479810154aa1820384ebdfd1bd2ad0958b2b54a160a7167f602535f621a061bf6d77495a28a06ae51f052e959ffae58ecf3 SHA512 4ba8513a14e9a579154fc7300ef3766e025fcd3faa21fc0806abe6d7ce5983984a7bd6bb157746e2e8e5de877cf537ebbea1b1c692489a1560fdccdef255f3c1 +DIST vscode-1.90.0-arm.tar.gz 128877927 BLAKE2B 2a7869239c6743c750d43bc0b7a9d11788854e9e30116e9df341d0ed919292dde6e5a1cb12d9796872f26b3891ef36402117834ee23c935ad2651d897c878582 SHA512 2603ab8e2a36ae04f7e31dca4f1413d514625df2b8a9a193dc88c0b6d0776a532bc850f987e220ac9b49576f9e45e341fe02d708e6f74566219adb0de9386e8c +DIST vscode-1.90.0-arm64.tar.gz 140685043 BLAKE2B 7433f4b5562eb942013abc58c8bc1161694d0f21cebd307f9811fcf513926cfad44bf02caba38ea24c471c311b3c497ec59c487cfdc4ad29ddb22402f640df5e SHA512 cd41d8856f0979c7e9850abb3106c8fdac42946090a2e66f657f5a65cec002df0b84c9e6ee7d1f4ae302a2d29963bdc6f80d8c6978de3b4469a2b3e367227df7 diff --git a/app-editors/vscode/vscode-1.88.1.ebuild b/app-editors/vscode/vscode-1.89.0.ebuild index f803279f6a02..f803279f6a02 100644 --- a/app-editors/vscode/vscode-1.88.1.ebuild +++ b/app-editors/vscode/vscode-1.89.0.ebuild diff --git a/app-editors/vscode/vscode-1.89.1.ebuild b/app-editors/vscode/vscode-1.89.1.ebuild new file mode 100644 index 000000000000..f803279f6a02 --- /dev/null +++ b/app-editors/vscode/vscode-1.89.1.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop pax-utils xdg optfeature + +DESCRIPTION="Multiplatform Visual Studio Code from Microsoft" +HOMEPAGE="https://code.visualstudio.com" +SRC_URI=" + amd64? ( https://update.code.visualstudio.com/${PV}/linux-x64/stable -> ${P}-amd64.tar.gz ) + arm? ( https://update.code.visualstudio.com/${PV}/linux-armhf/stable -> ${P}-arm.tar.gz ) + arm64? ( https://update.code.visualstudio.com/${PV}/linux-arm64/stable -> ${P}-arm64.tar.gz ) +" +S="${WORKDIR}" + +LICENSE=" + Apache-2.0 + BSD + BSD-1 + BSD-2 + BSD-4 + CC-BY-4.0 + ISC + LGPL-2.1+ + Microsoft-vscode + MIT + MPL-2.0 + openssl + PYTHON + TextMate-bundle + Unlicense + UoI-NCSA + W3C +" +SLOT="0" +KEYWORDS="-* amd64 ~arm ~arm64" +IUSE="egl kerberos wayland" +RESTRICT="mirror strip bindist" + +RDEPEND=" + >=app-accessibility/at-spi2-core-2.46.0:2 + app-crypt/libsecret[crypt] + app-misc/ca-certificates + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + media-libs/alsa-lib + media-libs/libcanberra[gtk3] + media-libs/libglvnd + media-libs/mesa + net-misc/curl + sys-apps/dbus + sys-libs/zlib + sys-process/lsof + x11-libs/cairo + x11-libs/gtk+:3 + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libxkbcommon + x11-libs/libxkbfile + x11-libs/libXrandr + x11-libs/libXScrnSaver + x11-libs/pango + x11-misc/xdg-utils + kerberos? ( app-crypt/mit-krb5 ) +" + +QA_PREBUILT="*" + +src_install() { + if use amd64; then + cd "${WORKDIR}/VSCode-linux-x64" || die + elif use arm; then + cd "${WORKDIR}/VSCode-linux-armhf" || die + elif use arm64; then + cd "${WORKDIR}/VSCode-linux-arm64" || die + else + die "Visual Studio Code only supports amd64, arm and arm64" + fi + + # Cleanup + rm -r ./resources/app/ThirdPartyNotices.txt || die + + # Disable update server + sed -e "/updateUrl/d" -i ./resources/app/product.json || die + + if ! use kerberos; then + rm -r ./resources/app/node_modules.asar.unpacked/kerberos || die + fi + + # Install + pax-mark m code + mkdir -p "${ED}/opt/${PN}" || die + cp -r . "${ED}/opt/${PN}" || die + fperms 4711 /opt/${PN}/chrome-sandbox + + dosym -r "/opt/${PN}/bin/code" "usr/bin/vscode" + dosym -r "/opt/${PN}/bin/code" "usr/bin/code" + + local EXEC_EXTRA_FLAGS=() + if use wayland; then + EXEC_EXTRA_FLAGS+=( "--ozone-platform-hint=auto" "--enable-wayland-ime" ) + fi + if use egl; then + EXEC_EXTRA_FLAGS+=( "--use-gl=egl" ) + fi + + sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \ + "${FILESDIR}/code-url-handler.desktop" \ + > "${T}/code-url-handler.desktop" || die + + sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \ + "${FILESDIR}/code.desktop" \ + > "${T}/code.desktop" || die + + domenu "${T}/code.desktop" + domenu "${T}/code-url-handler.desktop" + newicon "resources/app/resources/linux/code.png" "vscode.png" +} + +pkg_postinst() { + xdg_pkg_postinst + optfeature "desktop notifications" x11-libs/libnotify + optfeature "keyring support inside vscode" "virtual/secret-service" +} diff --git a/app-editors/vscode/vscode-1.90.0.ebuild b/app-editors/vscode/vscode-1.90.0.ebuild new file mode 100644 index 000000000000..f803279f6a02 --- /dev/null +++ b/app-editors/vscode/vscode-1.90.0.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop pax-utils xdg optfeature + +DESCRIPTION="Multiplatform Visual Studio Code from Microsoft" +HOMEPAGE="https://code.visualstudio.com" +SRC_URI=" + amd64? ( https://update.code.visualstudio.com/${PV}/linux-x64/stable -> ${P}-amd64.tar.gz ) + arm? ( https://update.code.visualstudio.com/${PV}/linux-armhf/stable -> ${P}-arm.tar.gz ) + arm64? ( https://update.code.visualstudio.com/${PV}/linux-arm64/stable -> ${P}-arm64.tar.gz ) +" +S="${WORKDIR}" + +LICENSE=" + Apache-2.0 + BSD + BSD-1 + BSD-2 + BSD-4 + CC-BY-4.0 + ISC + LGPL-2.1+ + Microsoft-vscode + MIT + MPL-2.0 + openssl + PYTHON + TextMate-bundle + Unlicense + UoI-NCSA + W3C +" +SLOT="0" +KEYWORDS="-* amd64 ~arm ~arm64" +IUSE="egl kerberos wayland" +RESTRICT="mirror strip bindist" + +RDEPEND=" + >=app-accessibility/at-spi2-core-2.46.0:2 + app-crypt/libsecret[crypt] + app-misc/ca-certificates + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + media-libs/alsa-lib + media-libs/libcanberra[gtk3] + media-libs/libglvnd + media-libs/mesa + net-misc/curl + sys-apps/dbus + sys-libs/zlib + sys-process/lsof + x11-libs/cairo + x11-libs/gtk+:3 + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libxkbcommon + x11-libs/libxkbfile + x11-libs/libXrandr + x11-libs/libXScrnSaver + x11-libs/pango + x11-misc/xdg-utils + kerberos? ( app-crypt/mit-krb5 ) +" + +QA_PREBUILT="*" + +src_install() { + if use amd64; then + cd "${WORKDIR}/VSCode-linux-x64" || die + elif use arm; then + cd "${WORKDIR}/VSCode-linux-armhf" || die + elif use arm64; then + cd "${WORKDIR}/VSCode-linux-arm64" || die + else + die "Visual Studio Code only supports amd64, arm and arm64" + fi + + # Cleanup + rm -r ./resources/app/ThirdPartyNotices.txt || die + + # Disable update server + sed -e "/updateUrl/d" -i ./resources/app/product.json || die + + if ! use kerberos; then + rm -r ./resources/app/node_modules.asar.unpacked/kerberos || die + fi + + # Install + pax-mark m code + mkdir -p "${ED}/opt/${PN}" || die + cp -r . "${ED}/opt/${PN}" || die + fperms 4711 /opt/${PN}/chrome-sandbox + + dosym -r "/opt/${PN}/bin/code" "usr/bin/vscode" + dosym -r "/opt/${PN}/bin/code" "usr/bin/code" + + local EXEC_EXTRA_FLAGS=() + if use wayland; then + EXEC_EXTRA_FLAGS+=( "--ozone-platform-hint=auto" "--enable-wayland-ime" ) + fi + if use egl; then + EXEC_EXTRA_FLAGS+=( "--use-gl=egl" ) + fi + + sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \ + "${FILESDIR}/code-url-handler.desktop" \ + > "${T}/code-url-handler.desktop" || die + + sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \ + "${FILESDIR}/code.desktop" \ + > "${T}/code.desktop" || die + + domenu "${T}/code.desktop" + domenu "${T}/code-url-handler.desktop" + newicon "resources/app/resources/linux/code.png" "vscode.png" +} + +pkg_postinst() { + xdg_pkg_postinst + optfeature "desktop notifications" x11-libs/libnotify + optfeature "keyring support inside vscode" "virtual/secret-service" +} diff --git a/app-editors/vscodium/Manifest b/app-editors/vscodium/Manifest index 5853d89ea0c6..7751f3683788 100644 --- a/app-editors/vscodium/Manifest +++ b/app-editors/vscodium/Manifest @@ -1,6 +1,6 @@ -DIST vscodium-1.88.1.24102-amd64.tar.gz 129277427 BLAKE2B 5b1584a4b1707e4616515cf242d097a09b83fde6326d2d6ca43bf4f321b299d930e0d3744603ee1a1b6affa72aeecb7a231423116a631aa10b2660efc1f72638 SHA512 e30b983f11ed7567c4e3f21fa9d3574cb60675ac0c1a1b4764c4eea8baa40099d54377a398ad13972f77aab72880789deefbf9f559a8773c62be4fafe954ae48 -DIST vscodium-1.88.1.24102-arm.tar.gz 118175032 BLAKE2B e1d53eecbfed89f48cbc65674261bb76470dbcac2c4a4a2e5a554beae42643d9a3b4a629872d9f220db0ac0fe7115385ce56663ef86b2d25d940b5ec000c8c21 SHA512 52ea09c2d761860febc1aa7bbb5edc0c6b6a2b8225e49d1c863de774bb6600cecc90bcdad25489d9eb99d4e2cf94f638d4482d539631126603ef5ffa8af1548d -DIST vscodium-1.88.1.24102-arm64.tar.gz 128995378 BLAKE2B 1a44737c071687a8126789caae088230c593a39bd49d915fc5b65431a36ccb7685c2f0ddeab8cc7a090acb6264c2b7fac0d6b8fcd270f4ba2ddfd0e3f3c1e02d SHA512 7c9d4f2acf07474fff03d129a8c63a9e663cb0ad0dc9a88020ea04c616f0bbd50586d690e2f7b4ebce6e0dcb5fdae8d620ef566abb5af14e1f7d0b6cc30968b1 -DIST vscodium-1.88.1.24104-amd64.tar.gz 129280084 BLAKE2B 2d08d9008ef1c0f5890ddce171823cb6dd91b6b5cfdc4136783b8b97a50e7826e95b947b67bcdffb5900dea8718d20ccde6f46d73de295e48444790582ee7805 SHA512 0f7bfb93dabe29ae008d6bc8c571fa3fc7bc97b68eb5725a485dca283c019a7b9dd9ded5c55a9ce7e6ca58f48de1390a542068734acca1060b481cb1e3cb553c -DIST vscodium-1.88.1.24104-arm.tar.gz 118167766 BLAKE2B 3b992242adbb8271f7b647ebe2f36c3e3fb30539e69b921cbe981fe92c345f272b465123c4eb789e9e830b2517759deefa8d0bf0cd6ec75a72664a67c4499c53 SHA512 d8a63d8c78931937f487f35f3e4f56405b32d2813855c9752478639cb9abea374749cb22cad54bc5c395c6841032b4b42ce26b754161f91de9b1711ef1fdf1f1 -DIST vscodium-1.88.1.24104-arm64.tar.gz 128990828 BLAKE2B 4cc567c7c6923a171a133a3176a24855cf5162a35f7d4160812f403fc66367950ee5dad58c08ae3028038dec850af9f42ef542e8698e0bb38b9c45873b3bec74 SHA512 d1e59e057d8882878260630bbf8373445c7c2812068af501a4f883d521f6868866d78a87423f96e51273f8c3f76169dbc4ed408c4c9cf085768e74a0c2d9d092 +DIST vscodium-1.89.0.24127-amd64.tar.gz 129588745 BLAKE2B 2a372e364921e8e0376b21c04613b8db8bd58deb92382a27bf77e160ec981681774d922c40b64356ac49069cd51f8f02472539f5b94f1d67172f1b7da076796f SHA512 e271cfa60971d19ef7925a3cf398a515cf8a57dbafbd91f67278b0e80dc28a7289424af6aaa91f5cffa813c1efa5c823d907ee7834059d3cd30c667208a68fbd +DIST vscodium-1.89.0.24127-arm.tar.gz 118486655 BLAKE2B c1d00399e9b2625ca6b388d4eba4e75359d94e2241d89170f4a20a8e823a3397c62f352171197e97b6cf7d266c39472117522d813f9eee566731167f9279900a SHA512 e74ae9b9ca35635fb87b470cf87793964384431b58c6748104eb4d483e39ba4c990547feb30acaf65ed05ac63d5f8cc9df197bb274e1042cbc92b16e3d0b9a40 +DIST vscodium-1.89.0.24127-arm64.tar.gz 129311961 BLAKE2B 0669a35ca2b8e3e2295f11834b88e13cafe68ef067d2740cca763fe9b801265cb2c8ebe9485c2bca9240d219e4dacb0d426ea4fbb5ed4bb8ecb8ab3a7b13bf37 SHA512 a731be7cb5ee77300e0c0cdbedbbb4dbf5bc381f87853b6e7929465abbbae397fbacb9fb71e2d411606cf690bf704598aff09d94f2592aefef6da6be9a109ee4 +DIST vscodium-1.89.1.24130-amd64.tar.gz 129589433 BLAKE2B 02e189604bf0648bf7c6ac6d4db48ed85214a4b1d704d5a0329cfbc31566756bead943534368052147c5131cf48ba8f485e7b62abcfe7cb479b64b869d78efc2 SHA512 0898504c6814d0d050377c54b4196a6a811c7763647863e8f13fa249166d18e5e62c627d78df3d1cafeb28fa83114e9b7c4aaab8209cc6df0451de5ae6f381f7 +DIST vscodium-1.89.1.24130-arm.tar.gz 118486356 BLAKE2B 07095524231691876678b69c417fefba37ae360b853040f0b84d9271062e6ad1e5618ea1d5ac5fa075792e1b220906ba81754ceff50e5b2bc44767d27271e091 SHA512 4429d789da85961acc381c561f09bbb9d96ec02e5a4d614822e4db612ba9bdc1ecb9b2fac186bc900031c3d9fe73c754201a8a232434120953808af07dc1408e +DIST vscodium-1.89.1.24130-arm64.tar.gz 129314458 BLAKE2B 38e9d8ab765d726217a5b980f89d54d961d5a2d819b918a3354db789bd56e7c5b6c2ee04fa43fd73e234b4c5a13e8a37ce600d69352cba7c21ce76ce509e2bf9 SHA512 0b89ebfc53c6c7f8dea3af0299898b421e08701877ee0a739b72071a82f55d886e122ba63d3abbb1219b93a9af6853b1722cd42cd287c22379724b223f646227 diff --git a/app-editors/vscodium/vscodium-1.88.1.24102.ebuild b/app-editors/vscodium/vscodium-1.89.0.24127.ebuild index e22d9d5645b8..e22d9d5645b8 100644 --- a/app-editors/vscodium/vscodium-1.88.1.24102.ebuild +++ b/app-editors/vscodium/vscodium-1.89.0.24127.ebuild diff --git a/app-editors/vscodium/vscodium-1.88.1.24104.ebuild b/app-editors/vscodium/vscodium-1.89.1.24130.ebuild index e22d9d5645b8..e22d9d5645b8 100644 --- a/app-editors/vscodium/vscodium-1.88.1.24104.ebuild +++ b/app-editors/vscodium/vscodium-1.89.1.24130.ebuild diff --git a/app-editors/wxhexeditor/metadata.xml b/app-editors/wxhexeditor/metadata.xml index 3e5da8810f40..f5de54f05a07 100644 --- a/app-editors/wxhexeditor/metadata.xml +++ b/app-editors/wxhexeditor/metadata.xml @@ -7,5 +7,6 @@ </maintainer> <upstream> <remote-id type="sourceforge">wxhexeditor</remote-id> + <remote-id type="github">EUA/wxHexEditor</remote-id> </upstream> </pkgmetadata> diff --git a/app-editors/wxhexeditor/wxhexeditor-0.24-r1.ebuild b/app-editors/wxhexeditor/wxhexeditor-0.24-r2.ebuild index 6d3401c0390b..f37ea1296050 100644 --- a/app-editors/wxhexeditor/wxhexeditor-0.24-r1.ebuild +++ b/app-editors/wxhexeditor/wxhexeditor-0.24-r2.ebuild @@ -1,11 +1,11 @@ # Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 MY_PN="wxHexEditor" WX_GTK_VER=3.0-gtk3 -inherit toolchain-funcs wxwidgets +inherit flag-o-matic toolchain-funcs wxwidgets DESCRIPTION="A cross-platform hex editor designed specially for large files" HOMEPAGE="https://github.com/EUA/wxHexEditor" @@ -14,7 +14,6 @@ SRC_URI="https://downloads.sourceforge.net/${PN}/${MY_PN}-v${PV}-src.tar.xz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~riscv ~x86" -IUSE="" DEPEND=" app-crypt/mhash @@ -40,4 +39,9 @@ pkg_setup() { src_prepare() { setup-wxwidgets default + + # -Werror=odr, -Werror=lto-type-mismatch + # https://bugs.gentoo.org/854414 + # https://github.com/EUA/wxHexEditor/issues/222 + filter-lto } diff --git a/app-editors/xmlcopyeditor/files/xmlcopyeditor-1.3.1.0-libxml2-2.12.patch b/app-editors/xmlcopyeditor/files/xmlcopyeditor-1.3.1.0-libxml2-2.12.patch new file mode 100644 index 000000000000..c3036584524c --- /dev/null +++ b/app-editors/xmlcopyeditor/files/xmlcopyeditor-1.3.1.0-libxml2-2.12.patch @@ -0,0 +1,20 @@ +--- a/src/wraplibxml.cpp ++++ b/src/wraplibxml.cpp +@@ -706,7 +706,7 @@ +
+ wxString WrapLibxml::getLastError()
+ {
+- xmlErrorPtr err = xmlGetLastError();
++ const xmlError *err = xmlGetLastError();
+
+ if ( !err )
+ return nonParserError;
+@@ -722,7 +722,7 @@ +
+ std::pair<int, int> WrapLibxml::getErrorPosition()
+ {
+- xmlErrorPtr err = xmlGetLastError();
++ const xmlError *err = xmlGetLastError();
+ if ( !err )
+ return std::make_pair ( 1, 1 );
+
diff --git a/app-editors/xmlcopyeditor/xmlcopyeditor-1.3.1.0-r1.ebuild b/app-editors/xmlcopyeditor/xmlcopyeditor-1.3.1.0-r1.ebuild new file mode 100644 index 000000000000..7c171ac605c7 --- /dev/null +++ b/app-editors/xmlcopyeditor/xmlcopyeditor-1.3.1.0-r1.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +WX_GTK_VER="3.2-gtk3" +inherit autotools wxwidgets xdg + +DESCRIPTION="XML Copy Editor is a fast, free, validating XML editor" +HOMEPAGE="https://xml-copy-editor.sourceforge.io" +SRC_URI="https://downloads.sourceforge.net/xml-copy-editor/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 -ppc ~x86 ~amd64-linux ~x86-linux" # -ppc due SSE2 requirement +IUSE="aqua nls" + +RDEPEND=" + app-text/enchant:2 + >=dev-libs/libxml2-2.12.5 + dev-libs/libxslt + dev-libs/xerces-c[cpu_flags_x86_sse2,icu] + dev-libs/libpcre2 + x11-libs/wxGTK:${WX_GTK_VER}[X] +" +DEPEND="${RDEPEND} + dev-libs/boost +" +BDEPEND=" + dev-util/intltool + virtual/pkgconfig +" + +PATCHES=( "${FILESDIR}"/${P}-libxml2-2.12.patch ) + +src_prepare() { + default + + # bug #440744 + sed -i -e 's/ -Wall -g -fexceptions//g' configure.ac || die + eautoreconf +} + +src_configure() { + setup-wxwidgets unicode + econf \ + --with-gtk=3.0 \ + --with-wx-config="${WX_CONFIG}" \ + $(use_enable nls) +} |