Gentoo Archives: gentoo-commits

From: "Ulrich Mueller (ulm)" <ulm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-editors/emacs: ChangeLog emacs-18.59-r8.ebuild emacs-18.59-r7.ebuild
Date: Fri, 23 Dec 2011 22:21:01
Message-Id: 20111223222050.1D1602004B@flycatcher.gentoo.org
1 ulm 11/12/23 22:20:50
2
3 Modified: ChangeLog
4 Added: emacs-18.59-r8.ebuild
5 Removed: emacs-18.59-r7.ebuild
6 Log:
7 Don't embed CHOST into symlinks in /usr/share.
8
9 (Portage version: 2.1.10.42/cvs/Linux x86_64)
10
11 Revision Changes Path
12 1.449 app-editors/emacs/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/ChangeLog?rev=1.449&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/ChangeLog?rev=1.449&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/ChangeLog?r1=1.448&r2=1.449
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v
21 retrieving revision 1.448
22 retrieving revision 1.449
23 diff -u -r1.448 -r1.449
24 --- ChangeLog 19 Dec 2011 21:07:55 -0000 1.448
25 +++ ChangeLog 23 Dec 2011 22:20:50 -0000 1.449
26 @@ -1,6 +1,12 @@
27 # ChangeLog for app-editors/emacs
28 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v 1.448 2011/12/19 21:07:55 ulm Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v 1.449 2011/12/23 22:20:50 ulm Exp $
31 +
32 +*emacs-18.59-r8 (23 Dec 2011)
33 +
34 + 23 Dec 2011; Ulrich Mueller <ulm@g.o> -emacs-18.59-r7.ebuild,
35 + +emacs-18.59-r8.ebuild:
36 + Don't embed CHOST into symlinks in /usr/share.
37
38 19 Dec 2011; Ulrich Mueller <ulm@g.o> emacs-18.59-r7.ebuild:
39 Updated patchset, including a fix for the LDFLAGS issue.
40
41
42
43 1.1 app-editors/emacs/emacs-18.59-r8.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/emacs-18.59-r8.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/emacs-18.59-r8.ebuild?rev=1.1&content-type=text/plain
47
48 Index: emacs-18.59-r8.ebuild
49 ===================================================================
50 # Copyright 1999-2011 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/emacs-18.59-r8.ebuild,v 1.1 2011/12/23 22:20:50 ulm Exp $
53
54 EAPI=4
55
56 inherit eutils toolchain-funcs flag-o-matic multilib
57
58 DESCRIPTION="The extensible self-documenting text editor"
59 HOMEPAGE="http://www.gnu.org/software/emacs/"
60 SRC_URI="mirror://gnu/old-gnu/emacs/${P}.tar.gz
61 ftp://ftp.splode.com/pub/users/friedman/emacs/${P}-linux22x-elf-glibc21.diff.gz
62 mirror://gentoo/${P}-patches-6.tar.bz2"
63
64 LICENSE="GPL-1 GPL-2 BSD" #as-is
65 SLOT="18"
66 KEYWORDS="~amd64 ~x86"
67 IUSE=""
68
69 RDEPEND="sys-libs/ncurses
70 >=app-admin/eselect-emacs-1.2
71 amd64? ( app-emulation/emul-linux-x86-baselibs )"
72 # X? ( x11-libs/libX11[-xcb] )
73 DEPEND="${RDEPEND}"
74
75 src_prepare() {
76 epatch "${WORKDIR}/${P}-linux22x-elf-glibc21.diff"
77 EPATCH_SUFFIX=patch epatch
78 }
79
80 src_configure() {
81 # autoconf? What's autoconf? We are living in 1992. ;-)
82 local arch
83 case ${ARCH} in
84 amd64) arch=intel386; multilib_toolchain_setup x86 ;;
85 x86) arch=intel386 ;;
86 *) die "Architecture ${ARCH} not yet supported" ;;
87 esac
88 local cmd="s/\"s-.*\.h\"/\"s-linux.h\"/;s/\"m-.*\.h\"/\"m-${arch}.h\"/"
89 #use X && cmd="${cmd};s/.*\(#define HAVE_X_WINDOWS\).*/\1/"
90 sed -e "${cmd}" src/config.h-dist >src/config.h || die
91
92 cat <<-END >src/paths.h
93 #define PATH_LOADSEARCH "/usr/share/emacs/${PV}/lisp"
94 #define PATH_EXEC "/usr/share/emacs/${PV}/etc"
95 #define PATH_LOCK "/var/lib/emacs/lock/"
96 #define PATH_SUPERLOCK "/var/lib/emacs/lock/!!!SuperLock!!!"
97 END
98
99 sed -i -e "s:/usr/lib/\([^ ]*\).o:/usr/$(get_libdir)/\1.o:g" \
100 src/s-linux.h || die
101
102 # -O3 and -finline-functions cause segmentation faults at run time.
103 filter-flags -finline-functions
104 replace-flags -O[3-9] -O2
105 strip-flags
106 }
107
108 src_compile() {
109 # Do not use the sandbox, or the dumped Emacs will be twice as large
110 export SANDBOX_ON=0
111 emake --jobs=1 \
112 CC="$(tc-getCC)" CFLAGS="${CFLAGS} -Demacs" \
113 LD="$(tc-getCC) -nostdlib" LDFLAGS="${LDFLAGS}"
114 }
115
116 src_install() {
117 local basedir="/usr/share/emacs/${PV}" i
118
119 dodir ${basedir}
120 dodir /usr/share/man/man1
121 emake --jobs=1 \
122 LIBDIR="${D}"${basedir} \
123 BINDIR="${D}"/usr/bin \
124 MANDIR="${D}"/usr/share/man/man1 \
125 install
126
127 rmdir "${D}"${basedir}/lock || die
128 find "${D}"${basedir} -type f \( -name "*.c" -o -name ChangeLog \
129 -o -name COPYING ! -path "*/etc/COPYING" \) -exec rm "{}" + || die
130 fperms -R go-w ${basedir}
131
132 # remove duplicate DOC file
133 rm "${D}"${basedir}/etc/DOC || die
134
135 # move executables to the correct place
136 mv "${D}"/usr/bin/emacs{,-${SLOT}} || die
137 for i in etags ctags emacsclient; do
138 mv "${D}"/usr/bin/${i}{,-emacs-${SLOT}} || die
139 rm "${D}"${basedir}/etc/${i} || die
140 done
141
142 dodir /usr/libexec/emacs/${PV}
143 for i in wakeup digest-doc sorted-doc movemail cvtmail fakemail \
144 yow env server
145 do
146 mv "${D}"${basedir}/etc/${i} "${D}"/usr/libexec/emacs/${PV}/${i} || die
147 dosym ../../../../libexec/emacs/${PV}/${i} ${basedir}/etc/${i}
148 done
149 for i in test-distrib make-docfile; do
150 rm "${D}"${basedir}/etc/${i} || die
151 done
152
153 # move man page
154 mv "${D}"/usr/share/man/man1/emacs{,-emacs-${SLOT}}.1 || die
155
156 # move Info files
157 dodir /usr/share/info
158 mv "${D}"${basedir}/info "${D}"/usr/share/info/emacs-${SLOT} || die
159 dosym ../../info/emacs-${SLOT} "${basedir}"/info
160 docompress -x /usr/share/info
161
162 # move Info dir to avoid collisions with the dir file generated by portage
163 mv "${D}"/usr/share/info/emacs-${SLOT}/dir{,.orig} || die
164 touch "${D}"/usr/share/info/emacs-${SLOT}/.keepinfodir
165
166 dodir /var/lib/emacs
167 diropts -m0777
168 keepdir /var/lib/emacs/lock
169
170 dodoc README PROBLEMS
171 }
172
173 pkg_preinst() {
174 # move Info dir file to correct name
175 mv "${D}"/usr/share/info/emacs-${SLOT}/dir{.orig,} || die
176
177 # remove symlink and directory installed by -r6 and earlier
178 if [[ -L "${ROOT}"/usr/share/info/emacs-${SLOT} ]]; then
179 ewarn "Removing old symlink /usr/share/info/emacs-${SLOT}"
180 rm "${ROOT}"/usr/share/info/emacs-${SLOT} || die
181 fi
182 if [[ -d "${ROOT}"/usr/share/emacs/${PV}/info \
183 && ! -L "${ROOT}"/usr/share/emacs/${PV}/info ]]; then
184 ewarn "Removing old directory /usr/share/emacs/${PV}/info"
185 rm -r "${ROOT}"/usr/share/emacs/${PV}/info || die
186 fi
187 }
188
189 pkg_postinst() {
190 eselect emacs update ifunset
191 }
192
193 pkg_postrm() {
194 eselect emacs update ifunset
195 }