unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#22385: 24.5; Build failure with modules on OpenBSD
@ 2016-01-16 17:43 Joakim Jalap
  2016-01-17 16:22 ` Philipp Stephani
  2016-01-17 22:30 ` Paul Eggert
  0 siblings, 2 replies; 4+ messages in thread
From: Joakim Jalap @ 2016-01-16 17:43 UTC (permalink / raw)
  To: 22385

[-- Attachment #1: Type: text/plain, Size: 1186 bytes --]


Hello

I discovered a little problem while trying to build emacs-25 with modules on
OpenBSD-current. The problem is that an assertion fails because
HAVE_ATTRIBUTE_CLEANUP is not true, even though I'm using clang which does
support the cleanup attribute (I think).

This is because the test for whether CC supports that attribute
(m4/ax_gcc_var_attribute.m4 m4/ax_gcc_var_attribute.m4) only checks if there
were warnings issued and if so decides that the compiler has no support. But
OpenBSDs linker (I think it is) outputs the following warnings:

/usr/X11R6/lib/libX11.so.16.1: warning: warning: strcpy() is almost always misused, please use strlcpy()
/usr/X11R6/lib/libX11.so.16.1: warning: warning: strcat() is almost always misused, please use strlcat()
/usr/X11R6/lib/libX11.so.16.1: warning: warning: sprintf() is often misused, please use snprintf()

which are completely unrelated to lack of attribute support.

The attached fix allows me to build. It isn't meant as a real solution,
it's more to illustrate the problem.

I guess another way to go migt be to run this test with empty linker flags, but
I haven't tried that.

Either way, I hope this is of some use.

-- Joakim


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: openbsd-fix --]
[-- Type: text/x-patch, Size: 1240 bytes --]

diff --git m4/ax_gcc_var_attribute.m4 m4/ax_gcc_var_attribute.m4
index d12fce8..963af5e 100644
--- m4/ax_gcc_var_attribute.m4
+++ m4/ax_gcc_var_attribute.m4
@@ -55,6 +55,11 @@
 #serial 3
 
 AC_DEFUN([AX_GCC_VAR_ATTRIBUTE], [
+
+    dnl Temporarily make unknown attributes an error
+    OLDCFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS -Werror=attributes"
+
     AS_VAR_PUSHDEF([ac_var], [ax_cv_have_var_attribute_$1])
 
     AC_CACHE_CHECK([for __attribute__(($1))], [ac_var], [
@@ -124,15 +129,12 @@ AC_DEFUN([AX_GCC_VAR_ATTRIBUTE], [
                 []
             )])
             ],
-            dnl GCC doesn't exit with an error if an unknown attribute is
-            dnl provided but only outputs a warning, so accept the attribute
-            dnl only if no warning were issued.
-            [AS_IF([test -s conftest.err],
-                [AS_VAR_SET([ac_var], [no])],
-                [AS_VAR_SET([ac_var], [yes])])],
+            [AS_VAR_SET([ac_var], [yes])],
             [AS_VAR_SET([ac_var], [no])])
     ])
 
