emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals-release/ada-mode 8660d5e9b2 1/2: Release 8.0.5 packagin


From: Stephen Leake
Subject: [elpa] externals-release/ada-mode 8660d5e9b2 1/2: Release 8.0.5 packaging fixes
Date: Wed, 8 Feb 2023 10:08:02 -0500 (EST)

branch: externals-release/ada-mode
commit 8660d5e9b2219208e5d43b979f5fb57fbb518924
Author: Stephen Leake <stephen_leake@stephe-leake.org>
Commit: Stephen Leake <stephen_leake@stephe-leake.org>

    Release 8.0.5 packaging fixes
---
 .elpaignore             |   1 +
 .gitignore              |   6 ---
 Alire.make              |   1 -
 NEWS                    |   5 +++
 README                  |   2 +-
 ada-mode.el             |   6 +--
 ada-mode.texi           |  18 ++++----
 ada_mode_wisi_parse.gpr | 110 ++++++++++++++++++++++++++++++++++++++++++++++++
 build.sh                |   9 ++--
 install.sh              |   2 +-
 10 files changed, 134 insertions(+), 26 deletions(-)

diff --git a/.elpaignore b/.elpaignore
new file mode 100644
index 0000000000..ce56bc2095
--- /dev/null
+++ b/.elpaignore
@@ -0,0 +1 @@
+alire.toml
diff --git a/.gitignore b/.gitignore
index d9f97eb120..f65844eda1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,10 +1,4 @@
 *.elc
-*.exe
-*.parse_table
 ada-mode-autoloads.el
 ada-mode-pkg.el
-Makefile.conf
 ada_annex_p_lr1_parse_table.txt
-ada_mode_wisi_parse.gpr
-check.gpr
-obj/
diff --git a/Alire.make b/Alire.make
index f7e9a89a24..910183349d 100644
--- a/Alire.make
+++ b/Alire.make
@@ -7,5 +7,4 @@ include 
$(STEPHES_ADA_LIBRARY_ALIRE_PREFIX)/build/alire_rules.make
 include $(WISITOKEN_ALIRE_PREFIX)/build/wisitoken_alire_rules.make
 
 # Local Variables:
-# eval: (load-file "prj.el")
 # End:
diff --git a/NEWS b/NEWS
index c5830f9018..ad53c680fe 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,11 @@ Please send ada-mode bug reports to bug-gnu-emacs@gnu.org, with
 'ada-mode' in the subject. If possible, use M-x report-emacs-bug.
 
 
+Ada Mode 8.0.5
+3 Feb 2020
+
+** Alire and ELPA packaging fixes.
+
 Ada Mode 8.0.4
 16 Jan 2023
 
diff --git a/README b/README
index 7db7121651..92144ab945 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-Emacs Ada mode version 8.0.4
+Emacs Ada mode version 8.0.5
 
 Ada mode provides auto-casing, fontification, navigation, and
 indentation for Ada source code files.
diff --git a/ada-mode.el b/ada-mode.el
index a67b46aa1b..7e1f09c07e 100644
--- a/ada-mode.el
+++ b/ada-mode.el
@@ -6,8 +6,8 @@
 ;; Maintainer: Stephen Leake <stephen_leake@stephe-leake.org>
 ;; Keywords: languages
 ;;  ada
-;; Version: 8.0.4
-;; package-requires: ((uniquify-files "1.0.4") (wisi "4.2.2") (gnat-compiler 
"1.0.1") (emacs "25.3"))
+;; Version: 8.0.5
+;; package-requires: ((uniquify-files "1.0.4") (wisi "4.2.2") (gnat-compiler 
"1.0.2") (emacs "25.3"))
 ;; url: https://www.nongnu.org/ada-mode/
 ;;
 ;; This file is part of GNU Emacs.
