Subject: bug#57015: 29.0.50; macOS: libgccjit was not found: Homebrew libgccjit 12.1.0

From: Naofumi Yasufuku <[email-masked]>
Date: Sat, 06 Aug 2022 20:38:58 +0900

Hello Emacs,

'./configure --with-native-compilation' fails if Homebrew libgccjit is
updated to 12.1.0.  Attached configure.ac patch fixes this issue.
I think the same patch should be applied to emacs-28 branch.

--8<---------------cut here---------------start------------->8---
$ ./autogen.sh
$ ./configure --with-native-compilation
checking for xcrun... xcrun
checking for make... yes
checking for GNU Make... make
checking build system type... x86_64-apple-darwin21.6.0
checking host system type... x86_64-apple-darwin21.6.0
..
checking for gcc_jit_context_acquire in -lgccjit... no
configure: error: ELisp native compiler was requested, but libgccjit was not found.
Please try installing libgccjit or a similar package.
If you are sure you want Emacs be compiled without ELisp native compiler,
pass the --without-native-compilation option to configure.
$
--8<---------------cut here---------------end--------------->8---

--8<---------------cut here---------------start------------->8---
$ less config.log
..
configure:19555: checking for gcc_jit_context_acquire in -lgccjit
configure:19578: gcc -o conftest -g3 -O2 -isystem /usr/local/Cellar/libffi/3.4.2
/include -isystem /usr/local/Cellar/librsvg/2.54.4/include/librsvg-2.0 -isystem
/usr/local/Cellar/gdk-pixbuf/2.42.8_1/include/gdk-pixbuf-2.0 -isystem /usr/local
/Cellar/jpeg/9e/include -isystem /usr/local/Cellar/libtiff/4.4.0_1/include -isys
tem /usr/local/Cellar/glib/2.72.3/include -isystem /usr/local/Cellar/cairo/1.16.
0_5/include/cairo -isystem /usr/local/Cellar/glib/2.72.3/include -isystem /usr/l
ocal/Cellar/glib/2.72.3/include/glib-2.0 -isystem /usr/local/Cellar/glib/2.72.3/
lib/glib-2.0/include -isystem /usr/local/opt/gettext/include -isystem /usr/local
/Cellar/pcre/8.45/include -isystem /usr/local/Cellar/pixman/0.40.0/include/pixma
n-1 -isystem /usr/local/Cellar/fontconfig/2.14.0/include -isystem /usr/local/opt
/freetype/include/freetype2 -isystem /usr/local/Cellar/libpng/1.6.37/include/lib
png16 -isystem /usr/local/Cellar/libxcb/1.15/include -isystem /usr/local/Cellar/
libxrender/0.9.10/include -isystem /usr/local/Cellar/libxext/1.3.4/include -isys
tem /usr/local/Cellar/libx11/1.8.1/include -isystem /usr/local/Cellar/libxcb/1.1
5/include -isystem /usr/local/Cellar/libxau/1.0.9/include -isystem /usr/local/Cellar/libxdmcp/1.1.3/include -isystem /usr/local/Cellar/xorgproto/2022.1/include -isystem /usr/local/Cellar/webp/1.2.3_1/include -I/usr/local/Cellar/libgccjit/12.1.0/include     conftest.c -lgccjit  -lsqlite3   -L/usr/local/Cellar/libgccjit/12.1.0/lib/gcc/current
/usr/local/Cellar/libgccjit/12.1.0/lib/gcc/12 >&5
ld: warning: dylib (/usr/local/Cellar/libgccjit/12.1.0/lib/gcc/current/libgccjit.dylib) was built for newer macOS version (12.4) than being linked (12.0)
ld: can't map file, errno=22 file '/usr/local/Cellar/libgccjit/12.1.0/lib/gcc/12' for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
configure:19578: $? = 1
--8<---------------cut here---------------end--------------->8---

--8<---------------cut here---------------start------------->8---
$ brew info libgccjit
libgccjit: stable 12.1.0 (bottled), HEAD
JIT library for the GNU compiler collection
https://gcc.gnu.org/
/usr/local/Cellar/libgccjit/12.1.0 (15 files, 42.5MB) *
  Poured from bottle on 2022-08-06 at 18:06:12
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/libgccjit.rb
License: GPL-3.0-or-later with GCC-exception-3.1
==> Dependencies
Required: gmp ✔, isl ✔, libmpc ✔, mpfr ✔, zstd ✔
==> Options
--HEAD
        Install HEAD version