+    CFLAGS="$OLDCFLAGS"
+
     AS_IF([test yes = AS_VAR_GET([ac_var])],
         [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_VAR_ATTRIBUTE_$1), 1,
             [Define to 1 if the system has the `$1' variable attribute])], [])

[-- Attachment #3: Type: text/plain, Size: 20273 bytes --]



In GNU Emacs 24.5.1 (x86_64-unknown-openbsd, GTK+ Version 3.18.6)
 of 2015-12-09 on amd64.ports.openbsd.org
Windowing system distributor `The X.Org Foundation', version 11.0.11704000
Configured using:
 `configure --build=amd64-unknown-openbsd --without-sound
 --with-x-toolkit=gtk3 --prefix=/usr/local --sysconfdir=/etc
 --mandir=/usr/local/man --infodir=/usr/local/info --localstatedir=/var
 --disable-silent-rules --disable-gtk-doc 'CFLAGS=-O2 -pipe -fno-pie'
 CPPFLAGS=-I/usr/local/include 'LDFLAGS=-L/usr/local/lib -nopie''

Important settings:
  locale-coding-system: nil

Major mode: Org

Minor modes in effect:
  show-paren-mode: t
  global-linum-mode: t
  rich-minority-mode: t
  global-cwarn-mode: t
  global-git-commit-mode: t
  async-bytecomp-package-mode: t
  shell-dirtrack-mode: t
  global-semantic-idle-scheduler-mode: t
  global-semanticdb-minor-mode: t
  semantic-mode: t
  erc-notifications-mode: t
  erc-list-mode: t
  erc-menu-mode: t
  erc-autojoin-mode: t
  erc-ring-mode: t
  erc-networks-mode: t
  erc-pcomplete-mode: t
  erc-track-mode: t
  erc-match-mode: t
  erc-button-mode: t
  erc-fill-mode: t
  erc-stamp-mode: t
  erc-netsplit-mode: t
  erc-irccontrols-mode: t
  erc-noncommands-mode: t
  erc-move-to-prompt-mode: t
  erc-readonly-mode: t
  w3m-fb-mode: t
  global-hl-line-mode: t
  diff-auto-refine-mode: t
  global-company-mode: t
  company-mode: t
  TeX-PDF-mode: t
  TeX-source-correlate-mode: t
  flx-ido-mode: t
  ido-everywhere: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  global-auto-revert-mode: t
  projectile-global-mode: t
  projectile-mode: t
  tooltip-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  auto-fill-function: do-auto-fill
  transient-mark-mode: t

Recent messages:
 [2 times]
Buffer is read-only
(emacs gnus type)
Buffer is read-only
Describe-Function...
Making completion list...
Quit
Entering debugger...
Back to top level.
Making completion list... [3 times]
gnus-user-agent

Load-path shadows:
/home/joakim/.emacs.d/elpa/helm-20151106.2158/helm-multi-match hides /home/joakim/.emacs.d/elpa/helm-core-20151104.0/helm-multi-match
/home/joakim/.emacs.d/elpa/org-20151005/org-protocol hides /usr/local/share/emacs/24.5/lisp/org/org-protocol
/home/joakim/.emacs.d/elpa/org-20151005/org-pcomplete hides /usr/local/share/emacs/24.5/lisp/org/org-pcomplete
/home/joakim/.emacs.d/elpa/org-20151005/org-eshell hides /usr/local/share/emacs/24.5/lisp/org/org-eshell
/home/joakim/.emacs.d/elpa/org-20151005/org-element hides /usr/local/share/emacs/24.5/lisp/org/org-element
/home/joakim/.emacs.d/elpa/org-20151005/ob-plantuml hides /usr/local/share/emacs/24.5/lisp/org/ob-plantuml
/home/joakim/.emacs.d/elpa/org-20151005/ob-picolisp hides /usr/local/share/emacs/24.5/lisp/org/ob-picolisp
/home/joakim/.emacs.d/elpa/org-20151005/ob-maxima hides /usr/local/share/emacs/24.5/lisp/org/ob-maxima
/home/joakim/.emacs.d/elpa/org-20151005/ob-lilypond hides /usr/local/share/emacs/24.5/lisp/org/ob-lilypond
/home/joakim/.emacs.d/elpa/org-20151005/ob-ledger hides /usr/local/share/emacs/24.5/lisp/org/ob-ledger
/home/joakim/.emacs.d/elpa/org-20151005/ob-octave hides /usr/local/share/emacs/24.5/lisp/org/ob-octave
/home/joakim/.emacs.d/elpa/org-20151005/ob-lob hides /usr/local/share/emacs/24.5/lisp/org/ob-lob
/home/joakim/.emacs.d/elpa/org-20151005/org-inlinetask hides /usr/local/share/emacs/24.5/lisp/org/org-inlinetask
/home/joakim/.emacs.d/elpa/org-20151005/org-footnote hides /usr/local/share/emacs/24.5/lisp/org/org-footnote
/home/joakim/.emacs.d/elpa/org-20151005/ob-fortran hides /usr/local/share/emacs/24.5/lisp/org/ob-fortran
/home/joakim/.emacs.d/elpa/org-20151005/ob-dot hides /usr/local/share/emacs/24.5/lisp/org/ob-dot
/home/joakim/.emacs.d/elpa/org-20151005/ob-tangle hides /usr/local/share/emacs/24.5/lisp/org/ob-tangle
/home/joakim/.emacs.d/elpa/org-20151005/ob-css hides /usr/local/share/emacs/24.5/lisp/org/ob-css
/home/joakim/.emacs.d/elpa/org-20151005/ob-sql hides /usr/local/share/emacs/24.5/lisp/org/ob-sql
/home/joakim/.emacs.d/elpa/org-20151005/ob-core hides /usr/local/share/emacs/24.5/lisp/org/ob-core
/home/joakim/.emacs.d/elpa/org-20151005/org-datetree hides /usr/local/share/emacs/24.5/lisp/org/org-datetree
/home/joakim/.emacs.d/elpa/org-20151005/org-capture hides /usr/local/share/emacs/24.5/lisp/org/org-capture
/home/joakim/.emacs.d/elpa/org-20151005/ob-python hides /usr/local/share/emacs/24.5/lisp/org/ob-python
/home/joakim/.emacs.d/elpa/org-20151005/ox-org hides /usr/local/share/emacs/24.5/lisp/org/ox-org
/home/joakim/.emacs.d/elpa/org-20151005/org-plot hides /usr/local/share/emacs/24.5/lisp/org/org-plot
/home/joakim/.emacs.d/elpa/org-20151005/ob-clojure hides /usr/local/share/emacs/24.5/lisp/org/ob-clojure
/home/joakim/.emacs.d/elpa/org-20151005/ob-C hides /usr/local/share/emacs/24.5/lisp/org/ob-C
/home/joakim/.emacs.d/elpa/org-20151005/org-irc hides /usr/local/share/emacs/24.5/lisp/org/org-irc
/home/joakim/.emacs.d/elpa/org-20151005/ox-html hides /usr/local/share/emacs/24.5/lisp/org/ox-html
/home/joakim/.emacs.d/elpa/org-20151005/ob-org hides /usr/local/share/emacs/24.5/lisp/org/ob-org
/home/joakim/.emacs.d/elpa/org-20151005/org-id hides /usr/local/share/emacs/24.5/lisp/org/org-id
/home/joakim/.emacs.d/elpa/org-20151005/org-w3m hides /usr/local/share/emacs/24.5/lisp/org/org-w3m
/home/joakim/.emacs.d/elpa/org-20151005/org-macro hides /usr/local/share/emacs/24.5/lisp/org/org-macro
/home/joakim/.emacs.d/elpa/org-20151005/ox-md hides /usr/local/share/emacs/24.5/lisp/org/ox-md
/home/joakim/.emacs.d/elpa/org-20151005/org-src hides /usr/local/share/emacs/24.5/lisp/org/org-src
/home/joakim/.emacs.d/elpa/org-20151005/org-docview hides /usr/local/share/emacs/24.5/lisp/org/org-docview
/home/joakim/.emacs.d/elpa/org-20151005/ob-awk hides /usr/local/share/emacs/24.5/lisp/org/ob-awk
/home/joakim/.emacs.d/elpa/org-20151005/ob-scala hides /usr/local/share/emacs/24.5/lisp/org/ob-scala
/home/joakim/.emacs.d/elpa/org-20151005/org-attach hides /usr/local/share/emacs/24.5/lisp/org/org-attach
/home/joakim/.emacs.d/elpa/org-20151005/ob-table hides /usr/local/share/emacs/24.5/lisp/org/ob-table
/home/joakim/.emacs.d/elpa/org-20151005/org-feed hides /usr/local/share/emacs/24.5/lisp/org/org-feed
/home/joakim/.emacs.d/elpa/org-20151005/org-compat hides /usr/local/share/emacs/24.5/lisp/org/org-compat
/home/joakim/.emacs.d/elpa/org-20151005/ob-ocaml hides /usr/local/share/emacs/24.5/lisp/org/ob-ocaml
/home/joakim/.emacs.d/elpa/org-20151005/ob-scheme hides /usr/local/share/emacs/24.5/lisp/org/ob-scheme
/home/joakim/.emacs.d/elpa/org-20151005/org-bbdb hides /usr/local/share/emacs/24.5/lisp/org/org-bbdb
/home/joakim/.emacs.d/elpa/org-20151005/ob-calc hides /usr/local/share/emacs/24.5/lisp/org/ob-calc
/home/joakim/.emacs.d/elpa/org-20151005/org-ctags hides /usr/local/share/emacs/24.5/lisp/org/org-ctags
/home/joakim/.emacs.d/elpa/org-20151005/org-archive hides /usr/local/share/emacs/24.5/lisp/org/org-archive
/home/joakim/.emacs.d/elpa/org-20151005/org-entities hides /usr/local/share/emacs/24.5/lisp/org/org-entities
/home/joakim/.emacs.d/elpa/org-20151005/ob-comint hides /usr/local/share/emacs/24.5/lisp/org/ob-comint
/home/joakim/.emacs.d/elpa/org-20151005/ob-matlab hides /usr/local/share/emacs/24.5/lisp/org/ob-matlab
/home/joakim/.emacs.d/elpa/org-20151005/org-mhe hides /usr/local/share/emacs/24.5/lisp/org/org-mhe
/home/joakim/.emacs.d/elpa/org-20151005/ob-lisp hides /usr/local/share/emacs/24.5/lisp/org/ob-lisp
/home/joakim/.emacs.d/elpa/org-20151005/ox-beamer hides /usr/local/share/emacs/24.5/lisp/org/ox-beamer
/home/joakim/.emacs.d/elpa/org-20151005/org-rmail hides /usr/local/share/emacs/24.5/lisp/org/org-rmail
/home/joakim/.emacs.d/elpa/org-20151005/org-colview hides /usr/local/share/emacs/24.5/lisp/org/org-colview
/home/joakim/.emacs.d/elpa/org-20151005/org-gnus hides /usr/local/share/emacs/24.5/lisp/org/org-gnus
/home/joakim/.emacs.d/elpa/org-20151005/ob-makefile hides /usr/local/share/emacs/24.5/lisp/org/ob-makefile
/home/joakim/.emacs.d/elpa/org-20151005/ob-emacs-lisp hides /usr/local/share/emacs/24.5/lisp/org/ob-emacs-lisp
/home/joakim/.emacs.d/elpa/org-20151005/ob-shen hides /usr/local/share/emacs/24.5/lisp/org/ob-shen
/home/joakim/.emacs.d/elpa/org-20151005/ob-haskell hides /usr/local/share/emacs/24.5/lisp/org/ob-haskell
/home/joakim/.emacs.d/elpa/org-20151005/ob-java hides /usr/local/share/emacs/24.5/lisp/org/ob-java
/home/joakim/.emacs.d/elpa/org-20151005/ob-sqlite hides /usr/local/share/emacs/24.5/lisp/org/ob-sqlite
/home/joakim/.emacs.d/elpa/org-20151005/ob-latex hides /usr/local/share/emacs/24.5/lisp/org/ob-latex
/home/joakim/.emacs.d/elpa/org-20151005/ob-mscgen hides /usr/local/share/emacs/24.5/lisp/org/ob-mscgen
/home/joakim/.emacs.d/elpa/org-20151005/ob-screen hides /usr/local/share/emacs/24.5/lisp/org/ob-screen
/home/joakim/.emacs.d/elpa/org-20151005/org-macs hides /usr/local/share/emacs/24.5/lisp/org/org-macs
/home/joakim/.emacs.d/elpa/org-20151005/org-timer hides /usr/local/share/emacs/24.5/lisp/org/org-timer
/home/joakim/.emacs.d/elpa/org-20151005/ob-ref hides /usr/local/share/emacs/24.5/lisp/org/ob-ref
/home/joakim/.emacs.d/elpa/org-20151005/ob-perl hides /usr/local/share/emacs/24.5/lisp/org/ob-perl
/home/joakim/.emacs.d/elpa/org-20151005/org-faces hides /usr/local/share/emacs/24.5/lisp/org/org-faces
/home/joakim/.emacs.d/elpa/org-20151005/org-table hides /usr/local/share/emacs/24.5/lisp/org/org-table
/home/joakim/.emacs.d/elpa/org-20151005/ob-gnuplot hides /usr/local/share/emacs/24.5/lisp/org/ob-gnuplot
/home/joakim/.emacs.d/elpa/org-20151005/ob-eval hides /usr/local/share/emacs/24.5/lisp/org/ob-eval
/home/joakim/.emacs.d/elpa/org-20151005/ox-latex hides /usr/local/share/emacs/24.5/lisp/org/ox-latex
/home/joakim/.emacs.d/elpa/org-20151005/ob-io hides /usr/local/share/emacs/24.5/lisp/org/ob-io
/home/joakim/.emacs.d/elpa/org-20151005/ox-man hides /usr/local/share/emacs/24.5/lisp/org/ox-man
/home/joakim/.emacs.d/elpa/org-20151005/org-habit hides /usr/local/share/emacs/24.5/lisp/org/org-habit
/home/joakim/.emacs.d/elpa/org-20151005/org-crypt hides /usr/local/share/emacs/24.5/lisp/org/org-crypt
/home/joakim/.emacs.d/elpa/org-20151005/ob-asymptote hides /usr/local/share/emacs/24.5/lisp/org/ob-asymptote
/home/joakim/.emacs.d/elpa/org-20151005/org-mouse hides /usr/local/share/emacs/24.5/lisp/org/org-mouse
/home/joakim/.emacs.d/elpa/org-20151005/org-version hides /usr/local/share/emacs/24.5/lisp/org/org-version
/home/joakim/.emacs.d/elpa/org-20151005/org-indent hides /usr/local/share/emacs/24.5/lisp/org/org-indent
/home/joakim/.emacs.d/elpa/org-20151005/ox-texinfo hides /usr/local/share/emacs/24.5/lisp/org/ox-texinfo
/home/joakim/.emacs.d/elpa/org-20151005/org-mobile hides /usr/local/share/emacs/24.5/lisp/org/org-mobile
/home/joakim/.emacs.d/elpa/org-20151005/ob-exp hides /usr/local/share/emacs/24.5/lisp/org/ob-exp
/home/joakim/.emacs.d/elpa/org-20151005/ox-odt hides /usr/local/share/emacs/24.5/lisp/org/ox-odt
/home/joakim/.emacs.d/elpa/org-20151005/ob-keys hides /usr/local/share/emacs/24.5/lisp/org/ob-keys
/home/joakim/.emacs.d/elpa/org-20151005/ox-ascii hides /usr/local/share/emacs/24.5/lisp/org/ox-ascii
/home/joakim/.emacs.d/elpa/org-20151005/org-agenda hides /usr/local/share/emacs/24.5/lisp/org/org-agenda
/home/joakim/.emacs.d/elpa/org-20151005/ox-publish hides /usr/local/share/emacs/24.5/lisp/org/ox-publish
/home/joakim/.emacs.d/elpa/org-20151005/ob-js hides /usr/local/share/emacs/24.5/lisp/org/ob-js
/home/joakim/.emacs.d/elpa/org-20151005/ob-R hides /usr/local/share/emacs/24.5/lisp/org/ob-R
/home/joakim/.emacs.d/elpa/org-20151005/org hides /usr/local/share/emacs/24.5/lisp/org/org
/home/joakim/.emacs.d/elpa/org-20151005/org-list hides /usr/local/share/emacs/24.5/lisp/org/org-list
/home/joakim/.emacs.d/elpa/org-20151005/org-install hides /usr/local/share/emacs/24.5/lisp/org/org-install
/home/joakim/.emacs.d/elpa/org-20151005/ob-ditaa hides /usr/local/share/emacs/24.5/lisp/org/ob-ditaa
/home/joakim/.emacs.d/elpa/org-20151005/org-info hides /usr/local/share/emacs/24.5/lisp/org/org-info
/home/joakim/.emacs.d/elpa/org-20151005/ob hides /usr/local/share/emacs/24.5/lisp/org/ob
/home/joakim/.emacs.d/elpa/org-20151005/ox-icalendar hides /usr/local/share/emacs/24.5/lisp/org/ox-icalendar
/home/joakim/.emacs.d/elpa/org-20151005/ob-sass hides /usr/local/share/emacs/24.5/lisp/org/ob-sass
/home/joakim/.emacs.d/elpa/org-20151005/org-loaddefs hides /usr/local/share/emacs/24.5/lisp/org/org-loaddefs
/home/joakim/.emacs.d/elpa/org-20151005/ox hides /usr/local/share/emacs/24.5/lisp/org/ox
/home/joakim/.emacs.d/elpa/org-20151005/org-clock hides /usr/local/share/emacs/24.5/lisp/org/org-clock
/home/joakim/.emacs.d/elpa/org-20151005/ob-ruby hides /usr/local/share/emacs/24.5/lisp/org/ob-ruby
/home/joakim/.emacs.d/elpa/org-20151005/org-bibtex hides /usr/local/share/emacs/24.5/lisp/org/org-bibtex
/home/joakim/.emacs.d/elpa/emms-20150810.832/tq hides /usr/local/share/emacs/24.5/lisp/emacs-lisp/tq

Features:
(shadow bbdb-message mail-extr gnus-msg gnus-art mm-uu mml2015 debug
org-rmail org-mhe org-irc org-info org-gnus org-docview org-bibtex
bibtex org-bbdb org-element org-w3m ispell emacsbug mule-util view
eieio-opt whitespace m4-mode smex sh-script smie executable misearch
multi-isearch vc-git solarized-dark-theme solarized company-files
company-oddmuse company-keywords company-etags company-gtags
company-dabbrev-code company-dabbrev company-capf company-cmake
company-xcode company-clang company-semantic company-eclim company-css
company-nxml company-bbdb emms-mode-line emms-info-ogginfo
emms-info-mp3info emms-player-vlc emms-player-mplayer emms-browser sort
emms-playlist-sort emms-playlist-mode emms-last-played emms-player-mpd
emms-url emms-cache emms-info later-do tq emms-source-playlist
emms-source-file locate emms-player-simple emms-setup emms emms-compat
paren linum-off linum rich-minority f90 fortran cus-edit cus-start
cus-load py-autopep8 company-anaconda anaconda-mode pythonic f python
cwarn company-irony irony-completion irony-snippet irony company-rtags
company-template rtags popup repeat bookmark function-args
semantic-directory semantic/ia etags srefactor subr-x srefactor-ui
recentf tree-widget srecode/semantic semantic/senator semantic/decorate
pulse srecode/insert srecode/filters srecode/args ede/speedbar ede/files
ede ede/base ede/auto ede/source eieio-speedbar speedbar sb-image dframe
eieio-custom srecode/find srecode/map srecode/ctxt srecode/compile
srecode/dictionary srecode/table srecode semantic/doc semantic/bovine/c
hideif semantic/bovine/c-by semantic/lex-spp semantic/bovine/gcc
semantic/dep semantic/bovine semantic/analyze/refs semantic/analyze
semantic/sort semantic/scope semantic/analyze/fcn cc-mode cc-fonts
cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs
dsvn vc vc-dispatcher magit-blame magit-stash magit-bisect magit-remote
magit-commit magit-sequence magit magit-apply magit-wip magit-log
magit-diff smerge-mode magit-core magit-process magit-popup magit-mode
magit-git magit-section magit-utils git-commit log-edit pcvs-util
add-log with-editor async-bytecomp async tramp-sh tramp tramp-compat
tramp-loaddefs trampver shell comment-dwim-2 origami origami-parsers
semantic/idle semantic/format ezimage semantic/tag-ls semantic/find
semantic/ctxt inversion semantic/db-global semantic/symref/global
semantic/symref semantic/db-find semantic/db-ref cedet-global
semantic/db-mode semantic/db eieio-base semantic/util-modes
semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local
cedet lice mentor xml-rpc url-http tls url-auth url-gw url-scgi
google-translate-smooth-ui google-translate google-translate-default-ui
google-translate-core-ui google-translate-core elfeed-show elfeed-db
elfeed-lib avl-tree elfeed-search elfeed url-queue xml-query
erc-desktop-notifications notifications erc-list erc-menu erc-join
erc-ring erc-networks erc-pcomplete erc-track erc-match erc-button
erc-fill erc-stamp erc-netsplit erc-goodies erc erc-backend erc-compat
gnutls weechat-complete weechat-button weechat weechat-color rx
weechat-relay bindat weechat-core s ucs-normalize conkeror-minor-mode
w3m-lnum w3m-search w3m doc-view jka-compr image-mode w3m-hist w3m-fb
bookmark-w3m w3m-ems w3m-ccl ccl w3m-favicon w3m-image w3m-proc w3m-util
eww-lnum eww mm-url url url-proxy url-privacy url-expand url-methods
url-history url-cookie url-domsuf url-util shr browse-url bbdb-mua
bbdb-com bbdb bbdb-site timezone notmuch hl-line notmuch-message
notmuch-maildir-fcc notmuch-hello notmuch-tree notmuch-show
notmuch-print notmuch-crypto notmuch-mua notmuch-address notmuch-company
notmuch-parser notmuch-wash diff-mode coolj notmuch-query goto-addr
icalendar diary-lib diary-loaddefs notmuch-tag notmuch-lib mm-view
mml-smime smime dig mailcap nnir gnus-sum gnus-group gnus-undo nnmail
mail-source nnoo mbsync smtpmail sendmail gnus-sync gnus-start gnus-spec
gnus-int gnus-range message idna rfc822 mml mml-sec mm-decode mm-bodies
mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev
gmm-utils mailheader gnus-win json gnus gnus-ems nnheader mail-utils
wid-edit company-math math-symbol-lists company-auctex yasnippet company
pcase latex tex-style tex dbus xml crm swiper ivy delsel ffap url-parse
auth-source gnus-util mm-util mail-prsvr password-cache url-vars idomenu
imenu ace-link ace-window em-smart esh-var esh-io esh-cmd esh-opt
esh-ext esh-proc esh-arg eldoc esh-groups eshell esh-module esh-mode
esh-util multi-term term disp-table ehelp flx-ido flx ido avy-zap avy
move-text undo-tree diff hydra lv multiple-cursors
mc-hide-unmatched-lines-mode mc-separate-operations
rectangular-region-mode mc-mark-pop mc-mark-more mc-cycle-cursors
mc-edit-lines multiple-cursors-core rect org-table misc
programmers-dvorak quail edmacro kmacro dired+ image-dired image-file
dired-aux dired-x server pinentry autorevert filenotify projectile grep
compile ibuf-ext ibuffer dash thingatpt ignoramus el-get
el-get-autoloading el-get-list-packages el-get-dependencies el-get-build
el-get-status pp el-get-methods el-get-fossil el-get-svn el-get-pacman
el-get-github-zip el-get-github-tar el-get-http-zip el-get-http-tar
el-get-hg el-get-go el-get-git-svn el-get-fink el-get-emacswiki
el-get-http el-get-notify help-mode el-get-emacsmirror el-get-github
el-get-git el-get-elpa el-get-darcs el-get-cvs el-get-bzr el-get-brew
el-get-builtin el-get-apt-get el-get-recipes el-get-byte-compile
el-get-custom el-get-core autoload lisp-mnt dired finder-inf org advice
org-macro org-footnote org-pcomplete pcomplete org-list org-faces
org-entities time-date noutline outline easy-mmode org-version
ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys
ob-comint comint ansi-color ring ob-core ob-eval org-compat org-macs
org-loaddefs format-spec find-func cal-menu calendar cal-loaddefs
tex-site eieio byte-opt bytecomp byte-compile cl-extra cconv eieio-core
help-fns cl-macs cl gv cl-loaddefs cl-lib info easymenu package
epg-config tooltip electric uniquify ediff-hook vc-hooks lisp-float-type
mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list newcomment lisp-mode prog-mode register page menu-bar
rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax
facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak
czech european ethiopic indian cyrillic chinese case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button
faces cus-face macroexp files text-properties overlay sha1 md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind gfilenotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty emacs)

Memory information:
((conses 16 1027147 421321)
 (symbols 48 76509 1)
 (miscs 40 863 1582)
 (strings 32 207041 118087)
 (string-bytes 1 6146562)
 (vectors 16 147798)
 (vector-slots 8 3193259 446740)
 (floats 8 17152 16902)
 (intervals 56 10608 3318)
 (buffers 960 31))

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* bug#22385: 24.5; Build failure with modules on OpenBSD
  2016-01-16 17:43 bug#22385: 24.5; Build failure with modules on OpenBSD Joakim Jalap
@ 2016-01-17 16:22 ` Philipp Stephani
  2016-01-17 22:30 ` Paul Eggert
  1 sibling, 0 replies; 4+ messages in thread
From: Philipp Stephani @ 2016-01-17 16:22 UTC (permalink / raw)
  To: Joakim Jalap, 22385

[-- Attachment #1: Type: text/plain, Size: 22823 bytes --]

Thanks for reporting. I guess this should also reported against
autoconf-archive because the m4 file is from there (
https://www.gnu.org/software/autoconf-archive/How-to-contribute.html). More
generally, a test for a GCC-style attribute should use the __has_attribute
builtin if available and only resort to brittler methods such as warning
output checks if the builtin is unavailable.

Joakim Jalap <joakim.jalap@fastmail.com> schrieb am Sa., 16. Jan. 2016 um
19:25 Uhr:

>
> Hello
>
> I discovered a little problem while trying to build emacs-25 with modules
> on
> OpenBSD-current. The problem is that an assertion fails because
> HAVE_ATTRIBUTE_CLEANUP is not true, even though I'm using clang which does
> support the cleanup attribute (I think).
>
> This is because the test for whether CC supports that attribute
> (m4/ax_gcc_var_attribute.m4 m4/ax_gcc_var_attribute.m4) only checks if
> there
> were warnings issued and if so decides that the compiler has no support.
> But
> OpenBSDs linker (I think it is) outputs the following warnings:
>
> /usr/X11R6/lib/libX11.so.16.1: warning: warning: strcpy() is almost always
> misused, please use strlcpy()
> /usr/X11R6/lib/libX11.so.16.1: warning: warning: strcat() is almost always
> misused, please use strlcat()
> /usr/X11R6/lib/libX11.so.16.1: warning: warning: sprintf() is often
> misused, please use snprintf()
>
> which are completely unrelated to lack of attribute support.
>
> The attached fix allows me to build. It isn't meant as a real solution,
> it's more to illustrate the problem.
>
> I guess another way to go migt be to run this test with empty linker
> flags, but
> I haven't tried that.
>
> Either way, I hope this is of some use.
>
> -- Joakim
>
>
>
> In GNU Emacs 24.5.1 (x86_64-unknown-openbsd, GTK+ Version 3.18.6)
>  of 2015-12-09 on amd64.ports.openbsd.org
> Windowing system distributor `The X.Org Foundation', version 11.0.11704000
> Configured using:
>  `configure --build=amd64-unknown-openbsd --without-sound
>  --with-x-toolkit=gtk3 --prefix=/usr/local --sysconfdir=/etc
>  --mandir=/usr/local/man --infodir=/usr/local/info --localstatedir=/var
>  --disable-silent-rules --disable-gtk-doc 'CFLAGS=-O2 -pipe -fno-pie'
>  CPPFLAGS=-I/usr/local/include 'LDFLAGS=-L/usr/local/lib -nopie''
>
> Important settings:
>   locale-coding-system: nil
>
> Major mode: Org
>
> Minor modes in effect:
>   show-paren-mode: t
>   global-linum-mode: t
>   rich-minority-mode: t
>   global-cwarn-mode: t
>   global-git-commit-mode: t
>   async-bytecomp-package-mode: t
>   shell-dirtrack-mode: t
>   global-semantic-idle-scheduler-mode: t
>   global-semanticdb-minor-mode: t
>   semantic-mode: t
>   erc-notifications-mode: t
>   erc-list-mode: t
>   erc-menu-mode: t
>   erc-autojoin-mode: t
>   erc-ring-mode: t
>   erc-networks-mode: t
>   erc-pcomplete-mode: t
>   erc-track-mode: t
>   erc-match-mode: t
>   erc-button-mode: t
>   erc-fill-mode: t
>   erc-stamp-mode: t
>   erc-netsplit-mode: t
>   erc-irccontrols-mode: t
>   erc-noncommands-mode: t
>   erc-move-to-prompt-mode: t
>   erc-readonly-mode: t
>   w3m-fb-mode: t
>   global-hl-line-mode: t
>   diff-auto-refine-mode: t
>   global-company-mode: t
>   company-mode: t
>   TeX-PDF-mode: t
>   TeX-source-correlate-mode: t
>   flx-ido-mode: t
>   ido-everywhere: t
>   global-undo-tree-mode: t
>   undo-tree-mode: t
>   global-auto-revert-mode: t
>   projectile-global-mode: t
>   projectile-mode: t
>   tooltip-mode: t
>   electric-indent-mode: t
>   mouse-wheel-mode: t
>   menu-bar-mode: t
>   file-name-shadow-mode: t
>   global-font-lock-mode: t
>   font-lock-mode: t
>   auto-composition-mode: t
>   auto-encryption-mode: t
>   auto-compression-mode: t
>   column-number-mode: t
>   line-number-mode: t
>   auto-fill-function: do-auto-fill
>   transient-mark-mode: t
>
> Recent messages:
>  [2 times]
> Buffer is read-only
> (emacs gnus type)
> Buffer is read-only
> Describe-Function...
> Making completion list...
> Quit
> Entering debugger...
> Back to top level.
> Making completion list... [3 times]
> gnus-user-agent
>
> Load-path shadows:
> /home/joakim/.emacs.d/elpa/helm-20151106.2158/helm-multi-match hides
> /home/joakim/.emacs.d/elpa/helm-core-20151104.0/helm-multi-match
> /home/joakim/.emacs.d/elpa/org-20151005/org-protocol hides
> /usr/local/share/emacs/24.5/lisp/org/org-protocol
> /home/joakim/.emacs.d/elpa/org-20151005/org-pcomplete hides
> /usr/local/share/emacs/24.5/lisp/org/org-pcomplete
> /home/joakim/.emacs.d/elpa/org-20151005/org-eshell hides
> /usr/local/share/emacs/24.5/lisp/org/org-eshell
> /home/joakim/.emacs.d/elpa/org-20151005/org-element hides
> /usr/local/share/emacs/24.5/lisp/org/org-element
> /home/joakim/.emacs.d/elpa/org-20151005/ob-plantuml hides
> /usr/local/share/emacs/24.5/lisp/org/ob-plantuml
> /home/joakim/.emacs.d/elpa/org-20151005/ob-picolisp hides
> /usr/local/share/emacs/24.5/lisp/org/ob-picolisp
> /home/joakim/.emacs.d/elpa/org-20151005/ob-maxima hides
> /usr/local/share/emacs/24.5/lisp/org/ob-maxima
> /home/joakim/.emacs.d/elpa/org-20151005/ob-lilypond hides
> /usr/local/share/emacs/24.5/lisp/org/ob-lilypond
> /home/joakim/.emacs.d/elpa/org-20151005/ob-ledger hides
> /usr/local/share/emacs/24.5/lisp/org/ob-ledger
> /home/joakim/.emacs.d/elpa/org-20151005/ob-octave hides
> /usr/local/share/emacs/24.5/lisp/org/ob-octave
> /home/joakim/.emacs.d/elpa/org-20151005/ob-lob hides
> /usr/local/share/emacs/24.5/lisp/org/ob-lob
> /home/joakim/.emacs.d/elpa/org-20151005/org-inlinetask hides
> /usr/local/share/emacs/24.5/lisp/org/org-inlinetask
> /home/joakim/.emacs.d/elpa/org-20151005/org-footnote hides
> /usr/local/share/emacs/24.5/lisp/org/org-footnote
> /home/joakim/.emacs.d/elpa/org-20151005/ob-fortran hides
> /usr/local/share/emacs/24.5/lisp/org/ob-fortran
> /home/joakim/.emacs.d/elpa/org-20151005/ob-dot hides
> /usr/local/share/emacs/24.5/lisp/org/ob-dot
> /home/joakim/.emacs.d/elpa/org-20151005/ob-tangle hides
> /usr/local/share/emacs/24.5/lisp/org/ob-tangle
> /home/joakim/.emacs.d/elpa/org-20151005/ob-css hides
> /usr/local/share/emacs/24.5/lisp/org/ob-css
> /home/joakim/.emacs.d/elpa/org-20151005/ob-sql hides
> /usr/local/share/emacs/24.5/lisp/org/ob-sql
> /home/joakim/.emacs.d/elpa/org-20151005/ob-core hides
> /usr/local/share/emacs/24.5/lisp/org/ob-core
> /home/joakim/.emacs.d/elpa/org-20151005/org-datetree hides
> /usr/local/share/emacs/24.5/lisp/org/org-datetree
> /home/joakim/.emacs.d/elpa/org-20151005/org-capture hides
> /usr/local/share/emacs/24.5/lisp/org/org-capture
> /home/joakim/.emacs.d/elpa/org-20151005/ob-python hides
> /usr/local/share/emacs/24.5/lisp/org/ob-python
> /home/joakim/.emacs.d/elpa/org-20151005/ox-org hides
> /usr/local/share/emacs/24.5/lisp/org/ox-org
> /home/joakim/.emacs.d/elpa/org-20151005/org-plot hides
> /usr/local/share/emacs/24.5/lisp/org/org-plot
> /home/joakim/.emacs.d/elpa/org-20151005/ob-clojure hides
> /usr/local/share/emacs/24.5/lisp/org/ob-clojure
> /home/joakim/.emacs.d/elpa/org-20151005/ob-C hides
> /usr/local/share/emacs/24.5/lisp/org/ob-C
> /home/joakim/.emacs.d/elpa/org-20151005/org-irc hides
> /usr/local/share/emacs/24.5/lisp/org/org-irc
> /home/joakim/.emacs.d/elpa/org-20151005/ox-html hides
> /usr/local/share/emacs/24.5/lisp/org/ox-html
> /home/joakim/.emacs.d/elpa/org-20151005/ob-org hides
> /usr/local/share/emacs/24.5/lisp/org/ob-org
> /home/joakim/.emacs.d/elpa/org-20151005/org-id hides
> /usr/local/share/emacs/24.5/lisp/org/org-id
> /home/joakim/.emacs.d/elpa/org-20151005/org-w3m hides
> /usr/local/share/emacs/24.5/lisp/org/org-w3m
> /home/joakim/.emacs.d/elpa/org-20151005/org-macro hides
> /usr/local/share/emacs/24.5/lisp/org/org-macro
> /home/joakim/.emacs.d/elpa/org-20151005/ox-md hides
> /usr/local/share/emacs/24.5/lisp/org/ox-md
> /home/joakim/.emacs.d/elpa/org-20151005/org-src hides
> /usr/local/share/emacs/24.5/lisp/org/org-src
> /home/joakim/.emacs.d/elpa/org-20151005/org-docview hides
> /usr/local/share/emacs/24.5/lisp/org/org-docview
> /home/joakim/.emacs.d/elpa/org-20151005/ob-awk hides
> /usr/local/share/emacs/24.5/lisp/org/ob-awk
> /home/joakim/.emacs.d/elpa/org-20151005/ob-scala hides
> /usr/local/share/emacs/24.5/lisp/org/ob-scala
> /home/joakim/.emacs.d/elpa/org-20151005/org-attach hides
> /usr/local/share/emacs/24.5/lisp/org/org-attach
> /home/joakim/.emacs.d/elpa/org-20151005/ob-table hides
> /usr/local/share/emacs/24.5/lisp/org/ob-table
> /home/joakim/.emacs.d/elpa/org-20151005/org-feed hides
> /usr/local/share/emacs/24.5/lisp/org/org-feed
> /home/joakim/.emacs.d/elpa/org-20151005/org-compat hides
> /usr/local/share/emacs/24.5/lisp/org/org-compat
> /home/joakim/.emacs.d/elpa/org-20151005/ob-ocaml hides
> /usr/local/share/emacs/24.5/lisp/org/ob-ocaml
> /home/joakim/.emacs.d/elpa/org-20151005/ob-scheme hides
> /usr/local/share/emacs/24.5/lisp/org/ob-scheme
> /home/joakim/.emacs.d/elpa/org-20151005/org-bbdb hides
> /usr/local/share/emacs/24.5/lisp/org/org-bbdb
> /home/joakim/.emacs.d/elpa/org-20151005/ob-calc hides
> /usr/local/share/emacs/24.5/lisp/org/ob-calc
> /home/joakim/.emacs.d/elpa/org-20151005/org-ctags hides
> /usr/local/share/emacs/24.5/lisp/org/org-ctags
> /home/joakim/.emacs.d/elpa/org-20151005/org-archive hides
> /usr/local/share/emacs/24.5/lisp/org/org-archive
> /home/joakim/.emacs.d/elpa/org-20151005/org-entities hides
> /usr/local/share/emacs/24.5/lisp/org/org-entities
> /home/joakim/.emacs.d/elpa/org-20151005/ob-comint hides
> /usr/local/share/emacs/24.5/lisp/org/ob-comint
> /home/joakim/.emacs.d/elpa/org-20151005/ob-matlab hides
> /usr/local/share/emacs/24.5/lisp/org/ob-matlab
> /home/joakim/.emacs.d/elpa/org-20151005/org-mhe hides
> /usr/local/share/emacs/24.5/lisp/org/org-mhe
> /home/joakim/.emacs.d/elpa/org-20151005/ob-lisp hides
> /usr/local/share/emacs/24.5/lisp/org/ob-lisp
> /home/joakim/.emacs.d/elpa/org-20151005/ox-beamer hides
> /usr/local/share/emacs/24.5/lisp/org/ox-beamer
> /home/joakim/.emacs.d/elpa/org-20151005/org-rmail hides
> /usr/local/share/emacs/24.5/lisp/org/org-rmail
> /home/joakim/.emacs.d/elpa/org-20151005/org-colview hides
> /usr/local/share/emacs/24.5/lisp/org/org-colview
> /home/joakim/.emacs.d/elpa/org-20151005/org-gnus hides
> /usr/local/share/emacs/24.5/lisp/org/org-gnus
> /home/joakim/.emacs.d/elpa/org-20151005/ob-makefile hides
> /usr/local/share/emacs/24.5/lisp/org/ob-makefile
> /home/joakim/.emacs.d/elpa/org-20151005/ob-emacs-lisp hides
> /usr/local/share/emacs/24.5/lisp/org/ob-emacs-lisp
> /home/joakim/.emacs.d/elpa/org-20151005/ob-shen hides
> /usr/local/share/emacs/24.5/lisp/org/ob-shen
> /home/joakim/.emacs.d/elpa/org-20151005/ob-haskell hides
> /usr/local/share/emacs/24.5/lisp/org/ob-haskell
> /home/joakim/.emacs.d/elpa/org-20151005/ob-java hides
> /usr/local/share/emacs/24.5/lisp/org/ob-java
> /home/joakim/.emacs.d/elpa/org-20151005/ob-sqlite hides
> /usr/local/share/emacs/24.5/lisp/org/ob-sqlite
> /home/joakim/.emacs.d/elpa/org-20151005/ob-latex hides
> /usr/local/share/emacs/24.5/lisp/org/ob-latex
> /home/joakim/.emacs.d/elpa/org-20151005/ob-mscgen hides
> /usr/local/share/emacs/24.5/lisp/org/ob-mscgen
> /home/joakim/.emacs.d/elpa/org-20151005/ob-screen hides
> /usr/local/share/emacs/24.5/lisp/org/ob-screen
> /home/joakim/.emacs.d/elpa/org-20151005/org-macs hides
> /usr/local/share/emacs/24.5/lisp/org/org-macs
> /home/joakim/.emacs.d/elpa/org-20151005/org-timer hides
> /usr/local/share/emacs/24.5/lisp/org/org-timer
> /home/joakim/.emacs.d/elpa/org-20151005/ob-ref hides
> /usr/local/share/emacs/24.5/lisp/org/ob-ref
> /home/joakim/.emacs.d/elpa/org-20151005/ob-perl hides
> /usr/local/share/emacs/24.5/lisp/org/ob-perl
> /home/joakim/.emacs.d/elpa/org-20151005/org-faces hides
> /usr/local/share/emacs/24.5/lisp/org/org-faces
> /home/joakim/.emacs.d/elpa/org-20151005/org-table hides
> /usr/local/share/emacs/24.5/lisp/org/org-table
> /home/joakim/.emacs.d/elpa/org-20151005/ob-gnuplot hides
> /usr/local/share/emacs/24.5/lisp/org/ob-gnuplot
> /home/joakim/.emacs.d/elpa/org-20151005/ob-eval hides
> /usr/local/share/emacs/24.5/lisp/org/ob-eval
> /home/joakim/.emacs.d/elpa/org-20151005/ox-latex hides
> /usr/local/share/emacs/24.5/lisp/org/ox-latex
> /home/joakim/.emacs.d/elpa/org-20151005/ob-io hides
> /usr/local/share/emacs/24.5/lisp/org/ob-io
> /home/joakim/.emacs.d/elpa/org-20151005/ox-man hides
> /usr/local/share/emacs/24.5/lisp/org/ox-man
> /home/joakim/.emacs.d/elpa/org-20151005/org-habit hides
> /usr/local/share/emacs/24.5/lisp/org/org-habit
> /home/joakim/.emacs.d/elpa/org-20151005/org-crypt hides
> /usr/local/share/emacs/24.5/lisp/org/org-crypt
> /home/joakim/.emacs.d/elpa/org-20151005/ob-asymptote hides
> /usr/local/share/emacs/24.5/lisp/org/ob-asymptote
> /home/joakim/.emacs.d/elpa/org-20151005/org-mouse hides
> /usr/local/share/emacs/24.5/lisp/org/org-mouse
> /home/joakim/.emacs.d/elpa/org-20151005/org-version hides
> /usr/local/share/emacs/24.5/lisp/org/org-version
> /home/joakim/.emacs.d/elpa/org-20151005/org-indent hides
> /usr/local/share/emacs/24.5/lisp/org/org-indent
> /home/joakim/.emacs.d/elpa/org-20151005/ox-texinfo hides
> /usr/local/share/emacs/24.5/lisp/org/ox-texinfo
> /home/joakim/.emacs.d/elpa/org-20151005/org-mobile hides
> /usr/local/share/emacs/24.5/lisp/org/org-mobile
> /home/joakim/.emacs.d/elpa/org-20151005/ob-exp hides
> /usr/local/share/emacs/24.5/lisp/org/ob-exp
> /home/joakim/.emacs.d/elpa/org-20151005/ox-odt hides
> /usr/local/share/emacs/24.5/lisp/org/ox-odt
> /home/joakim/.emacs.d/elpa/org-20151005/ob-keys hides
> /usr/local/share/emacs/24.5/lisp/org/ob-keys
> /home/joakim/.emacs.d/elpa/org-20151005/ox-ascii hides
> /usr/local/share/emacs/24.5/lisp/org/ox-ascii
> /home/joakim/.emacs.d/elpa/org-20151005/org-agenda hides
> /usr/local/share/emacs/24.5/lisp/org/org-agenda
> /home/joakim/.emacs.d/elpa/org-20151005/ox-publish hides
> /usr/local/share/emacs/24.5/lisp/org/ox-publish
> /home/joakim/.emacs.d/elpa/org-20151005/ob-js hides
> /usr/local/share/emacs/24.5/lisp/org/ob-js
> /home/joakim/.emacs.d/elpa/org-20151005/ob-R hides
> /usr/local/share/emacs/24.5/lisp/org/ob-R
> /home/joakim/.emacs.d/elpa/org-20151005/org hides
> /usr/local/share/emacs/24.5/lisp/org/org
> /home/joakim/.emacs.d/elpa/org-20151005/org-list hides
> /usr/local/share/emacs/24.5/lisp/org/org-list
> /home/joakim/.emacs.d/elpa/org-20151005/org-install hides
> /usr/local/share/emacs/24.5/lisp/org/org-install
> /home/joakim/.emacs.d/elpa/org-20151005/ob-ditaa hides
> /usr/local/share/emacs/24.5/lisp/org/ob-ditaa
> /home/joakim/.emacs.d/elpa/org-20151005/org-info hides
> /usr/local/share/emacs/24.5/lisp/org/org-info
> /home/joakim/.emacs.d/elpa/org-20151005/ob hides
> /usr/local/share/emacs/24.5/lisp/org/ob
> /home/joakim/.emacs.d/elpa/org-20151005/ox-icalendar hides
> /usr/local/share/emacs/24.5/lisp/org/ox-icalendar
> /home/joakim/.emacs.d/elpa/org-20151005/ob-sass hides
> /usr/local/share/emacs/24.5/lisp/org/ob-sass
> /home/joakim/.emacs.d/elpa/org-20151005/org-loaddefs hides
> /usr/local/share/emacs/24.5/lisp/org/org-loaddefs
> /home/joakim/.emacs.d/elpa/org-20151005/ox hides
> /usr/local/share/emacs/24.5/lisp/org/ox
> /home/joakim/.emacs.d/elpa/org-20151005/org-clock hides
> /usr/local/share/emacs/24.5/lisp/org/org-clock
> /home/joakim/.emacs.d/elpa/org-20151005/ob-ruby hides
> /usr/local/share/emacs/24.5/lisp/org/ob-ruby
> /home/joakim/.emacs.d/elpa/org-20151005/org-bibtex hides
> /usr/local/share/emacs/24.5/lisp/org/org-bibtex
> /home/joakim/.emacs.d/elpa/emms-20150810.832/tq hides
> /usr/local/share/emacs/24.5/lisp/emacs-lisp/tq
>
> Features:
> (shadow bbdb-message mail-extr gnus-msg gnus-art mm-uu mml2015 debug
> org-rmail org-mhe org-irc org-info org-gnus org-docview org-bibtex
> bibtex org-bbdb org-element org-w3m ispell emacsbug mule-util view
> eieio-opt whitespace m4-mode smex sh-script smie executable misearch
> multi-isearch vc-git solarized-dark-theme solarized company-files
> company-oddmuse company-keywords company-etags company-gtags
> company-dabbrev-code company-dabbrev company-capf company-cmake
> company-xcode company-clang company-semantic company-eclim company-css
> company-nxml company-bbdb emms-mode-line emms-info-ogginfo
> emms-info-mp3info emms-player-vlc emms-player-mplayer emms-browser sort
> emms-playlist-sort emms-playlist-mode emms-last-played emms-player-mpd
> emms-url emms-cache emms-info later-do tq emms-source-playlist
> emms-source-file locate emms-player-simple emms-setup emms emms-compat
> paren linum-off linum rich-minority f90 fortran cus-edit cus-start
> cus-load py-autopep8 company-anaconda anaconda-mode pythonic f python
> cwarn company-irony irony-completion irony-snippet irony company-rtags
> company-template rtags popup repeat bookmark function-args
> semantic-directory semantic/ia etags srefactor subr-x srefactor-ui
> recentf tree-widget srecode/semantic semantic/senator semantic/decorate
> pulse srecode/insert srecode/filters srecode/args ede/speedbar ede/files
> ede ede/base ede/auto ede/source eieio-speedbar speedbar sb-image dframe
> eieio-custom srecode/find srecode/map srecode/ctxt srecode/compile
> srecode/dictionary srecode/table srecode semantic/doc semantic/bovine/c
> hideif semantic/bovine/c-by semantic/lex-spp semantic/bovine/gcc
> semantic/dep semantic/bovine semantic/analyze/refs semantic/analyze
> semantic/sort semantic/scope semantic/analyze/fcn cc-mode cc-fonts
> cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs
> dsvn vc vc-dispatcher magit-blame magit-stash magit-bisect magit-remote
> magit-commit magit-sequence magit magit-apply magit-wip magit-log
> magit-diff smerge-mode magit-core magit-process magit-popup magit-mode
> magit-git magit-section magit-utils git-commit log-edit pcvs-util
> add-log with-editor async-bytecomp async tramp-sh tramp tramp-compat
> tramp-loaddefs trampver shell comment-dwim-2 origami origami-parsers
> semantic/idle semantic/format ezimage semantic/tag-ls semantic/find
> semantic/ctxt inversion semantic/db-global semantic/symref/global
> semantic/symref semantic/db-find semantic/db-ref cedet-global
> semantic/db-mode semantic/db eieio-base semantic/util-modes
> semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local
> cedet lice mentor xml-rpc url-http tls url-auth url-gw url-scgi
> google-translate-smooth-ui google-translate google-translate-default-ui
> google-translate-core-ui google-translate-core elfeed-show elfeed-db
> elfeed-lib avl-tree elfeed-search elfeed url-queue xml-query
> erc-desktop-notifications notifications erc-list erc-menu erc-join
> erc-ring erc-networks erc-pcomplete erc-track erc-match erc-button
> erc-fill erc-stamp erc-netsplit erc-goodies erc erc-backend erc-compat
> gnutls weechat-complete weechat-button weechat weechat-color rx
> weechat-relay bindat weechat-core s ucs-normalize conkeror-minor-mode
> w3m-lnum w3m-search w3m doc-view jka-compr image-mode w3m-hist w3m-fb
> bookmark-w3m w3m-ems w3m-ccl ccl w3m-favicon w3m-image w3m-proc w3m-util
> eww-lnum eww mm-url url url-proxy url-privacy url-expand url-methods
> url-history url-cookie url-domsuf url-util shr browse-url bbdb-mua
> bbdb-com bbdb bbdb-site timezone notmuch hl-line notmuch-message
> notmuch-maildir-fcc notmuch-hello notmuch-tree notmuch-show
> notmuch-print notmuch-crypto notmuch-mua notmuch-address notmuch-company
> notmuch-parser notmuch-wash diff-mode coolj notmuch-query goto-addr
> icalendar diary-lib diary-loaddefs notmuch-tag notmuch-lib mm-view
> mml-smime smime dig mailcap nnir gnus-sum gnus-group gnus-undo nnmail
> mail-source nnoo mbsync smtpmail sendmail gnus-sync gnus-start gnus-spec
> gnus-int gnus-range message idna rfc822 mml mml-sec mm-decode mm-bodies
> mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev
> gmm-utils mailheader gnus-win json gnus gnus-ems nnheader mail-utils
> wid-edit company-math math-symbol-lists company-auctex yasnippet company
> pcase latex tex-style tex dbus xml crm swiper ivy delsel ffap url-parse
> auth-source gnus-util mm-util mail-prsvr password-cache url-vars idomenu
> imenu ace-link ace-window em-smart esh-var esh-io esh-cmd esh-opt
> esh-ext esh-proc esh-arg eldoc esh-groups eshell esh-module esh-mode
> esh-util multi-term term disp-table ehelp flx-ido flx ido avy-zap avy
> move-text undo-tree diff hydra lv multiple-cursors
> mc-hide-unmatched-lines-mode mc-separate-operations
> rectangular-region-mode mc-mark-pop mc-mark-more mc-cycle-cursors
> mc-edit-lines multiple-cursors-core rect org-table misc
> programmers-dvorak quail edmacro kmacro dired+ image-dired image-file
> dired-aux dired-x server pinentry autorevert filenotify projectile grep
> compile ibuf-ext ibuffer dash thingatpt ignoramus el-get
> el-get-autoloading el-get-list-packages el-get-dependencies el-get-build
> el-get-status pp el-get-methods el-get-fossil el-get-svn el-get-pacman
> el-get-github-zip el-get-github-tar el-get-http-zip el-get-http-tar
> el-get-hg el-get-go el-get-git-svn el-get-fink el-get-emacswiki
> el-get-http el-get-notify help-mode el-get-emacsmirror el-get-github
> el-get-git el-get-elpa el-get-darcs el-get-cvs el-get-bzr el-get-brew
> el-get-builtin el-get-apt-get el-get-recipes el-get-byte-compile
> el-get-custom el-get-core autoload lisp-mnt dired finder-inf org advice
> org-macro org-footnote org-pcomplete pcomplete org-list org-faces
> org-entities time-date noutline outline easy-mmode org-version
> ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys
> ob-comint comint ansi-color ring ob-core ob-eval org-compat org-macs
> org-loaddefs format-spec find-func cal-menu calendar cal-loaddefs
> tex-site eieio byte-opt bytecomp byte-compile cl-extra cconv eieio-core
> help-fns cl-macs cl gv cl-loaddefs cl-lib info easymenu package
> epg-config tooltip electric uniquify ediff-hook vc-hooks lisp-float-type
> mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe
> tabulated-list newcomment lisp-mode prog-mode register page menu-bar
> rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax
> facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese
> tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak
> czech european ethiopic indian cyrillic chinese case-table epa-hook
> jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button
> faces cus-face macroexp files text-properties overlay sha1 md5 base64
> format env code-pages mule custom widget hashtable-print-readable
> backquote make-network-process dbusbind gfilenotify dynamic-setting
> system-font-setting font-render-setting move-toolbar gtk x-toolkit x
> multi-tty emacs)
>
> Memory information:
> ((conses 16 1027147 421321)
>  (symbols 48 76509 1)
>  (miscs 40 863 1582)
>  (strings 32 207041 118087)
>  (string-bytes 1 6146562)
>  (vectors 16 147798)
>  (vector-slots 8 3193259 446740)
>  (floats 8 17152 16902)
>  (intervals 56 10608 3318)
>  (buffers 960 31))
>

[-- Attachment #2: Type: text/html, Size: 24152 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#22385: 24.5; Build failure with modules on OpenBSD
  2016-01-16 17:43 bug#22385: 24.5; Build failure with modules on OpenBSD Joakim Jalap
  2016-01-17 16:22 ` Philipp Stephani
@ 2016-01-17 22:30 ` Paul Eggert
  2016-01-17 23:58   ` Gabriele Svelto
  1 sibling, 1 reply; 4+ messages in thread
From: Paul Eggert @ 2016-01-17 22:30 UTC (permalink / raw)
  To: Joakim Jalap; +Cc: Gabriele Svelto, 22385-done

[-- Attachment #1: Type: text/plain, Size: 1179 bytes --]

Thanks for reporting the problem. The OpenBSD compiler warnings about strcpy 
etc. are false alarms, and these false alarms confuse the Emacs build procedure 
and therefore introduce bugs into the Emacs module code. We're lucky that a 
run-time assertion caught this.

I installed the attached patch into the emacs-25 branch. It removes the 
offending test in 'configure', and so should fix the bug so I am boldly marking 
it as done. Please give the fix a try; if it doesn't work I can unmark the bug.

Is there some way to tell the OpenBSD C compiler to not chatter about uses of 
strcpy, strcat, and sprintf? We don't want to use the OpenBSD-suggested 
replacements in Emacs, as that would be more likely to introduce bugs than to 
fix them. If we can suggest (or get 'configure' to use) a build-time option to 
suppress the false alarms that would save everybody some work and would help 
make Emacs more reliable.

Although the OpenBSD porting problem with AX_GCC_VAR_ATTRIBUTE no longer affects 
Emacs, it might affect other programs that use that macro, so I'll CC: this to 
the macro's author Gabriele Svelto. Gabriele, the bug report is here:

http://bugs.gnu.org/22385

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Port-cleanup-attribute-to-OpenBSD.patch --]
[-- Type: text/x-diff; name="0001-Port-cleanup-attribute-to-OpenBSD.patch", Size: 9668 bytes --]

From 1addf499c8318ecf2b00e1c60dfa56e67bc1689e Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Sun, 17 Jan 2016 14:10:26 -0800
Subject: [PATCH] Port cleanup attribute to OpenBSD
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The OpenBSD C compiler issues false alarms about strcpy, strcat, and
sprintf, and this messes up 'configure' when it tests for the cleanup
attribute.  Work around the problem by using __has_attribute directly.
Problem reported by Joakim Jalap (Bug#22385).
* configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
* m4/ax_gcc_var_attribute.m4: Remove.
* src/conf_post.h (__has_attribute): Provide a substitute, for
non-GCC or older GCC compilers.  All uses changed to assume
the substitute.  Check for the cleanup attribute.
* src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
---
 configure.ac               |   1 -
 m4/ax_gcc_var_attribute.m4 | 141 ---------------------------------------------
 src/conf_post.h            |  28 +++++----
 src/emacs-module.c         |   3 +-
 4 files changed, 18 insertions(+), 155 deletions(-)
 delete mode 100644 m4/ax_gcc_var_attribute.m4

diff --git a/configure.ac b/configure.ac
index 8c01aba..3aeba22 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3327,7 +3327,6 @@ if test "${HAVE_MODULES}" = yes; then
 fi
 AC_SUBST(MODULES_OBJ)
 AC_SUBST(LIBMODULES)
-AX_GCC_VAR_ATTRIBUTE(cleanup)
 AC_CHECK_FUNCS(dladdr)
 
 ### Use -lpng if available, unless '--with-png=no'.
diff --git a/m4/ax_gcc_var_attribute.m4 b/m4/ax_gcc_var_attribute.m4
deleted file mode 100644
index d12fce8..0000000
--- a/m4/ax_gcc_var_attribute.m4
+++ /dev/null
@@ -1,141 +0,0 @@
-# ===========================================================================
-#   http://www.gnu.org/software/autoconf-archive/ax_gcc_var_attribute.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-#   AX_GCC_VAR_ATTRIBUTE(ATTRIBUTE)
-#
-# DESCRIPTION
-#
-#   This macro checks if the compiler supports one of GCC's variable
-#   attributes; many other compilers also provide variable attributes with
-#   the same syntax. Compiler warnings are used to detect supported
-#   attributes as unsupported ones are ignored by default so quieting
-#   warnings when using this macro will yield false positives.
-#
-#   The ATTRIBUTE parameter holds the name of the attribute to be checked.
-#
-#   If ATTRIBUTE is supported define HAVE_VAR_ATTRIBUTE_<ATTRIBUTE>.
-#
-#   The macro caches its result in the ax_cv_have_var_attribute_<attribute>
-#   variable.
-#
-#   The macro currently supports the following variable attributes:
-#
-#    aligned
-#    cleanup
-#    common
-#    nocommon
-#    deprecated
-#    mode
-#    packed
-#    tls_model
-#    unused
-#    used
-#    vector_size
-#    weak
-#    dllimport
-#    dllexport
-#    init_priority
-#
-#   Unsupported variable attributes will be tested against a global integer
-#   variable and without any arguments given to the attribute itself; the
-#   result of this check might be wrong or meaningless so use with care.
-#
-# LICENSE
-#
-#   Copyright (c) 2013 Gabriele Svelto <gabriele.svelto@gmail.com>
-#
-#   Copying and distribution of this file, with or without modification, are
-#   permitted in any medium without royalty provided the copyright notice
-#   and this notice are preserved.  This file is offered as-is, without any
-#   warranty.
-
-#serial 3
-
-AC_DEFUN([AX_GCC_VAR_ATTRIBUTE], [
-    AS_VAR_PUSHDEF([ac_var], [ax_cv_have_var_attribute_$1])
-
-    AC_CACHE_CHECK([for __attribute__(($1))], [ac_var], [
-        AC_LINK_IFELSE([AC_LANG_PROGRAM([
-            m4_case([$1],
-                [aligned], [
-                    int foo __attribute__(($1(32)));
-                ],
-                [cleanup], [
-                    int bar(int *t) { return *t; };
-                ],
-                [common], [
-                    int foo __attribute__(($1));
-                ],
-                [nocommon], [
-                    int foo __attribute__(($1));
-                ],
-                [deprecated], [
-                    int foo __attribute__(($1)) = 0;
-                ],
-                [mode], [
-                    long foo __attribute__(($1(word)));
-                ],
-                [packed], [
-                    struct bar {
-                        int baz __attribute__(($1));
-                    };
-                ],
-                [tls_model], [
-                    __thread int bar1 __attribute__(($1("global-dynamic")));
-                    __thread int bar2 __attribute__(($1("local-dynamic")));
-                    __thread int bar3 __attribute__(($1("initial-exec")));
-                    __thread int bar4 __attribute__(($1("local-exec")));
-                ],
-                [unused], [
-                    int foo __attribute__(($1));
-                ],
-                [used], [
-                    int foo __attribute__(($1));
-                ],
-                [vector_size], [
-                    int foo __attribute__(($1(16)));
-                ],
-                [weak], [
-                    int foo __attribute__(($1));
-                ],
-                [dllimport], [
-                    int foo __attribute__(($1));
-                ],
-                [dllexport], [
-                    int foo __attribute__(($1));
-                ],
-                [init_priority], [
-                    struct bar { bar() {} ~bar() {} };
-                    bar b __attribute__(($1(65535/2)));
-                ],
-                [
-                 m4_warn([syntax], [Unsupported attribute $1, the test may fail])
-                 int foo __attribute__(($1));
-                ]
-            )], [
-            m4_case([$1],
-                [cleanup], [
-                    int foo __attribute__(($1(bar))) = 0;
-                    foo = foo + 1;
-                ],
-                []
-            )])
-            ],
-            dnl GCC doesn't exit with an error if an unknown attribute is
-            dnl provided but only outputs a warning, so accept the attribute
-            dnl only if no warning were issued.
-            [AS_IF([test -s conftest.err],
-                [AS_VAR_SET([ac_var], [no])],
-                [AS_VAR_SET([ac_var], [yes])])],
-            [AS_VAR_SET([ac_var], [no])])
-    ])
-
-    AS_IF([test yes = AS_VAR_GET([ac_var])],
-        [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_VAR_ATTRIBUTE_$1), 1,
-            [Define to 1 if the system has the `$1' variable attribute])], [])
-
-    AS_VAR_POPDEF([ac_var])
-])
diff --git a/src/conf_post.h b/src/conf_post.h
index 98ff12e..5c332a0 100644
--- a/src/conf_post.h
+++ b/src/conf_post.h
@@ -51,10 +51,21 @@ typedef bool bool_bf;
 #endif
 #endif
 
-/* When not using Clang, assume its attributes and features are absent.  */
+/* Simulate __has_attribute on compilers that lack it.  It is used only
+   on arguments like alloc_size that are handled in this simulation.  */
 #ifndef __has_attribute
-# define __has_attribute(a) false
-#endif
+# define __has_attribute(a) __has_attribute_##a
+# define __has_attribute_alloc_size (4 < __GNUC__ + (3 <= __GNUC_MINOR__))
+# define __has_attribute_cleanup (3 < __GNUC__ + (4 <= __GNUC_MINOR__))
+# define __has_attribute_externally_visible \
+    (4 < __GNUC__ + (1 <= __GNUC_MINOR__))
+# define __has_attribute_no_address_safety_analysis false
+# define __has_attribute_no_sanitize_address \
+    (4 < __GNUC__ + (8 <= __GNUC_MINOR__))
+#endif
+
+/* Simulate __has_feature on compilers that lack it.  It is used only
+   to define ADDRESS_SANITIZER below.  */
 #ifndef __has_feature
 # define __has_feature(a) false
 #endif
@@ -222,9 +233,7 @@ extern int emacs_setenv_TZ (char const *);
 #define NO_INLINE
 #endif
 
-#if (__clang__								\
-     ? __has_attribute (externally_visible)				\
-     : (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 1)))
+#if __has_attribute (externally_visible)
 #define EXTERNALLY_VISIBLE __attribute__((externally_visible))
 #else
 #define EXTERNALLY_VISIBLE
@@ -253,9 +262,7 @@ extern int emacs_setenv_TZ (char const *);
 # define ATTRIBUTE_MALLOC
 #endif
 
-#if (__clang__					\
-     ? __has_attribute (alloc_size)		\
-     : 4 < __GNUC__ + (3 <= __GNUC_MINOR__))
+#if __has_attribute (alloc_size)
 # define ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
 #else
 # define ATTRIBUTE_ALLOC_SIZE(args)
@@ -278,8 +285,7 @@ extern int emacs_setenv_TZ (char const *);
 /* Attribute of functions whose code should not have addresses
    sanitized.  */
 
-#if (__has_attribute (no_sanitize_address) \
-     || 4 < __GNUC__ + (8 <= __GNUC_MINOR__))
+#if __has_attribute (no_sanitize_address)
 # define ATTRIBUTE_NO_SANITIZE_ADDRESS \
     __attribute__ ((no_sanitize_address)) ADDRESS_SANITIZER_WORKAROUND
 #elif __has_attribute (no_address_safety_analysis)
diff --git a/src/emacs-module.c b/src/emacs-module.c
index b5e044e..79a077b 100644
--- a/src/emacs-module.c
+++ b/src/emacs-module.c
@@ -35,8 +35,7 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 \f
 /* Feature tests.  */
 
-/* True if __attribute__ ((cleanup (...))) works, false otherwise.  */
-#ifdef HAVE_VAR_ATTRIBUTE_CLEANUP
+#if __has_attribute (cleanup)
 enum { module_has_cleanup = true };
 #else
 enum { module_has_cleanup = false };
-- 
2.5.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* bug#22385: 24.5; Build failure with modules on OpenBSD
  2016-01-17 22:30 ` Paul Eggert
@ 2016-01-17 23:58   ` Gabriele Svelto
  0 siblings, 0 replies; 4+ messages in thread
From: Gabriele Svelto @ 2016-01-17 23:58 UTC (permalink / raw)
  To: Paul Eggert, Joakim Jalap; +Cc: 22385-done

 Hello Paul,
thanks for getting in touch about this. There's a way to fix this issue
in my macro and it's by running the test twice with and without the
attribute and comparing the compiler error output instead of simply
assuming that any error output means that the attribute is not
supported. It's something I had considered doing in the beginning but
deemed unnecessarily complicated at the time. Turns out I was wrong;
I'll try to push a fix into autoconf-archive in the next few days.

 Gabriele

On 17/01/2016 23:30, Paul Eggert wrote:
> Thanks for reporting the problem. The OpenBSD compiler warnings about
> strcpy etc. are false alarms, and these false alarms confuse the Emacs
> build procedure and therefore introduce bugs into the Emacs module code.
> We're lucky that a run-time assertion caught this.
> 
> I installed the attached patch into the emacs-25 branch. It removes the
> offending test in 'configure', and so should fix the bug so I am boldly
> marking it as done. Please give the fix a try; if it doesn't work I can
> unmark the bug.
> 
> Is there some way to tell the OpenBSD C compiler to not chatter about
> uses of strcpy, strcat, and sprintf? We don't want to use the
> OpenBSD-suggested replacements in Emacs, as that would be more likely to
> introduce bugs than to fix them. If we can suggest (or get 'configure'
> to use) a build-time option to suppress the false alarms that would save
> everybody some work and would help make Emacs more reliable.
> 
> Although the OpenBSD porting problem with AX_GCC_VAR_ATTRIBUTE no longer
> affects Emacs, it might affect other programs that use that macro, so
> I'll CC: this to the macro's author Gabriele Svelto. Gabriele, the bug
> report is here:
> 
> http://bugs.gnu.org/22385






^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-01-17 23:58 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-16 17:43 bug#22385: 24.5; Build failure with modules on OpenBSD Joakim Jalap
2016-01-17 16:22 ` Philipp Stephani
2016-01-17 22:30 ` Paul Eggert
2016-01-17 23:58   ` Gabriele Svelto

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).