@@ -117,7 +117,7 @@
 (defun ada-mode-version ()
   "Return Ada mode version."
   (interactive)
-  (let ((version-string "8.0.4"))
+  (let ((version-string "8.0.5"))
     (if (called-interactively-p 'interactive)
        (message version-string)
       version-string)))
diff --git a/ada-mode.texi b/ada-mode.texi
index 84335451ed..456e36f657 100644
--- a/ada-mode.texi
+++ b/ada-mode.texi
@@ -259,14 +259,14 @@ ELPA package ada-ref-man.
 @node Ada executables
 @section Ada executables
 
-Ada mode requires either the external parser and gpr-query, or the Ada
+Ada mode requires either the wisi parser and gpr-query, or the Ada
 language server @code{ada_language_server}. All of these can be
 installed via the Alire Ada package manager
 (@url{https://alire.ada.dev/}), or compiled directly.
 
 See the gpr-query package for information on compiling gpr-query.
 
-To install the external parser,
+To install the wisi parser:
 
 @example
 cd ~/.emacs.d/elpa/ada-mode-i.j.xx
@@ -275,19 +275,19 @@ cd ~/.emacs.d/elpa/ada-mode-i.j.xx
 @end example
 
 By default, @file{install.sh} installs the parser executable in
-@code{$HOME/.local/bin}. If you want to install somewhere else, use
-@code{install.sh --prefix=<dir>}.
+@code{$HOME/.local/bin}, so you must put that in @code{PATH}. If you
+want to install somewhere else, use @code{install.sh --prefix=<dir>}.
 
 These scripts default to use Alire (@url{https://alire.ada.dev/}) if
 it is found on @code{PATH}; otherwise they use @code{gprbuild}.
 
 One step in build.sh is to run @code{wisitoken-bnf-generate} to
 generate the LR1 parse table for the parser. This can take up to 5.4GB
-of memory; if your machine does not have that much, you can download
-the @file{ada_annex_p_lr1_parse_table.txt} from
-@url{https://download.savannah.nongnu.org/releases/ada-mode/} - be
-sure to get the version that matches ada-mode, and put it in the same
-directory as @file{ada_mode_wisi_lr1_parse}.
+of memory during the generate process; if your machine does not have
+that much, you can download the @file{ada_annex_p_lr1_parse_table.txt}
+from @url{https://download.savannah.nongnu.org/releases/ada-mode/} -
+be sure to get the version that matches the current ada-mode, and put
+it in the same directory as @file{ada_mode_wisi_lr1_parse}.
 
 @node Known versions
 @section Known versions
diff --git a/ada_mode_wisi_parse.gpr b/ada_mode_wisi_parse.gpr
new file mode 100644
index 0000000000..2f2049c503
--- /dev/null
+++ b/ada_mode_wisi_parse.gpr
@@ -0,0 +1,110 @@
+--  Abstract :
+--
+--  build ada_mode_wisi_parse and other executables
+--
+--  Copyright (C) 2014, 2018 - 2020, 2022 Free Software Foundation, Inc.
+--
+--  This program is free software; you can redistribute it and/or
+--  modify it under terms of the GNU General Public License as
+--  published by the Free Software Foundation; either version 3, or (at
+--  your option) any later version. This program is distributed in the
+--  hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+--  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+--  PURPOSE. See the GNU General Public License for more details. You
+--  should have received a copy of the GNU General Public License
+--  distributed with this program; see file COPYING. If not, write to
+--  the Free Software Foundation, 51 Franklin Street, Suite 500, Boston,
+--  MA 02110-1335, USA.
+
+with "standard_common";
+with "wisi";
+project Ada_Mode_Wisi_Parse is
+
+   for Main use
+     ("ada_mode_wisi_lalr_parse.ads",
+      "ada_mode_wisi_lr1_parse.ads",
+      "run_ada_lalr_parse.ads",
+      "run_ada_lr1_parse.ads"
+     );
+
+   for Source_Dirs use (".");
+   for Create_Missing_Dirs use "True";
+
+   case Standard_Common.Profile is
+   when "On" =>
+      for Object_Dir use "obj_pro";
+      for Exec_Dir use "exec_pro";
+
+   when "Off" =>
+      for Object_Dir use "obj";
+      for Exec_Dir use "bin";
+   end case;
+
+   for Languages use ("Ada", "C");
+
+   package Compiler is
+
+      case Standard_Common.Build is
+      when "Debug" =>
+         for Default_Switches ("Ada") use
+           Standard_Common.Compiler.Common_Switches &
+           Standard_Common.Compiler.Style_Checks &
+           Standard_Common.Compiler.Debug_Switches;
+
+         --  Generated files; lines too long, don't need debug
+         for Switches ("ada_process_actions.adb") use
+           Standard_Common.Compiler.Common_Switches &
+           Standard_Common.Compiler.Base_Style_Checks &
+           Standard_Common.Compiler.Base_Release_Switches & ("-O1", 
"-gnat2020");
+
+         for Switches ("ada_process_main.adb") use
+           Standard_Common.Compiler.Common_Switches &
+           Standard_Common.Compiler.Base_Style_Checks &
+           Standard_Common.Compiler.Base_Release_Switches & ("-O1", 
"-gnat2020");
+
+         for Default_Switches ("C") use 
Standard_Common.Compiler.Debug_Switches_C;
+
+      when "Normal" =>
+         for Default_Switches ("Ada") use
+           Standard_Common.Compiler.Common_Switches &
+           Standard_Common.Compiler.Style_Checks &
+           Standard_Common.Compiler.Release_Switches;
+
+         for Switches ("ada_process_actions.adb") use
+           Standard_Common.Compiler.Common_Switches &
+           Standard_Common.Compiler.Base_Style_Checks &
+           Standard_Common.Compiler.Base_Release_Switches & ("-O1", 
"-gnat2020");
+
+         for Switches ("ada_process_main.adb") use
+           Standard_Common.Compiler.Common_Switches &
+           Standard_Common.Compiler.Base_Style_Checks &
+           Standard_Common.Compiler.Base_Release_Switches & ("-O1", 
"-gnat2020");
+
+         for Default_Switches ("C") use 
Standard_Common.Compiler.Release_Switches_C;
+      end case;
+
+   end Compiler;
+
+   package Builder is
+      --  Specifying some configuration pragmas can reduce parse times
+      --  by 10% or so, on some systems. But doing so only here causes
+      --  recompiling of wisitoken. If we add Global_ or Local_
+      --  Configuration_Pragmas in wisitoken.gpr, we get compilation
+      --  errors there. So we leave it up to users to patch this if
+      --  they want it.
+      --  for Global_Configuration_Pragmas use "config.pragmas";
+
+      for Global_Compilation_Switches ("Ada") use 
Standard_Common.Builder'Global_Compilation_Switches ("Ada");
+
+   end Builder;
+
+   package Binder is
+      for default_switches ("Ada") use ("-E"); -- symbolic traceback
+   end Binder;
+
+   package Install is
+      for Required_Artifacts ("bin") use
+        ("ada_annex_p_lr1_parse_table.txt");
+   end Install;
+
+end Ada_Mode_Wisi_Parse;
diff --git a/build.sh b/build.sh
index 08b8ce7094..5e2e424163 100755
--- a/build.sh
+++ b/build.sh
@@ -12,7 +12,7 @@ if type alr; then
     echo "building ada-mode executables via Alire"
 
     # alr get --build builds dependencies with release, but top with 
development.
-    alr get emacs_ada_mode~8.0.3
+    alr get emacs_ada_mode~8.0.5
     cd emacs_ada_mode_*; alr build --release
     
 elif type gprbuild; then
@@ -37,12 +37,11 @@ elif type gprbuild; then
     gprbuild -p -j8 -P $WISI_DIR/wisi.gpr wisitoken-bnf-generate
 
     # We generate the Ada LR1 parse table .txt file here, because it is too
-    # large to keep in ELPA. The code generated by wisitoken-bnf-generate
+    # large to keep in ELPA. The C code generated by wisitoken-bnf-generate
     # is in ELPA, because it requires the re2c tool, which we don't expect
-    # users to have installed. The LR1 parse table for gpr is in the Ada
-    # code, so we don't need to generate that here.
+    # users to have installed (although we do expect Alire to install it).
     echo "generate Ada LR1 parse table"
-    $WISI_DIR/wisitoken-bnf-generate --task_count 1 ada_annex_p.wy
+    $WISI_DIR/wisitoken-bnf-generate ada_annex_p.wy
 
     gprbuild -p -j8 -P ada_mode_wisi_parse.gpr -aP $WISI_DIR "$@"
 
diff --git a/install.sh b/install.sh
index 8645b48b4a..2c95f9bc05 100755
--- a/install.sh
+++ b/install.sh
@@ -12,7 +12,7 @@ else
     PREFIX=$1
 fi
     
-echo "installing ada-mode executables to" $PREFIX/bin
+echo "installing ada-mode executables to" $PREFIX/bin "; ensure that is in 
PATH"
 
 # No need for gprinstall; we only need the executable 
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]