==> Analytics
install: 3,047 (30 days), 5,426 (90 days), 15,165 (365 days)
install-on-request: 1,452 (30 days), 2,429 (90 days), 7,580 (365 days)
build-error: 32 (30 days)
$
$ brew ls -v libgccjit | grep libgccjit.h
/usr/local/Cellar/libgccjit/12.1.0/include/libgccjit.h
$
$ brew ls -v libgccjit | grep -E 'libgccjit\.(so|dylib)$'
/usr/local/Cellar/libgccjit/12.1.0/lib/gcc/current/libgccjit.dylib
/usr/local/Cellar/libgccjit/12.1.0/lib/gcc/12/libgccjit.dylib
$
$ ls -lR /usr/local/Cellar/libgccjit/12.1.0/lib/gcc
total 0
drwxr-xr-x  4 naofumi  admin  128 May  6 16:53 12
drwxr-xr-x  4 naofumi  admin  128 May  6 16:53 current

/usr/local/Cellar/libgccjit/12.1.0/lib/gcc/12:
total 0
lrwxr-xr-x  1 naofumi  admin  28 May  6 16:53 libgccjit.0.dylib -> ../current/libgccjit.0.dylib
lrwxr-xr-x  1 naofumi  admin  26 May  6 16:53 libgccjit.dylib -> ../current/libgccjit.dylib

/usr/local/Cellar/libgccjit/12.1.0/lib/gcc/current:
total 82304
-rw-r--r--  1 naofumi  admin  42138352 Aug  6 18:06 libgccjit.0.dylib
lrwxr-xr-x  1 naofumi  admin        17 May  6 16:53 libgccjit.dylib -> libgccjit.0.dylib
$
--8<---------------cut here---------------end--------------->8---

Regards,
  Naofumi

>From bbdc35e256c7fe1de218c2d5a0f284aec330d32f Mon Sep 17 00:00:00 2001
From: Naofumi Yasufuku <[email-masked]>
Date: Sat, 6 Aug 2022 19:26:54 +0900
Subject: [PATCH] Find real libgccjit path from Homebrew installation file list
 on macOS

* configure.ac: Find canonicalized libgccjit dylib path from the first
match in 'brew ls -v libgccjit' output.
---
 configure.ac | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index 1a264275bd..77847251c2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4240,8 +4240,10 @@ AC_DEFUN
         if test -n "`$BREW --prefix --installed libgccjit 2>/dev/null`"; then
           MAC_CFLAGS="-I$(dirname $($BREW ls -v libgccjit | \
                                                 grep libgccjit.h))"
-          MAC_LIBS="-L$(dirname $($BREW ls -v libgccjit| \
-                                            grep -E 'libgccjit\.(so|dylib)$'))"
+          MAC_LIBS="-L$(dirname $(readlink -f \
+                                $($BREW ls -v libgccjit | \
+                                grep -E 'libgccjit\.(so|dylib)$' | \
+                                head -1)))"
         fi
       fi
 
-- 
2.37.1

In GNU Emacs 29.0.50 (build 1, x86_64-apple-darwin21.6.0, NS appkit-2113.60 Version 12.5 (Build 21G72))
 of 2022-08-06 built on hyperion.local
Repository revision: 28c01bd4841be69d01b6db661917f1be9830cc3d
Repository branch: master
Windowing system distributor 'Apple', version 10.3.2113
System Description:  macOS 12.5

Configured using:
 'configure --prefix=/Users/naofumi/.local/emacs/head --with-ns
 --disable-ns-self-contained --with-mailutils --with-native-compilation
 --with-xwidgets'

Configured features:
ACL GIF GLIB GMP GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP
NOTIFY KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS WEBP XIM XWIDGETS ZLIB

Important settings:
  value of $LC_MESSAGES: en_US.UTF-8
  value of $LC_TIME: C
  value of $LANG: ja_JP.UTF-8
  locale-coding-system: utf-8-hfs

Major mode: Lisp Interaction

