summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortron <tron@pkgsrc.org>2012-10-05 13:56:46 +0000
committertron <tron@pkgsrc.org>2012-10-05 13:56:46 +0000
commit7f594b1f771804be082d0f45a3801542c48ec921 (patch)
treef536643394bf34c0a732b081b634554078d24fb1
parent749ab240ee5036908ff5099edc2002aaf0ea3298 (diff)
downloadpkgsrc-7f594b1f771804be082d0f45a3801542c48ec921.tar.gz
Pullup ticket #3932 - requested by marino
editors/emacs24: build fix Revisions pulled up: - editors/emacs24/distinfo 1.6 - editors/emacs24/patches/patch-aa 1.3 - editors/emacs24/patches/patch-ab 1.3 - editors/emacs24/patches/patch-ad 1.2 - editors/emacs24/patches/patch-lisp_files.el deleted --- Module Name: pkgsrc Committed By: marino Date: Wed Oct 3 21:32:43 UTC 2012 Modified Files: pkgsrc/editors/emacs24: distinfo pkgsrc/editors/emacs24/patches: patch-aa patch-ab patch-ad Removed Files: pkgsrc/editors/emacs24/patches: patch-lisp_files.el Log Message: editors/emacs24: Fix DragonFly build In order to fix the build on DragonFly, the locations of the crt files had to be defined. This was tricky as DragonFly has two base compilers so gcc --print-libgcc-file-name was used to determine the path of the crt files. Also patch-iisp_files.el was removed. It was removed from distinfo 5 weeks ago, but the patch itself was left in place causing "patch ignored" warnings.
-rw-r--r--editors/emacs24/distinfo8
-rw-r--r--editors/emacs24/patches/patch-aa39
-rw-r--r--editors/emacs24/patches/patch-ab62
-rw-r--r--editors/emacs24/patches/patch-ad6
-rw-r--r--editors/emacs24/patches/patch-lisp_files.el37
5 files changed, 100 insertions, 52 deletions
diff --git a/editors/emacs24/distinfo b/editors/emacs24/distinfo
index 0f427b0e7ee..493a2d76f3b 100644
--- a/editors/emacs24/distinfo
+++ b/editors/emacs24/distinfo
@@ -1,9 +1,9 @@
-$NetBSD: distinfo,v 1.5 2012/08/28 00:55:52 mef Exp $
+$NetBSD: distinfo,v 1.5.2.1 2012/10/05 13:56:46 tron Exp $
SHA1 (emacs-24.2.tar.gz) = 5fc4fe7797f821f2021ac415a81f5f190c52c0b2
RMD160 (emacs-24.2.tar.gz) = 26f6c2b671ed7f160875d62e47c89afec085110f
Size (emacs-24.2.tar.gz) = 51471017 bytes
-SHA1 (patch-aa) = dc41270debcdeba46056590ff99e72e79bd04729
-SHA1 (patch-ab) = 3021afead5011aa864a2734eeb72136c36580fb2
-SHA1 (patch-ad) = adc347ccd6edeb6e7ad96eeb98d6ee64176fb143
+SHA1 (patch-aa) = e8e2e174a87c6d052af3fde2907f29f76d3554bd
+SHA1 (patch-ab) = ca3fb1ee6652f6a33758bc07cf93a7eeff2afcd2
+SHA1 (patch-ad) = 2dcb0f4b43c599d0c4af83b5f7e1f2797f96bdac
SHA1 (patch-ag) = 3e6ee4774189185af10eada9c935120491318313
diff --git a/editors/emacs24/patches/patch-aa b/editors/emacs24/patches/patch-aa
index a5717d73fe0..d1f2ba64c7c 100644
--- a/editors/emacs24/patches/patch-aa
+++ b/editors/emacs24/patches/patch-aa
@@ -1,8 +1,8 @@
-$NetBSD: patch-aa,v 1.2 2012/08/10 10:08:14 marino Exp $
+$NetBSD: patch-aa,v 1.2.2.1 2012/10/05 13:56:46 tron Exp $
Add DragonFly
---- configure.in.orig 2012-06-01 06:17:13.000000000 +0000
+--- configure.in.orig 2012-08-23 05:33:42.000000000 +0000
+++ configure.in
@@ -469,6 +469,14 @@ case "${canonical}" in
vax-*) machine=vax ;;
@@ -19,13 +19,44 @@ Add DragonFly
## OpenBSD ports
*-*-openbsd* )
-@@ -998,6 +1006,9 @@ case $opsys in
+@@ -999,6 +1007,11 @@ case $opsys in
LIB_MATH=
START_FILES='pre-crt0.o'
;;
+ dragonfly )
-+ LIB_STANDARD=-lc
++ # This base version is appended below
++ LIB_STANDARD='-lc $(CRT_DIR)/crtn.o'
++ START_FILES='$(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o'
+ ;;
freebsd )
LIB_STANDARD='-lgcc -lc -lgcc $(CRT_DIR)/crtend.o $(CRT_DIR)/crtn.o'
START_FILES='pre-crt0.o $(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o $(CRT_DIR)/crtbegin.o'
+@@ -1095,6 +1108,28 @@ fi # crt_fi
+ AC_SUBST(CRT_DIR)
+
+ case $opsys in
++ dragonfly )
++ if test "x${GCC}" = xyes ; then
++ libgcc_file=`$CC --print-libgcc-file-name 2>/dev/null`
++ case "$libgcc_file" in
++ */*)
++ crt_gcc_subdir=`AS_DIRNAME(["$libgcc_file"])`
++ ;;
++ *)
++ AC_MSG_ERROR([Cannot determine CRT $CC subdirectory.])
++ ;;
++ esac
++ for f in crtbegin.o crtend.o; do
++ if test ! -f $crt_gcc_subdir/$f; then
++ AC_MSG_ERROR([Required file not found: $f])
++ fi
++ done
++ LIB_STANDARD="$crt_gcc_subdir/crtend.o $LIB_STANDARD"
++ START_FILES="$START_FILES $crt_gcc_subdir/crtbegin.o"
++ else
++ AC_MSG_WARN([Correct CRT file list unknown for ${CC}.])
++ fi
++ ;;
+ netbsd | openbsd )
+ if test -f $CRT_DIR/crti.o; then
+
diff --git a/editors/emacs24/patches/patch-ab b/editors/emacs24/patches/patch-ab
index feb3bc923c7..5dbc02fb41e 100644
--- a/editors/emacs24/patches/patch-ab
+++ b/editors/emacs24/patches/patch-ab
@@ -1,8 +1,8 @@
-$NetBSD: patch-ab,v 1.2 2012/08/10 10:08:14 marino Exp $
+$NetBSD: patch-ab,v 1.2.2.1 2012/10/05 13:56:47 tron Exp $
Add DragonFly
---- configure.orig 2012-06-10 07:29:35.000000000 +0000
+--- configure.orig 2012-08-23 06:37:10.000000000 +0000
+++ configure
@@ -4476,6 +4476,15 @@ case "${canonical}" in
esac
@@ -20,13 +20,67 @@ Add DragonFly
## OpenBSD ports
*-*-openbsd* )
opsys=openbsd
-@@ -8088,6 +8097,9 @@ case $opsys in
+@@ -8095,6 +8104,11 @@ case $opsys in
LIB_MATH=
START_FILES='pre-crt0.o'
;;
+ dragonfly )
-+ LIB_STANDARD=-lc
++ # This base version is appended below
++ LIB_STANDARD='-lc $(CRT_DIR)/crtn.o'
++ START_FILES='$(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o'
+ ;;
freebsd )
LIB_STANDARD='-lgcc -lc -lgcc $(CRT_DIR)/crtend.o $(CRT_DIR)/crtn.o'
START_FILES='pre-crt0.o $(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o $(CRT_DIR)/crtbegin.o'
+@@ -8209,6 +8223,51 @@ fi # crt_fi
+
+
+ case $opsys in
++ dragonfly )
++ if test "x${GCC}" = xyes ; then
++ libgcc_file=`$CC --print-libgcc-file-name 2>/dev/null`
++ case "$libgcc_file" in
++ */*)
++ crt_gcc_subdir=`$as_dirname -- "$libgcc_file" ||
++$as_expr X"$libgcc_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++ X"$libgcc_file" : 'X\(//\)[^/]' \| \
++ X"$libgcc_file" : 'X\(//\)$' \| \
++ X"$libgcc_file" : 'X\(/\)' \| . 2>/dev/null ||
++$as_echo X"$libgcc_file" |
++ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
++ s//\1/
++ q
++ }
++ /^X\(\/\/\)[^/].*/{
++ s//\1/
++ q
++ }
++ /^X\(\/\/\)$/{
++ s//\1/
++ q
++ }
++ /^X\(\/\).*/{
++ s//\1/
++ q
++ }
++ s/.*/./; q'`
++ ;;
++ *)
++ as_fn_error $? "Cannot determine CRT $CC subdirectory." "$LINENO" 5
++ ;;
++ esac
++ for f in crtbegin.o crtend.o; do
++ if test ! -f $crt_gcc_subdir/$f; then
++ as_fn_error $? "Required file not found: $f" "$LINENO" 5
++ fi
++ done
++ LIB_STANDARD="$crt_gcc_subdir/crtend.o $LIB_STANDARD"
++ START_FILES="$START_FILES $crt_gcc_subdir/crtbegin.o"
++ else
++ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Correct CRT file list unknown for ${CC}." >&5
++$as_echo "$as_me: WARNING: Correct CRT file list unknown for ${CC}." >&2;}
++ fi
++ ;;
+ netbsd | openbsd )
+ if test -f $CRT_DIR/crti.o; then
+
diff --git a/editors/emacs24/patches/patch-ad b/editors/emacs24/patches/patch-ad
index 0426395dac2..b0b2e8ca92b 100644
--- a/editors/emacs24/patches/patch-ad
+++ b/editors/emacs24/patches/patch-ad
@@ -1,11 +1,11 @@
-$NetBSD: patch-ad,v 1.1 2012/06/16 21:03:42 dholland Exp $
+$NetBSD: patch-ad,v 1.1.4.1 2012/10/05 13:56:47 tron Exp $
This will sometimes help to avoid Segmentation Fault at
build time
---- lisp/cus-dep.el.orig 2010-04-03 22:26:07.000000000 +0000
+--- lisp/cus-dep.el.orig 2012-08-23 05:33:42.000000000 +0000
+++ lisp/cus-dep.el
-@@ -59,6 +59,7 @@ Usage: emacs -batch -l ./cus-dep.el -f c
+@@ -62,6 +62,7 @@ Usage: emacs -batch -l ./cus-dep.el -f c
(unless (or (string-match custom-dependencies-no-scan-regexp file)
(string-match preloaded file)
(not (file-exists-p file)))
diff --git a/editors/emacs24/patches/patch-lisp_files.el b/editors/emacs24/patches/patch-lisp_files.el
deleted file mode 100644
index a08377916e9..00000000000
--- a/editors/emacs24/patches/patch-lisp_files.el
+++ /dev/null
@@ -1,37 +0,0 @@
-$NetBSD: patch-lisp_files.el,v 1.1 2012/08/13 06:39:06 wiz Exp $
-
-CVE-2012-3479:
-When the Emacs user option `enable-local-variables' is set to `:safe'
-(the default value is t), Emacs should automatically refuse to evaluate
-`eval' forms in file-local variable sections. Due to the bug, Emacs
-instead automatically evaluates such `eval' forms. Thus, if the user
-changes the value of `enable-local-variables' to `:safe', visiting a
-malicious file can cause automatic execution of arbitrary Emacs Lisp
-code with the permissions of the user.
-
-Bug tracker ref: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=12155
-
---- lisp/files.el.orig 2012-05-14 12:00:02.000000000 +0000
-+++ lisp/files.el
-@@ -3107,11 +3107,16 @@ DIR-NAME is the name of the associated d
- ;; Obey `enable-local-eval'.
- ((eq var 'eval)
- (when enable-local-eval
-- (push elt all-vars)
-- (or (eq enable-local-eval t)
-- (hack-one-local-variable-eval-safep (eval (quote val)))
-- (safe-local-variable-p var val)
-- (push elt unsafe-vars))))
-+ (let ((safe (or (hack-one-local-variable-eval-safep
-+ (eval (quote val)))
-+ ;; In case previously marked safe (bug#5636).
-+ (safe-local-variable-p var val))))
-+ ;; If not safe and e-l-v = :safe, ignore totally.
-+ (when (or safe (not (eq enable-local-variables :safe)))
-+ (push elt all-vars)
-+ (or (eq enable-local-eval t)
-+ safe
-+ (push elt unsafe-vars))))))
- ;; Ignore duplicates (except `mode') in the present list.
- ((and (assq var all-vars) (not (eq var 'mode))) nil)
- ;; Accept known-safe variables.