Minor modes in effect:
  magit-auto-revert-mode: t
  editorconfig-mode: t
  delete-selection-mode: t
  global-so-long-mode: t
  global-auto-revert-mode: t
  recentf-mode: t
  global-whitespace-mode: t
  winner-mode: t
  global-git-commit-mode: t
  global-git-gutter-mode: t
  projectile-mode: t
  pyvenv-tracking-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  marginalia-mode: t
  vertico-mode: t
  savehist-mode: t
  corfu-history-mode: t
  corfu-indexed-mode: t
  corfu-terminal-mode: t
  windmove-mode: t
  disable-mouse-global-mode: t
  which-key-mode: t
  doom-modeline-mode: t
  shell-dirtrack-mode: t
  global-corfu-mode: t
  corfu-mode: t
  key-chord-mode: t
  override-global-mode: t
  straight-use-package-mode: t
  straight-package-neutering-mode: t
  straight-live-modifications-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tab-bar-history-mode: t
  tab-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/Users/naofumi/.emacs.d/straight/build-29/cmake-mode/cmake-mode hides /usr/local/share/emacs/site-lisp/cmake/cmake-mode
/Users/naofumi/.emacs.d/straight/build-29/ninja-mode/ninja-mode hides /usr/local/share/emacs/site-lisp/ninja/ninja-mode
/Users/naofumi/.emacs.d/straight/build-29/password-store/password-store hides /usr/local/share/emacs/site-lisp/pass/password-store
/Users/naofumi/.emacs.d/straight/build-29/jsonrpc/jsonrpc hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/jsonrpc
/Users/naofumi/.emacs.d/straight/build-29/transient/transient hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/transient
/Users/naofumi/.emacs.d/straight/build-29/org/ob-exp hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-exp
/Users/naofumi/.emacs.d/straight/build-29/org/ob-emacs-lisp hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-emacs-lisp
/Users/naofumi/.emacs.d/straight/build-29/org/oc hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/oc
/Users/naofumi/.emacs.d/straight/build-29/org/ob-css hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-css
/Users/naofumi/.emacs.d/straight/build-29/org/ob-lob hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-lob
/Users/naofumi/.emacs.d/straight/build-29/org/ol-irc hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-irc
/Users/naofumi/.emacs.d/straight/build-29/org/ob-forth hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-forth
/Users/naofumi/.emacs.d/straight/build-29/org/org-macs hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-macs
/Users/naofumi/.emacs.d/straight/build-29/org/ob hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob
/Users/naofumi/.emacs.d/straight/build-29/org/org-version hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-version
/Users/naofumi/.emacs.d/straight/build-29/org/ob-scheme hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-scheme
/Users/naofumi/.emacs.d/straight/build-29/org/ox hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox
/Users/naofumi/.emacs.d/straight/build-29/org/ob-C hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-C
/Users/naofumi/.emacs.d/straight/build-29/org/org-capture hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-capture
/Users/naofumi/.emacs.d/straight/build-29/org/ob-ref hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-ref
/Users/naofumi/.emacs.d/straight/build-29/org/ob-clojure hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-clojure
/Users/naofumi/.emacs.d/straight/build-29/org/org-mouse hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-mouse
/Users/naofumi/.emacs.d/straight/build-29/org/org-ctags hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-ctags
/Users/naofumi/.emacs.d/straight/build-29/org/org-entities hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-entities
/Users/naofumi/.emacs.d/straight/build-29/org/org-archive hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-archive
/Users/naofumi/.emacs.d/straight/build-29/org/ob-screen hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-screen
/Users/naofumi/.emacs.d/straight/build-29/org/ol-bibtex hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-bibtex
/Users/naofumi/.emacs.d/straight/build-29/org/ob-haskell hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-haskell
/Users/naofumi/.emacs.d/straight/build-29/org/org-loaddefs hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-loaddefs
/Users/naofumi/.emacs.d/straight/build-29/org/org-table hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-table
/Users/naofumi/.emacs.d/straight/build-29/org/ol-eww hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-eww
/Users/naofumi/.emacs.d/straight/build-29/org/ol-man hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-man
/Users/naofumi/.emacs.d/straight/build-29/org/ox-org hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-org
/Users/naofumi/.emacs.d/straight/build-29/org/org-num hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-num
/Users/naofumi/.emacs.d/straight/build-29/org/org-plot hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-plot
/Users/naofumi/.emacs.d/straight/build-29/org/ol-rmail hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-rmail
/Users/naofumi/.emacs.d/straight/build-29/org/ob-awk hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-awk
/Users/naofumi/.emacs.d/straight/build-29/org/ob-groovy hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-groovy
/Users/naofumi/.emacs.d/straight/build-29/org/ob-octave hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-octave
/Users/naofumi/.emacs.d/straight/build-29/org/org-faces hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-faces
/Users/naofumi/.emacs.d/straight/build-29/org/oc-biblatex hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/oc-biblatex
/Users/naofumi/.emacs.d/straight/build-29/org/org-colview hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-colview
/Users/naofumi/.emacs.d/straight/build-29/org/ob-R hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-R
/Users/naofumi/.emacs.d/straight/build-29/org/org-refile hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-refile
/Users/naofumi/.emacs.d/straight/build-29/org/org-timer hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-timer
/Users/naofumi/.emacs.d/straight/build-29/org/org-mobile hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-mobile
/Users/naofumi/.emacs.d/straight/build-29/org/ob-fortran hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-fortran
/Users/naofumi/.emacs.d/straight/build-29/org/ob-shell hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-shell
/Users/naofumi/.emacs.d/straight/build-29/org/ob-perl hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-perl
/Users/naofumi/.emacs.d/straight/build-29/org/ob-sqlite hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-sqlite
/Users/naofumi/.emacs.d/straight/build-29/org/oc-basic hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/oc-basic
/Users/naofumi/.emacs.d/straight/build-29/org/ob-sed hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-sed
/Users/naofumi/.emacs.d/straight/build-29/org/org-list hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-list
/Users/naofumi/.emacs.d/straight/build-29/org/ob-ruby hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-ruby
/Users/naofumi/.emacs.d/straight/build-29/org/ob-eval hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-eval
/Users/naofumi/.emacs.d/straight/build-29/org/org-habit hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-habit
/Users/naofumi/.emacs.d/straight/build-29/org/org-clock hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-clock
/Users/naofumi/.emacs.d/straight/build-29/org/org-goto hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-goto
/Users/naofumi/.emacs.d/straight/build-29/org/ox-html hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-html
/Users/naofumi/.emacs.d/straight/build-29/org/org-src hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-src
/Users/naofumi/.emacs.d/straight/build-29/org/ob-lisp hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-lisp
/Users/naofumi/.emacs.d/straight/build-29/org/ol-eshell hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-eshell
/Users/naofumi/.emacs.d/straight/build-29/org/ob-ditaa hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-ditaa
/Users/naofumi/.emacs.d/straight/build-29/org/org-pcomplete hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-pcomplete
/Users/naofumi/.emacs.d/straight/build-29/org/org-lint hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-lint
/Users/naofumi/.emacs.d/straight/build-29/org/ox-latex hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-latex
/Users/naofumi/.emacs.d/straight/build-29/org/ob-sass hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-sass
/Users/naofumi/.emacs.d/straight/build-29/org/ob-tangle hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-tangle
/Users/naofumi/.emacs.d/straight/build-29/org/ob-calc hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-calc
/Users/naofumi/.emacs.d/straight/build-29/org/ob-java hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-java
/Users/naofumi/.emacs.d/straight/build-29/org/ox-icalendar hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-icalendar
/Users/naofumi/.emacs.d/straight/build-29/org/ol-mhe hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-mhe
/Users/naofumi/.emacs.d/straight/build-29/org/org-attach-git hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-attach-git
/Users/naofumi/.emacs.d/straight/build-29/org/ox-md hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-md
/Users/naofumi/.emacs.d/straight/build-29/org/ox-beamer hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-beamer
/Users/naofumi/.emacs.d/straight/build-29/org/org-element hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-element
/Users/naofumi/.emacs.d/straight/build-29/org/oc-natbib hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/oc-natbib
/Users/naofumi/.emacs.d/straight/build-29/org/org-protocol hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-protocol
/Users/naofumi/.emacs.d/straight/build-29/org/ob-gnuplot hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-gnuplot
/Users/naofumi/.emacs.d/straight/build-29/org/org-tempo hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-tempo
/Users/naofumi/.emacs.d/straight/build-29/org/ob-latex hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-latex
/Users/naofumi/.emacs.d/straight/build-29/org/ol-w3m hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-w3m
/Users/naofumi/.emacs.d/straight/build-29/org/org-id hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-id
/Users/naofumi/.emacs.d/straight/build-29/org/ox-man hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-man
/Users/naofumi/.emacs.d/straight/build-29/org/ol-doi hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-doi
/Users/naofumi/.emacs.d/straight/build-29/org/org-feed hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-feed
/Users/naofumi/.emacs.d/straight/build-29/org/ob-julia hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-julia
/Users/naofumi/.emacs.d/straight/build-29/org/ob-lua hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-lua
/Users/naofumi/.emacs.d/straight/build-29/org/ob-table hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-table
/Users/naofumi/.emacs.d/straight/build-29/org/ob-ocaml hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-ocaml
/Users/naofumi/.emacs.d/straight/build-29/org/oc-csl hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/oc-csl
/Users/naofumi/.emacs.d/straight/build-29/org/ol-gnus hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-gnus
/Users/naofumi/.emacs.d/straight/build-29/org/org-indent hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-indent
/Users/naofumi/.emacs.d/straight/build-29/org/ob-lilypond hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-lilypond
/Users/naofumi/.emacs.d/straight/build-29/org/ob-matlab hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-matlab
/Users/naofumi/.emacs.d/straight/build-29/org/org-datetree hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-datetree
/Users/naofumi/.emacs.d/straight/build-29/org/ol-docview hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-docview
/Users/naofumi/.emacs.d/straight/build-29/org/ob-python hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-python
/Users/naofumi/.emacs.d/straight/build-29/org/ob-makefile hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-makefile
/Users/naofumi/.emacs.d/straight/build-29/org/org-duration hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-duration
/Users/naofumi/.emacs.d/straight/build-29/org/org-agenda hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-agenda
/Users/naofumi/.emacs.d/straight/build-29/org/ob-dot hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-dot
/Users/naofumi/.emacs.d/straight/build-29/org/ob-js hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-js
/Users/naofumi/.emacs.d/straight/build-29/org/ox-publish hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-publish
/Users/naofumi/.emacs.d/straight/build-29/org/org-inlinetask hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-inlinetask
/Users/naofumi/.emacs.d/straight/build-29/org/ob-org hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-org
/Users/naofumi/.emacs.d/straight/build-29/org/org-keys hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-keys
/Users/naofumi/.emacs.d/straight/build-29/org/ob-core hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-core
/Users/naofumi/.emacs.d/straight/build-29/org/org-compat hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-compat
/Users/naofumi/.emacs.d/straight/build-29/org/ol hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol
/Users/naofumi/.emacs.d/straight/build-29/org/ox-odt hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-odt
/Users/naofumi/.emacs.d/straight/build-29/org/ol-info hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-info
/Users/naofumi/.emacs.d/straight/build-29/org/ob-plantuml hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-plantuml
/Users/naofumi/.emacs.d/straight/build-29/org/ob-eshell hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-eshell
/Users/naofumi/.emacs.d/straight/build-29/org/ox-ascii hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-ascii
/Users/naofumi/.emacs.d/straight/build-29/org/ox-koma-letter hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-koma-letter
/Users/naofumi/.emacs.d/straight/build-29/org/ob-maxima hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-maxima
/Users/naofumi/.emacs.d/straight/build-29/org/org hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org
/Users/naofumi/.emacs.d/straight/build-29/org/ol-bbdb hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ol-bbdb
/Users/naofumi/.emacs.d/straight/build-29/org/org-macro hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-macro
/Users/naofumi/.emacs.d/straight/build-29/org/ob-sql hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-sql
/Users/naofumi/.emacs.d/straight/build-29/org/org-attach hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-attach
/Users/naofumi/.emacs.d/straight/build-29/org/ob-processing hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-processing
/Users/naofumi/.emacs.d/straight/build-29/org/ox-texinfo hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ox-texinfo
/Users/naofumi/.emacs.d/straight/build-29/org/org-crypt hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-crypt
/Users/naofumi/.emacs.d/straight/build-29/org/org-footnote hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/org-footnote
/Users/naofumi/.emacs.d/straight/build-29/org/ob-comint hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/org/ob-comint
/Users/naofumi/.emacs.d/straight/build-29/let-alist/let-alist hides /Users/naofumi/.local/emacs/head/share/emacs/29.0.50/lisp/emacs-lisp/let-alist

Features:
(eudc-capf eudc cus-start eudc-vars shadow sort company-oddmuse
company-keywords company-etags etags fileloop company-gtags
company-dabbrev-code company-dabbrev company-files company-clang
company-capf company-cmake company-semantic company-template
company-bbdb company mail-extr emacsbug magit-patch ispell tramp-cmds
misearch multi-isearch skk-isearch affe consult-vertico consult
compat-28 magit-bookmark bookmark bug-reference vc-hg vc-bzr vc-src
vc-sccs vc-svn vc-cvs vc-rcs log-view cape vc-git autoconf autoconf-mode
display-line-numbers editorconfig-core editorconfig-core-handle
editorconfig-fnmatch magit-extras magit-submodule magit-obsolete
magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull
magit-fetch magit-clone magit-remote magit-commit magit-sequence
magit-notes magit-worktree magit-tag magit-merge magit-branch
magit-reset magit-files magit-refs magit-status magit magit-repos
magit-apply magit-wip magit-log which-func magit-diff smerge-mode diff
magit-core magit-autorevert magit-margin magit-transient magit-process
magit-mode dired-aux gnus-dired vertico-directory cursor-sensor
vertico-repeat face-remap editorconfig skk-cursor ccc skk-sticky
skk-dcomp skk-comp skk-look skk-server skk-study skk-hint skk-cus
skk-emacs skk-macs skk-vars skk delsel so-long autorevert recentf-ext
recentf tree-widget whitespace winner git-commit magit-git magit-base
magit-section compat-27 compat-26 with-editor log-edit pcvs-util add-log
git-gutter projectile lisp-mnt pyvenv eshell esh-cmd generator esh-ext
esh-opt esh-proc esh-io esh-arg esh-module esh-groups esh-util yasnippet
marginalia vertico savehist corfu-history corfu-indexed corfu-terminal
win-switch windmove disable-mouse which-key doom-modeline
doom-modeline-segments doom-modeline-env doom-modeline-core
all-the-icons all-the-icons-faces data-material data-weathericons
data-octicons data-fileicons data-faicons data-alltheicons shrink-path f
f-shortdoc shortdoc tramp tramp-loaddefs trampver tramp-integration
tramp-compat parse-time iso8601 ls-lisp doom-tomorrow-night-theme
doom-themes doom-themes-base doom-themes-autoloads
base16-tomorrow-night-theme base16-theme base16-theme-autoloads
doom-modeline-autoloads shrink-path-autoloads all-the-icons-autoloads
vlf-setup vlf-autoloads helpful-autoloads elisp-refs-autoloads
which-key-autoloads disable-mouse-autoloads multiple-cursors-autoloads
shell-pop term disp-table shell pcomplete ehelp shell-pop-autoloads
win-switch-autoloads w3m-autoloads multi-vterm-autoloads vterm-autoloads
multi-term-autoloads ace-link avy ace-link-autoloads
ace-jump-buffer-autoloads affe-autoloads cape-autoloads kind-icon
svg-lib color svg xml kind-icon-autoloads svg-lib-autoloads
corfu-terminal-autoloads popon popon-autoloads corfu-quick corfu-info
corfu corfu-autoloads vertico-autoloads orderless orderless-autoloads
embark-consult-autoloads embark-autoloads consult-yasnippet-autoloads
consult-lsp-autoloads consult-eglot-autoloads consult-dir-autoloads
consult-ag-autoloads consult-autoloads marginalia-autoloads migemo
migemo-autoloads visual-regexp-steroids-autoloads
visual-regexp-autoloads symbol-overlay-autoloads wgrep-ag-autoloads
ag-autoloads rg files-x vc vc-dispatcher rg-info-hack rg-menu transient
compat rg-ibuffer rg-result wgrep-rg wgrep rg-history rg-header ibuf-ext
ibuffer ibuffer-loaddefs grep cus-edit cus-load rg-autoloads
wgrep-autoloads smart-jump-lisp-mode smart-jump-elisp-mode smart-jump
smart-jump-autoloads dumb-jump popup dash s hydra advice lv
dumb-jump-autoloads popup-autoloads dap-mode-autoloads
lsp-docker-autoloads yaml-autoloads lsp-treemacs-autoloads
treemacs-autoloads cfrs-autoloads posframe-autoloads hydra-autoloads
pfuture-autoloads ace-window-autoloads avy-autoloads bui-autoloads
lsp-mode-autoloads lv-autoloads ht-autoloads eglot array filenotify
jsonrpc ert pp ewoc debug backtrace find-func xref flymake-proc flymake
compile comint ansi-color ring project imenu eglot-autoloads
jsonrpc-autoloads imenu-list-autoloads devdocs-autoloads
android-mode-autoloads grip-mode-autoloads
markdown-preview-mode-autoloads web-server-autoloads
markdown-toc-autoloads gradle-mode-autoloads ninja-mode-autoloads
meson-mode-autoloads cmake-mode-autoloads powershell-autoloads
csv-mode-autoloads toml-mode-autoloads yaml-mode-autoloads
groovy-mode-autoloads kotlin-mode-autoloads rng-nxml rng-valid rng-loc
rng-uri rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns
nxml-mode nxml-outln nxml-rap sgml-mode facemenu dom nxml-util nxml-enc
xmltok web-mode-autoloads go-mode-autoloads rustic-autoloads
xterm-color-autoloads spinner-autoloads markdown-mode-autoloads
let-alist-autoloads rust-mode-autoloads haskell-mode-autoloads
ein-autoloads polymode-autoloads deferred-autoloads request-autoloads
anaphora-autoloads websocket-autoloads elpy-autoloads
yasnippet-autoloads highlight-indentation-autoloads company-autoloads
pipenv-autoloads load-env-vars-autoloads pyvenv-autoloads
slime-autoloads macrostep-autoloads editorconfig-autoloads
projectile-autoloads git-timemachine-autoloads git-modes-autoloads
git-gutter-autoloads magit-autoloads git-commit-autoloads
transient-autoloads mu4e-maildirs-extension-autoloads mu4e-autoloads
notmuch notmuch-tree notmuch-jump notmuch-hello wid-edit notmuch-show
notmuch-print notmuch-crypto notmuch-mua notmuch-message notmuch-draft
notmuch-maildir-fcc notmuch-address notmuch-company notmuch-parser
format-spec notmuch-wash diff-mode coolj goto-addr thingatpt icalendar
diary-lib diary-loaddefs cal-menu calendar cal-loaddefs notmuch-tag crm
notmuch-lib notmuch-version notmuch-compat hl-line mm-view mml-smime
smime gnutls dig notmuch-autoloads pcase message yank-media puny dired
dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 gnus-util
text-property-search time-date mm-decode mm-bodies mm-encode mail-parse
rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mail-utils ox-gfm-autoloads
org-tree-slide-autoloads toc-org-autoloads org-roam-autoloads
magit-section-autoloads org-superstar-autoloads org-contrib-autoloads
pass-autoloads f-autoloads dash-autoloads password-store-otp-autoloads
password-store-autoloads with-editor-autoloads s-autoloads
auth-source-pass epg-config sr-speedbar-autoloads recentf-ext-autoloads
cua-base dabbrev w32-ime-autoloads ddskk-autoloads cdb-autoloads
ccc-autoloads edmacro kmacro exec-path-from-shell
exec-path-from-shell-autoloads finder-inf epkg-autoloads
closql-autoloads emacsql-sqlite-autoloads emacsql-autoloads
package-utils package browse-url url url-proxy url-privacy url-expand
url-methods url-history url-cookie generate-lisp-file url-domsuf
url-util mailcap url-handlers url-parse auth-source eieio eieio-core
password-cache json map byte-opt url-vars package-utils-autoloads
restart-emacs desktop frameset server restart-emacs-autoloads
use-package-chords bind-chord use-package-chords-autoloads
bind-chord-autoloads key-chord comp comp-cstr warnings icons rx
key-chord-autoloads diminish diminish-autoloads compat-autoloads
use-package use-package-ensure use-package-delight use-package-diminish
use-package-bind-key bind-key easy-mmode use-package-core
use-package-autoloads bind-key-autoloads straight-x straight-autoloads
cl-seq info cl-extra help-mode straight subr-x cl-macs gv bytecomp
byte-compile cconv cl-loaddefs cl-lib japan-util rmc iso-transl tooltip
eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type
elisp-mode mwheel term/ns-win ns-win ucs-normalize mule-util
term/common-win tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode lisp-mode prog-mode register
page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs faces cus-face macroexp files window
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget keymap hashtable-print-readable backquote threads
xwidget-internal kqueue cocoa ns lcms2 multi-tty make-network-process
native-compile emacs)

Memory information:
((conses 16 865696 208878)
 (symbols 48 41599 39)
 (strings 32 210249 108090)
 (string-bytes 1 8651906)
 (vectors 16 142871)
 (vector-slots 8 2833978 134218)
 (floats 8 1438 2225)
 (intervals 56 18670 7917)
 (buffers 992 49))