Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] New package: ghdl-pyghdl-1.0.0
@ 2021-12-18 14:50 Aloz1
  2021-12-18 15:02 ` Aloz1
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Aloz1 @ 2021-12-18 14:50 UTC (permalink / raw)
  To: ml

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

There is a new pull request by Aloz1 against master on the void-packages repository

https://github.com/Aloz1/void-packages add-pyghdl
https://github.com/void-linux/void-packages/pull/34610

New package: ghdl-pyghdl-1.0.0
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/34610.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-add-pyghdl-34610.patch --]
[-- Type: text/x-diff, Size: 18531 bytes --]

From c75fae859f9f587d22d16ada38830e7c07aab561 Mon Sep 17 00:00:00 2001
From: Aloz1 <kno0001@gmail.com>
Date: Sun, 19 Dec 2021 01:40:01 +1100
Subject: [PATCH] New package: ghdl-pyghdl-1.0.0

---
 srcpkgs/ghdl-pyghdl                           |   1 +
 .../replace-pydecor-with-pyTooling.patch      | 453 ++++++++++++++++++
 srcpkgs/ghdl/template                         |  21 +-
 3 files changed, 472 insertions(+), 3 deletions(-)
 create mode 120000 srcpkgs/ghdl-pyghdl
 create mode 100644 srcpkgs/ghdl/patches/replace-pydecor-with-pyTooling.patch

diff --git a/srcpkgs/ghdl-pyghdl b/srcpkgs/ghdl-pyghdl
new file mode 120000
index 000000000000..397362bd8e2a
--- /dev/null
+++ b/srcpkgs/ghdl-pyghdl
@@ -0,0 +1 @@
+ghdl
\ No newline at end of file
diff --git a/srcpkgs/ghdl/patches/replace-pydecor-with-pyTooling.patch b/srcpkgs/ghdl/patches/replace-pydecor-with-pyTooling.patch
new file mode 100644
index 000000000000..00dc235d0f48
--- /dev/null
+++ b/srcpkgs/ghdl/patches/replace-pydecor-with-pyTooling.patch
@@ -0,0 +1,453 @@
+From be9a134364bc79cf1e8e9968d50cd296a7975ecf Mon Sep 17 00:00:00 2001
+From: Patrick Lehmann <Patrick.Lehmann@plc2.de>
+Date: Sun, 12 Dec 2021 14:35:51 +0100
+Subject: [PATCH] Changed export decorator from pydecor to pyTooling.Decorators
+
+---
+ pyGHDL/cli/lsp.py                  | 16 ++++++----------
+ pyGHDL/dom/DesignUnit.py           |  2 +-
+ pyGHDL/dom/InterfaceItem.py        |  2 +-
+ pyGHDL/dom/Misc.py                 |  2 +-
+ pyGHDL/dom/__init__.py             |  2 +-
+ pyGHDL/libghdl/__init__.py         |  4 +++-
+ pyGHDL/libghdl/_decorator.py       |  2 +-
+ pyGHDL/libghdl/errorout.py         |  2 +-
+ pyGHDL/libghdl/errorout_console.py |  2 +-
+ pyGHDL/libghdl/errorout_memory.py  |  2 +-
+ pyGHDL/libghdl/files_map.py        |  2 +-
+ pyGHDL/libghdl/files_map_editor.py |  2 +-
+ pyGHDL/libghdl/libraries.py        |  2 +-
+ pyGHDL/libghdl/name_table.py       |  2 +-
+ pyGHDL/libghdl/std_names.py        |  2 +-
+ pyGHDL/libghdl/utils.py            |  2 +-
+ pyGHDL/libghdl/vhdl/elocations.py  |  2 +-
+ pyGHDL/libghdl/vhdl/flists.py      |  2 +-
+ pyGHDL/libghdl/vhdl/formatters.py  |  2 +-
+ pyGHDL/libghdl/vhdl/lists.py       |  2 +-
+ pyGHDL/libghdl/vhdl/nodes.py       |  2 +-
+ pyGHDL/libghdl/vhdl/nodes_meta.py  |  2 +-
+ pyGHDL/libghdl/vhdl/nodes_utils.py |  2 +-
+ pyGHDL/libghdl/vhdl/parse.py       |  2 +-
+ pyGHDL/libghdl/vhdl/scanner.py     |  2 +-
+ pyGHDL/libghdl/vhdl/sem.py         |  2 +-
+ pyGHDL/libghdl/vhdl/sem_lib.py     |  2 +-
+ pyGHDL/libghdl/vhdl/tokens.py      |  2 +-
+ scripts/pnodespy.py                | 13 ++++++++-----
+ 29 files changed, 43 insertions(+), 42 deletions(-)
+
+diff --git a/pyGHDL/cli/lsp.py b/pyGHDL/cli/lsp.py
+index 44d55635..58da6c90 100644
+--- a/pyGHDL/cli/lsp.py
++++ b/pyGHDL/cli/lsp.py
+@@ -39,7 +39,7 @@ from logging import getLogger, DEBUG, INFO, ERROR, basicConfig
+ import sys
+ import os
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ import pyGHDL.libghdl as libghdl
+ from pyGHDL.libghdl     import version, errorout_console
+@@ -62,16 +62,12 @@ def __rotate_log_files(basename: str, num: int):
+ 
+ def _generateCLIParser() -> ArgumentParser:
+     """Creates an CLI argument parser based on ``argparse``."""
+-    parser = ArgumentParser(description="VHDL Language Protocol Server. Find info about clients in `ghdl/ghdl-language-server <https://github.com/ghdl/ghdl-language-server>`__.")
+-    parser.add_argument(
+-        "--version", "-V", action="version", version="%(prog)s " + version.__version__
+-    )
+-    parser.add_argument(
+-        "--verbose", "-v", action="count", default=0, help="Show debug output"
+-    )
+-    parser.add_argument(
+-        "--log-file", help="Redirect logs to the given file instead of stderr"
++    parser = ArgumentParser(
++        description="VHDL Language Protocol Server. Find info about clients in `ghdl/ghdl-language-server <https://github.com/ghdl/ghdl-language-server>`__."
+     )
++    parser.add_argument("--version", "-V", action="version", version="%(prog)s " + version.__version__)
++    parser.add_argument("--verbose", "-v", action="count", default=0, help="Show debug output")
++    parser.add_argument("--log-file", help="Redirect logs to the given file instead of stderr")
+     parser.add_argument("--trace-file", help="Save RPC data to FILE.in and FILE.out (overrides :envvar:`GHDL_LS_TRACE`)")
+     parser.add_argument("--input", "-i", help="Read request from file")
+     parser.add_argument(
+diff --git a/pyGHDL/dom/DesignUnit.py b/pyGHDL/dom/DesignUnit.py
+index 35ee8132..e9a8e7ab 100644
+--- a/pyGHDL/dom/DesignUnit.py
++++ b/pyGHDL/dom/DesignUnit.py
+@@ -39,7 +39,7 @@ This module contains all DOM classes for VHDL's design units (:class:`entity <En
+ 
+ 
+ """
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyVHDLModel.VHDLModel import Entity        as VHDLModel_Entity
+ from pyVHDLModel.VHDLModel import Architecture  as VHDLModel_Architecture
+diff --git a/pyGHDL/dom/InterfaceItem.py b/pyGHDL/dom/InterfaceItem.py
+index 94f43687..ec37d56a 100644
+--- a/pyGHDL/dom/InterfaceItem.py
++++ b/pyGHDL/dom/InterfaceItem.py
+@@ -31,7 +31,7 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor                import export
++from pyTooling.Decorators   import export
+ 
+ from pyVHDLModel.VHDLModel  import PortSignalInterfaceItem as VHDLModel_PortSignalInterfaceItem
+ from pyVHDLModel.VHDLModel  import GenericConstantInterfaceItem as VHDLModel_GenericConstantInterfaceItem
+diff --git a/pyGHDL/dom/Misc.py b/pyGHDL/dom/Misc.py
+index bf8bc4be..90181e8a 100644
+--- a/pyGHDL/dom/Misc.py
++++ b/pyGHDL/dom/Misc.py
+@@ -38,7 +38,7 @@
+ from pathlib import Path
+ from typing  import Any
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyVHDLModel.VHDLModel  import Design        as VHDLModel_Design
+ from pyVHDLModel.VHDLModel  import Library       as VHDLModel_Library
+diff --git a/pyGHDL/dom/__init__.py b/pyGHDL/dom/__init__.py
+index 39ba78ba..f3005bd9 100644
+--- a/pyGHDL/dom/__init__.py
++++ b/pyGHDL/dom/__init__.py
+@@ -31,6 +31,6 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor            import export
++from pyTooling.Decorators import export
+ 
+ __all__ = []
+diff --git a/pyGHDL/libghdl/__init__.py b/pyGHDL/libghdl/__init__.py
+index fc201e0e..fa717098 100644
+--- a/pyGHDL/libghdl/__init__.py
++++ b/pyGHDL/libghdl/__init__.py
+@@ -38,9 +38,11 @@ import sys
+ from pathlib import Path
+ from shutil import which
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl._types import Iir
++
++# from pyGHDL.libghdl._decorator import BindToLibGHDL
+ from pyGHDL.libghdl.version import __version__
+ 
+ 
+diff --git a/pyGHDL/libghdl/_decorator.py b/pyGHDL/libghdl/_decorator.py
+index bc4b0df6..08680704 100644
+--- a/pyGHDL/libghdl/_decorator.py
++++ b/pyGHDL/libghdl/_decorator.py
+@@ -33,7 +33,7 @@
+ 
+ from typing import Callable, List
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ 
+ @export
+diff --git a/pyGHDL/libghdl/errorout.py b/pyGHDL/libghdl/errorout.py
+index a038fa77..0ec338cf 100644
+--- a/pyGHDL/libghdl/errorout.py
++++ b/pyGHDL/libghdl/errorout.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ from pyGHDL.libghdl import libghdl
+ 
+ @export
+diff --git a/pyGHDL/libghdl/errorout_console.py b/pyGHDL/libghdl/errorout_console.py
+index 3df82dd9..f4f2c3ed 100644
+--- a/pyGHDL/libghdl/errorout_console.py
++++ b/pyGHDL/libghdl/errorout_console.py
+@@ -32,7 +32,7 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/errorout_memory.py b/pyGHDL/libghdl/errorout_memory.py
+index 26152a9d..fdbf0ed8 100644
+--- a/pyGHDL/libghdl/errorout_memory.py
++++ b/pyGHDL/libghdl/errorout_memory.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int8, c_int32, c_char_p, Structure
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import ErrorIndex
+diff --git a/pyGHDL/libghdl/files_map.py b/pyGHDL/libghdl/files_map.py
+index 71ed32e9..06b5b626 100644
+--- a/pyGHDL/libghdl/files_map.py
++++ b/pyGHDL/libghdl/files_map.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_void_p
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import NameId, SourceFileEntry
+diff --git a/pyGHDL/libghdl/files_map_editor.py b/pyGHDL/libghdl/files_map_editor.py
+index b5c0184c..fd0cdbb8 100644
+--- a/pyGHDL/libghdl/files_map_editor.py
++++ b/pyGHDL/libghdl/files_map_editor.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int32, c_char_p, c_bool
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import SourceFileEntry
+diff --git a/pyGHDL/libghdl/libraries.py b/pyGHDL/libghdl/libraries.py
+index 0c302ff4..41254213 100644
+--- a/pyGHDL/libghdl/libraries.py
++++ b/pyGHDL/libghdl/libraries.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int32
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/name_table.py b/pyGHDL/libghdl/name_table.py
+index 74bfbf11..099f9f37 100644
+--- a/pyGHDL/libghdl/name_table.py
++++ b/pyGHDL/libghdl/name_table.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_char_p
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import NameId
+diff --git a/pyGHDL/libghdl/std_names.py b/pyGHDL/libghdl/std_names.py
+index e716d86c..5667b746 100644
+--- a/pyGHDL/libghdl/std_names.py
++++ b/pyGHDL/libghdl/std_names.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ 
+ @export
+diff --git a/pyGHDL/libghdl/utils.py b/pyGHDL/libghdl/utils.py
+index b61386bb..b09e68e2 100644
+--- a/pyGHDL/libghdl/utils.py
++++ b/pyGHDL/libghdl/utils.py
+@@ -34,7 +34,7 @@
+ from ctypes import byref
+ from typing import List, Any, Generator
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl._decorator import EnumLookupTable
+ from pyGHDL.libghdl._types import NameId
+diff --git a/pyGHDL/libghdl/vhdl/elocations.py b/pyGHDL/libghdl/vhdl/elocations.py
+index f6dbb262..18670635 100644
+--- a/pyGHDL/libghdl/vhdl/elocations.py
++++ b/pyGHDL/libghdl/vhdl/elocations.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ from pyGHDL.libghdl import libghdl
+ 
+ Get_Start_Location = libghdl.vhdl__elocations__get_start_location
+diff --git a/pyGHDL/libghdl/vhdl/flists.py b/pyGHDL/libghdl/vhdl/flists.py
+index 9cb3e211..70387c7e 100644
+--- a/pyGHDL/libghdl/vhdl/flists.py
++++ b/pyGHDL/libghdl/vhdl/flists.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int32
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/vhdl/formatters.py b/pyGHDL/libghdl/vhdl/formatters.py
+index 621b0ea7..fbe961ab 100644
+--- a/pyGHDL/libghdl/vhdl/formatters.py
++++ b/pyGHDL/libghdl/vhdl/formatters.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int32, c_char_p
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/vhdl/lists.py b/pyGHDL/libghdl/vhdl/lists.py
+index 42a0ebf6..a1fafd70 100644
+--- a/pyGHDL/libghdl/vhdl/lists.py
++++ b/pyGHDL/libghdl/vhdl/lists.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int32, c_bool, POINTER, Structure
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/vhdl/nodes.py b/pyGHDL/libghdl/vhdl/nodes.py
+index 659813d1..919a4eab 100644
+--- a/pyGHDL/libghdl/vhdl/nodes.py
++++ b/pyGHDL/libghdl/vhdl/nodes.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ from pyGHDL.libghdl import libghdl
+ 
+ Null_Iir = 0
+diff --git a/pyGHDL/libghdl/vhdl/nodes_meta.py b/pyGHDL/libghdl/vhdl/nodes_meta.py
+index 5ec7f950..f9059403 100644
+--- a/pyGHDL/libghdl/vhdl/nodes_meta.py
++++ b/pyGHDL/libghdl/vhdl/nodes_meta.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import IirKind
+ 
+diff --git a/pyGHDL/libghdl/vhdl/nodes_utils.py b/pyGHDL/libghdl/vhdl/nodes_utils.py
+index e840d524..b228df24 100644
+--- a/pyGHDL/libghdl/vhdl/nodes_utils.py
++++ b/pyGHDL/libghdl/vhdl/nodes_utils.py
+@@ -32,7 +32,7 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl, Iir
+ 
+diff --git a/pyGHDL/libghdl/vhdl/parse.py b/pyGHDL/libghdl/vhdl/parse.py
+index a71b2aea..85c7276b 100644
+--- a/pyGHDL/libghdl/vhdl/parse.py
++++ b/pyGHDL/libghdl/vhdl/parse.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_bool
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/vhdl/scanner.py b/pyGHDL/libghdl/vhdl/scanner.py
+index 36b52cb0..12d6f0e2 100644
+--- a/pyGHDL/libghdl/vhdl/scanner.py
++++ b/pyGHDL/libghdl/vhdl/scanner.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int, c_bool
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import SourceFileEntry, NameId
+diff --git a/pyGHDL/libghdl/vhdl/sem.py b/pyGHDL/libghdl/vhdl/sem.py
+index e1d8c7a0..f0731d6b 100644
+--- a/pyGHDL/libghdl/vhdl/sem.py
++++ b/pyGHDL/libghdl/vhdl/sem.py
+@@ -32,7 +32,7 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/vhdl/sem_lib.py b/pyGHDL/libghdl/vhdl/sem_lib.py
+index 87a07f48..f00a88e5 100644
+--- a/pyGHDL/libghdl/vhdl/sem_lib.py
++++ b/pyGHDL/libghdl/vhdl/sem_lib.py
+@@ -32,7 +32,7 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import SourceFileEntry
+diff --git a/pyGHDL/libghdl/vhdl/tokens.py b/pyGHDL/libghdl/vhdl/tokens.py
+index a846ea62..9acb8981 100644
+--- a/pyGHDL/libghdl/vhdl/tokens.py
++++ b/pyGHDL/libghdl/vhdl/tokens.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ 
+ @export
+diff --git a/scripts/pnodespy.py b/scripts/pnodespy.py
+index 3f287580..718aba7b 100755
+--- a/scripts/pnodespy.py
++++ b/scripts/pnodespy.py
+@@ -32,11 +32,14 @@ def print_enum(name, vals):
+ 
+ def print_file_header():
+     print(dedent("""\
+-        # Auto generated Python source file from Ada sources
+-        # Call 'make' in 'src/vhdl' to regenerate:
+-        #
+-        from pydecor import export
+-    """), end='')
++			# Auto generated Python source file from Ada sources
++			# Call 'make' in 'src/vhdl' to regenerate:
++			#
++        """) + "{sysImports}from pyTooling.Decorators import export\n{moduleImports}".format(
++            sysImports = "from enum import IntEnum, unique\n" if includeIntEnumUnique else "",
++            moduleImports = "\nfrom pyGHDL.libghdl._decorator import BindToLibGHDL\n" if includeBindToLibGHDL else "",
++        )
++    )
+ 
+ 
+ def do_class_kinds():
+-- 
+2.34.1
+
diff --git a/srcpkgs/ghdl/template b/srcpkgs/ghdl/template
index e756d8c3cd87..185595e21789 100644
--- a/srcpkgs/ghdl/template
+++ b/srcpkgs/ghdl/template
@@ -7,7 +7,7 @@
 pkgname=ghdl
 reverts="20181129_1"
 version=1.0.0
-revision=1
+revision=2
 build_style=configure
 configure_args="--prefix=/usr --srcdir=.. --incdir=lib/ghdl/include"
 makedepends="zlib-devel"
@@ -20,11 +20,12 @@ checksum=cb424766fbe831ff41bec84016a6af0406d735c272b0b639d507c3503df30495
 nocross=yes
 make_check=extended
 
-build_options="llvm mcode"
-build_options_default="llvm"
+build_options="llvm mcode python"
+build_options_default="llvm python"
 
 desc_option_llvm="Build the portable LLVM backend"
 desc_option_mcode="Build the x86-only mcode backend"
+desc_option_python="Build the pyGHDL wrapper to libghdl"
 
 if [ "$build_option_mcode" ]; then
 	depends=" ghdl-mcode>=${version}_${revision}"
@@ -54,6 +55,11 @@ if [ "$build_option_llvm" ]; then
 	makedepends+=" llvm12"
 fi
 
+if [ "$build_option_python" ]; then
+	subpackages+=" ghdl-pyghdl"
+	hostmakedepends+=" python3-devel python3-setuptools"
+fi
+
 do_configure() {
 	if [ "$build_option_mcode" ]; then
 		mkdir -p build_mcode
@@ -135,3 +141,12 @@ ghdl-llvm_package() {
 		vmove usr/lib/ghdl/llvm
 	}
 }
+
+ghdl-pyghdl_package() {
+	short_desc+=" - python interface to libghdl and tools"
+	depends="ghdl>=${version}_${revision} python3 python3-pyTooling.TerminalUI python3-pyVHDLModel"
+	pkg_install() {
+		python3 setup.py install --root="${PKGDESTDIR}"
+		find ${PKGDESTDIR} -path '*/__pycache__*' -delete 2>&1 >/dev/null
+	}
+}

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

* Re: New package: ghdl-pyghdl-1.0.0
  2021-12-18 14:50 [PR PATCH] New package: ghdl-pyghdl-1.0.0 Aloz1
@ 2021-12-18 15:02 ` Aloz1
  2021-12-19  1:05 ` [PR PATCH] [Updated] " Aloz1
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Aloz1 @ 2021-12-18 15:02 UTC (permalink / raw)
  To: ml

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

New comment by Aloz1 on void-packages repository

https://github.com/void-linux/void-packages/pull/34610#issuecomment-997214620

Comment:
Note: build failing because of missing dependencies (addressed by PR #34606, #34607 and #34609)

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

* Re: [PR PATCH] [Updated] New package: ghdl-pyghdl-1.0.0
  2021-12-18 14:50 [PR PATCH] New package: ghdl-pyghdl-1.0.0 Aloz1
  2021-12-18 15:02 ` Aloz1
@ 2021-12-19  1:05 ` Aloz1
  2022-06-19  2:16 ` github-actions
  2022-07-04  2:15 ` [PR PATCH] [Closed]: " github-actions
  3 siblings, 0 replies; 5+ messages in thread
From: Aloz1 @ 2021-12-19  1:05 UTC (permalink / raw)
  To: ml

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

There is an updated pull request by Aloz1 against master on the void-packages repository

https://github.com/Aloz1/void-packages add-pyghdl
https://github.com/void-linux/void-packages/pull/34610

New package: ghdl-pyghdl-1.0.0
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)


A patch file from https://github.com/void-linux/void-packages/pull/34610.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-add-pyghdl-34610.patch --]
[-- Type: text/x-diff, Size: 21945 bytes --]

From 080dbdf8705b0bbb6d96d63ff1f38af3fdc5d705 Mon Sep 17 00:00:00 2001
From: Aloz1 <kno0001@gmail.com>
Date: Sun, 19 Dec 2021 01:40:01 +1100
Subject: [PATCH] New package: ghdl-pyghdl-1.0.0 plus support libraries

---
 srcpkgs/ghdl-pyghdl                           |   1 +
 .../replace-pydecor-with-pyTooling.patch      | 453 ++++++++++++++++++
 srcpkgs/ghdl/template                         |  21 +-
 srcpkgs/python3-pyTooling.TerminalUI/template |  23 +
 srcpkgs/python3-pyTooling/template            |  23 +
 srcpkgs/python3-pyVHDLModel/template          |  23 +
 6 files changed, 541 insertions(+), 3 deletions(-)
 create mode 120000 srcpkgs/ghdl-pyghdl
 create mode 100644 srcpkgs/ghdl/patches/replace-pydecor-with-pyTooling.patch
 create mode 100644 srcpkgs/python3-pyTooling.TerminalUI/template
 create mode 100644 srcpkgs/python3-pyTooling/template
 create mode 100644 srcpkgs/python3-pyVHDLModel/template

diff --git a/srcpkgs/ghdl-pyghdl b/srcpkgs/ghdl-pyghdl
new file mode 120000
index 000000000000..397362bd8e2a
--- /dev/null
+++ b/srcpkgs/ghdl-pyghdl
@@ -0,0 +1 @@
+ghdl
\ No newline at end of file
diff --git a/srcpkgs/ghdl/patches/replace-pydecor-with-pyTooling.patch b/srcpkgs/ghdl/patches/replace-pydecor-with-pyTooling.patch
new file mode 100644
index 000000000000..00dc235d0f48
--- /dev/null
+++ b/srcpkgs/ghdl/patches/replace-pydecor-with-pyTooling.patch
@@ -0,0 +1,453 @@
+From be9a134364bc79cf1e8e9968d50cd296a7975ecf Mon Sep 17 00:00:00 2001
+From: Patrick Lehmann <Patrick.Lehmann@plc2.de>
+Date: Sun, 12 Dec 2021 14:35:51 +0100
+Subject: [PATCH] Changed export decorator from pydecor to pyTooling.Decorators
+
+---
+ pyGHDL/cli/lsp.py                  | 16 ++++++----------
+ pyGHDL/dom/DesignUnit.py           |  2 +-
+ pyGHDL/dom/InterfaceItem.py        |  2 +-
+ pyGHDL/dom/Misc.py                 |  2 +-
+ pyGHDL/dom/__init__.py             |  2 +-
+ pyGHDL/libghdl/__init__.py         |  4 +++-
+ pyGHDL/libghdl/_decorator.py       |  2 +-
+ pyGHDL/libghdl/errorout.py         |  2 +-
+ pyGHDL/libghdl/errorout_console.py |  2 +-
+ pyGHDL/libghdl/errorout_memory.py  |  2 +-
+ pyGHDL/libghdl/files_map.py        |  2 +-
+ pyGHDL/libghdl/files_map_editor.py |  2 +-
+ pyGHDL/libghdl/libraries.py        |  2 +-
+ pyGHDL/libghdl/name_table.py       |  2 +-
+ pyGHDL/libghdl/std_names.py        |  2 +-
+ pyGHDL/libghdl/utils.py            |  2 +-
+ pyGHDL/libghdl/vhdl/elocations.py  |  2 +-
+ pyGHDL/libghdl/vhdl/flists.py      |  2 +-
+ pyGHDL/libghdl/vhdl/formatters.py  |  2 +-
+ pyGHDL/libghdl/vhdl/lists.py       |  2 +-
+ pyGHDL/libghdl/vhdl/nodes.py       |  2 +-
+ pyGHDL/libghdl/vhdl/nodes_meta.py  |  2 +-
+ pyGHDL/libghdl/vhdl/nodes_utils.py |  2 +-
+ pyGHDL/libghdl/vhdl/parse.py       |  2 +-
+ pyGHDL/libghdl/vhdl/scanner.py     |  2 +-
+ pyGHDL/libghdl/vhdl/sem.py         |  2 +-
+ pyGHDL/libghdl/vhdl/sem_lib.py     |  2 +-
+ pyGHDL/libghdl/vhdl/tokens.py      |  2 +-
+ scripts/pnodespy.py                | 13 ++++++++-----
+ 29 files changed, 43 insertions(+), 42 deletions(-)
+
+diff --git a/pyGHDL/cli/lsp.py b/pyGHDL/cli/lsp.py
+index 44d55635..58da6c90 100644
+--- a/pyGHDL/cli/lsp.py
++++ b/pyGHDL/cli/lsp.py
+@@ -39,7 +39,7 @@ from logging import getLogger, DEBUG, INFO, ERROR, basicConfig
+ import sys
+ import os
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ import pyGHDL.libghdl as libghdl
+ from pyGHDL.libghdl     import version, errorout_console
+@@ -62,16 +62,12 @@ def __rotate_log_files(basename: str, num: int):
+ 
+ def _generateCLIParser() -> ArgumentParser:
+     """Creates an CLI argument parser based on ``argparse``."""
+-    parser = ArgumentParser(description="VHDL Language Protocol Server. Find info about clients in `ghdl/ghdl-language-server <https://github.com/ghdl/ghdl-language-server>`__.")
+-    parser.add_argument(
+-        "--version", "-V", action="version", version="%(prog)s " + version.__version__
+-    )
+-    parser.add_argument(
+-        "--verbose", "-v", action="count", default=0, help="Show debug output"
+-    )
+-    parser.add_argument(
+-        "--log-file", help="Redirect logs to the given file instead of stderr"
++    parser = ArgumentParser(
++        description="VHDL Language Protocol Server. Find info about clients in `ghdl/ghdl-language-server <https://github.com/ghdl/ghdl-language-server>`__."
+     )
++    parser.add_argument("--version", "-V", action="version", version="%(prog)s " + version.__version__)
++    parser.add_argument("--verbose", "-v", action="count", default=0, help="Show debug output")
++    parser.add_argument("--log-file", help="Redirect logs to the given file instead of stderr")
+     parser.add_argument("--trace-file", help="Save RPC data to FILE.in and FILE.out (overrides :envvar:`GHDL_LS_TRACE`)")
+     parser.add_argument("--input", "-i", help="Read request from file")
+     parser.add_argument(
+diff --git a/pyGHDL/dom/DesignUnit.py b/pyGHDL/dom/DesignUnit.py
+index 35ee8132..e9a8e7ab 100644
+--- a/pyGHDL/dom/DesignUnit.py
++++ b/pyGHDL/dom/DesignUnit.py
+@@ -39,7 +39,7 @@ This module contains all DOM classes for VHDL's design units (:class:`entity <En
+ 
+ 
+ """
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyVHDLModel.VHDLModel import Entity        as VHDLModel_Entity
+ from pyVHDLModel.VHDLModel import Architecture  as VHDLModel_Architecture
+diff --git a/pyGHDL/dom/InterfaceItem.py b/pyGHDL/dom/InterfaceItem.py
+index 94f43687..ec37d56a 100644
+--- a/pyGHDL/dom/InterfaceItem.py
++++ b/pyGHDL/dom/InterfaceItem.py
+@@ -31,7 +31,7 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor                import export
++from pyTooling.Decorators   import export
+ 
+ from pyVHDLModel.VHDLModel  import PortSignalInterfaceItem as VHDLModel_PortSignalInterfaceItem
+ from pyVHDLModel.VHDLModel  import GenericConstantInterfaceItem as VHDLModel_GenericConstantInterfaceItem
+diff --git a/pyGHDL/dom/Misc.py b/pyGHDL/dom/Misc.py
+index bf8bc4be..90181e8a 100644
+--- a/pyGHDL/dom/Misc.py
++++ b/pyGHDL/dom/Misc.py
+@@ -38,7 +38,7 @@
+ from pathlib import Path
+ from typing  import Any
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyVHDLModel.VHDLModel  import Design        as VHDLModel_Design
+ from pyVHDLModel.VHDLModel  import Library       as VHDLModel_Library
+diff --git a/pyGHDL/dom/__init__.py b/pyGHDL/dom/__init__.py
+index 39ba78ba..f3005bd9 100644
+--- a/pyGHDL/dom/__init__.py
++++ b/pyGHDL/dom/__init__.py
+@@ -31,6 +31,6 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor            import export
++from pyTooling.Decorators import export
+ 
+ __all__ = []
+diff --git a/pyGHDL/libghdl/__init__.py b/pyGHDL/libghdl/__init__.py
+index fc201e0e..fa717098 100644
+--- a/pyGHDL/libghdl/__init__.py
++++ b/pyGHDL/libghdl/__init__.py
+@@ -38,9 +38,11 @@ import sys
+ from pathlib import Path
+ from shutil import which
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl._types import Iir
++
++# from pyGHDL.libghdl._decorator import BindToLibGHDL
+ from pyGHDL.libghdl.version import __version__
+ 
+ 
+diff --git a/pyGHDL/libghdl/_decorator.py b/pyGHDL/libghdl/_decorator.py
+index bc4b0df6..08680704 100644
+--- a/pyGHDL/libghdl/_decorator.py
++++ b/pyGHDL/libghdl/_decorator.py
+@@ -33,7 +33,7 @@
+ 
+ from typing import Callable, List
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ 
+ @export
+diff --git a/pyGHDL/libghdl/errorout.py b/pyGHDL/libghdl/errorout.py
+index a038fa77..0ec338cf 100644
+--- a/pyGHDL/libghdl/errorout.py
++++ b/pyGHDL/libghdl/errorout.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ from pyGHDL.libghdl import libghdl
+ 
+ @export
+diff --git a/pyGHDL/libghdl/errorout_console.py b/pyGHDL/libghdl/errorout_console.py
+index 3df82dd9..f4f2c3ed 100644
+--- a/pyGHDL/libghdl/errorout_console.py
++++ b/pyGHDL/libghdl/errorout_console.py
+@@ -32,7 +32,7 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/errorout_memory.py b/pyGHDL/libghdl/errorout_memory.py
+index 26152a9d..fdbf0ed8 100644
+--- a/pyGHDL/libghdl/errorout_memory.py
++++ b/pyGHDL/libghdl/errorout_memory.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int8, c_int32, c_char_p, Structure
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import ErrorIndex
+diff --git a/pyGHDL/libghdl/files_map.py b/pyGHDL/libghdl/files_map.py
+index 71ed32e9..06b5b626 100644
+--- a/pyGHDL/libghdl/files_map.py
++++ b/pyGHDL/libghdl/files_map.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_void_p
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import NameId, SourceFileEntry
+diff --git a/pyGHDL/libghdl/files_map_editor.py b/pyGHDL/libghdl/files_map_editor.py
+index b5c0184c..fd0cdbb8 100644
+--- a/pyGHDL/libghdl/files_map_editor.py
++++ b/pyGHDL/libghdl/files_map_editor.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int32, c_char_p, c_bool
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import SourceFileEntry
+diff --git a/pyGHDL/libghdl/libraries.py b/pyGHDL/libghdl/libraries.py
+index 0c302ff4..41254213 100644
+--- a/pyGHDL/libghdl/libraries.py
++++ b/pyGHDL/libghdl/libraries.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int32
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/name_table.py b/pyGHDL/libghdl/name_table.py
+index 74bfbf11..099f9f37 100644
+--- a/pyGHDL/libghdl/name_table.py
++++ b/pyGHDL/libghdl/name_table.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_char_p
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import NameId
+diff --git a/pyGHDL/libghdl/std_names.py b/pyGHDL/libghdl/std_names.py
+index e716d86c..5667b746 100644
+--- a/pyGHDL/libghdl/std_names.py
++++ b/pyGHDL/libghdl/std_names.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ 
+ @export
+diff --git a/pyGHDL/libghdl/utils.py b/pyGHDL/libghdl/utils.py
+index b61386bb..b09e68e2 100644
+--- a/pyGHDL/libghdl/utils.py
++++ b/pyGHDL/libghdl/utils.py
+@@ -34,7 +34,7 @@
+ from ctypes import byref
+ from typing import List, Any, Generator
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl._decorator import EnumLookupTable
+ from pyGHDL.libghdl._types import NameId
+diff --git a/pyGHDL/libghdl/vhdl/elocations.py b/pyGHDL/libghdl/vhdl/elocations.py
+index f6dbb262..18670635 100644
+--- a/pyGHDL/libghdl/vhdl/elocations.py
++++ b/pyGHDL/libghdl/vhdl/elocations.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ from pyGHDL.libghdl import libghdl
+ 
+ Get_Start_Location = libghdl.vhdl__elocations__get_start_location
+diff --git a/pyGHDL/libghdl/vhdl/flists.py b/pyGHDL/libghdl/vhdl/flists.py
+index 9cb3e211..70387c7e 100644
+--- a/pyGHDL/libghdl/vhdl/flists.py
++++ b/pyGHDL/libghdl/vhdl/flists.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int32
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/vhdl/formatters.py b/pyGHDL/libghdl/vhdl/formatters.py
+index 621b0ea7..fbe961ab 100644
+--- a/pyGHDL/libghdl/vhdl/formatters.py
++++ b/pyGHDL/libghdl/vhdl/formatters.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int32, c_char_p
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/vhdl/lists.py b/pyGHDL/libghdl/vhdl/lists.py
+index 42a0ebf6..a1fafd70 100644
+--- a/pyGHDL/libghdl/vhdl/lists.py
++++ b/pyGHDL/libghdl/vhdl/lists.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int32, c_bool, POINTER, Structure
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/vhdl/nodes.py b/pyGHDL/libghdl/vhdl/nodes.py
+index 659813d1..919a4eab 100644
+--- a/pyGHDL/libghdl/vhdl/nodes.py
++++ b/pyGHDL/libghdl/vhdl/nodes.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ from pyGHDL.libghdl import libghdl
+ 
+ Null_Iir = 0
+diff --git a/pyGHDL/libghdl/vhdl/nodes_meta.py b/pyGHDL/libghdl/vhdl/nodes_meta.py
+index 5ec7f950..f9059403 100644
+--- a/pyGHDL/libghdl/vhdl/nodes_meta.py
++++ b/pyGHDL/libghdl/vhdl/nodes_meta.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import IirKind
+ 
+diff --git a/pyGHDL/libghdl/vhdl/nodes_utils.py b/pyGHDL/libghdl/vhdl/nodes_utils.py
+index e840d524..b228df24 100644
+--- a/pyGHDL/libghdl/vhdl/nodes_utils.py
++++ b/pyGHDL/libghdl/vhdl/nodes_utils.py
+@@ -32,7 +32,7 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl, Iir
+ 
+diff --git a/pyGHDL/libghdl/vhdl/parse.py b/pyGHDL/libghdl/vhdl/parse.py
+index a71b2aea..85c7276b 100644
+--- a/pyGHDL/libghdl/vhdl/parse.py
++++ b/pyGHDL/libghdl/vhdl/parse.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_bool
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/vhdl/scanner.py b/pyGHDL/libghdl/vhdl/scanner.py
+index 36b52cb0..12d6f0e2 100644
+--- a/pyGHDL/libghdl/vhdl/scanner.py
++++ b/pyGHDL/libghdl/vhdl/scanner.py
+@@ -34,7 +34,7 @@
+ 
+ from ctypes import c_int, c_bool
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import SourceFileEntry, NameId
+diff --git a/pyGHDL/libghdl/vhdl/sem.py b/pyGHDL/libghdl/vhdl/sem.py
+index e1d8c7a0..f0731d6b 100644
+--- a/pyGHDL/libghdl/vhdl/sem.py
++++ b/pyGHDL/libghdl/vhdl/sem.py
+@@ -32,7 +32,7 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ 
+diff --git a/pyGHDL/libghdl/vhdl/sem_lib.py b/pyGHDL/libghdl/vhdl/sem_lib.py
+index 87a07f48..f00a88e5 100644
+--- a/pyGHDL/libghdl/vhdl/sem_lib.py
++++ b/pyGHDL/libghdl/vhdl/sem_lib.py
+@@ -32,7 +32,7 @@
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ # ============================================================================
+ 
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ from pyGHDL.libghdl import libghdl
+ from pyGHDL.libghdl._types import SourceFileEntry
+diff --git a/pyGHDL/libghdl/vhdl/tokens.py b/pyGHDL/libghdl/vhdl/tokens.py
+index a846ea62..9acb8981 100644
+--- a/pyGHDL/libghdl/vhdl/tokens.py
++++ b/pyGHDL/libghdl/vhdl/tokens.py
+@@ -1,7 +1,7 @@
+ # Auto generated Python source file from Ada sources
+ # Call 'make' in 'src/vhdl' to regenerate:
+ #
+-from pydecor import export
++from pyTooling.Decorators import export
+ 
+ 
+ @export
+diff --git a/scripts/pnodespy.py b/scripts/pnodespy.py
+index 3f287580..718aba7b 100755
+--- a/scripts/pnodespy.py
++++ b/scripts/pnodespy.py
+@@ -32,11 +32,14 @@ def print_enum(name, vals):
+ 
+ def print_file_header():
+     print(dedent("""\
+-        # Auto generated Python source file from Ada sources
+-        # Call 'make' in 'src/vhdl' to regenerate:
+-        #
+-        from pydecor import export
+-    """), end='')
++			# Auto generated Python source file from Ada sources
++			# Call 'make' in 'src/vhdl' to regenerate:
++			#
++        """) + "{sysImports}from pyTooling.Decorators import export\n{moduleImports}".format(
++            sysImports = "from enum import IntEnum, unique\n" if includeIntEnumUnique else "",
++            moduleImports = "\nfrom pyGHDL.libghdl._decorator import BindToLibGHDL\n" if includeBindToLibGHDL else "",
++        )
++    )
+ 
+ 
+ def do_class_kinds():
+-- 
+2.34.1
+
diff --git a/srcpkgs/ghdl/template b/srcpkgs/ghdl/template
index e756d8c3cd87..185595e21789 100644
--- a/srcpkgs/ghdl/template
+++ b/srcpkgs/ghdl/template
@@ -7,7 +7,7 @@
 pkgname=ghdl
 reverts="20181129_1"
 version=1.0.0
-revision=1
+revision=2
 build_style=configure
 configure_args="--prefix=/usr --srcdir=.. --incdir=lib/ghdl/include"
 makedepends="zlib-devel"
@@ -20,11 +20,12 @@ checksum=cb424766fbe831ff41bec84016a6af0406d735c272b0b639d507c3503df30495
 nocross=yes
 make_check=extended
 
-build_options="llvm mcode"
-build_options_default="llvm"
+build_options="llvm mcode python"
+build_options_default="llvm python"
 
 desc_option_llvm="Build the portable LLVM backend"
 desc_option_mcode="Build the x86-only mcode backend"
+desc_option_python="Build the pyGHDL wrapper to libghdl"
 
 if [ "$build_option_mcode" ]; then
 	depends=" ghdl-mcode>=${version}_${revision}"
@@ -54,6 +55,11 @@ if [ "$build_option_llvm" ]; then
 	makedepends+=" llvm12"
 fi
 
+if [ "$build_option_python" ]; then
+	subpackages+=" ghdl-pyghdl"
+	hostmakedepends+=" python3-devel python3-setuptools"
+fi
+
 do_configure() {
 	if [ "$build_option_mcode" ]; then
 		mkdir -p build_mcode
@@ -135,3 +141,12 @@ ghdl-llvm_package() {
 		vmove usr/lib/ghdl/llvm
 	}
 }
+
+ghdl-pyghdl_package() {
+	short_desc+=" - python interface to libghdl and tools"
+	depends="ghdl>=${version}_${revision} python3 python3-pyTooling.TerminalUI python3-pyVHDLModel"
+	pkg_install() {
+		python3 setup.py install --root="${PKGDESTDIR}"
+		find ${PKGDESTDIR} -path '*/__pycache__*' -delete 2>&1 >/dev/null
+	}
+}
diff --git a/srcpkgs/python3-pyTooling.TerminalUI/template b/srcpkgs/python3-pyTooling.TerminalUI/template
new file mode 100644
index 000000000000..b36adc972d47
--- /dev/null
+++ b/srcpkgs/python3-pyTooling.TerminalUI/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyTooling.TerminalUI'
+pkgname=python3-pyTooling.TerminalUI
+version=1.5.5
+revision=1
+wrksrc="pyTooling.TerminalUI-${version}"
+build_style=python3-module
+hostmakedepends="python3-setuptools python3-pyTooling"
+depends="python3 python3-colorama python3-pyTooling"
+short_desc="Pythono helper module for implementing terminal TUIs"
+maintainer="Aloz1 <kno0001@gmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/pyTooling/pyTooling.TemplateUI"
+distfiles="${PYPI_SITE}/p/pyTooling.TerminalUI/pyTooling.TerminalUI-${version}.tar.gz"
+checksum=813817192ae62a027828898c53c265c60fd408a9a6988413367df6b140918cb1
+
+post_extract() {
+	# Upstream tarballs are broken, they're missing the requirements.txt
+	touch requirements.txt
+}
+
+post_install() {
+	find ${DESTDIR} -path '*/__pycache__*' -delete 2>&1 >/dev/null
+}
diff --git a/srcpkgs/python3-pyTooling/template b/srcpkgs/python3-pyTooling/template
new file mode 100644
index 000000000000..838f4e0ae3b3
--- /dev/null
+++ b/srcpkgs/python3-pyTooling/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyTooling'
+pkgname=python3-pyTooling
+version=1.7.0
+revision=1
+wrksrc="pyTooling-${version}"
+build_style=python3-module
+hostmakedepends="python3-setuptools"
+depends="python3"
+short_desc="Collection of arbitrary classes/decorators/metaclasses"
+maintainer="Aloz1 <kno0001@gmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/pyTooling/pyTooling"
+distfiles="${PYPI_SITE}/p/pyTooling/pyTooling-${version}.tar.gz"
+checksum=5bca8b1a88ab4e5241adee977da05033417635dbe7cc4693714fc59fab8310ac
+
+post_extract() {
+	# Upstream tarballs are broken, they're missing the requirements.txt
+	touch requirements.txt
+}
+
+post_install() {
+	find ${DESTDIR} -path '*/__pycache__*' -delete 2>&1 >/dev/null
+}
diff --git a/srcpkgs/python3-pyVHDLModel/template b/srcpkgs/python3-pyVHDLModel/template
new file mode 100644
index 000000000000..e467fb09fdc7
--- /dev/null
+++ b/srcpkgs/python3-pyVHDLModel/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyVHDLModel'
+pkgname=python3-pyVHDLModel
+version=0.14.1
+revision=1
+wrksrc="pyVHDLModel-${version}"
+build_style=python3-module
+hostmakedepends="python3-setuptools python3-pyTooling"
+depends="python3 python3-pyTooling"
+short_desc="Abstract VHDL language model written in Python"
+maintainer="Aloz1 <kno0001@gmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/VHDL/pyVHDLModel"
+distfiles="${PYPI_SITE}/p/pyVHDLModel/pyVHDLModel-${version}.tar.gz"
+checksum=5a093c309c1434adec2ce946e51c358f05791392c7a7964b9e6a5f874a8a322f
+
+post_extract() {
+	# Upstream tarballs are broken, they're missing the requirements.txt
+	touch requirements.txt
+}
+
+post_install() {
+	find ${DESTDIR} -path '*/__pycache__*' -delete 2>&1 >/dev/null
+}

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

* Re: New package: ghdl-pyghdl-1.0.0
  2021-12-18 14:50 [PR PATCH] New package: ghdl-pyghdl-1.0.0 Aloz1
  2021-12-18 15:02 ` Aloz1
  2021-12-19  1:05 ` [PR PATCH] [Updated] " Aloz1
@ 2022-06-19  2:16 ` github-actions
  2022-07-04  2:15 ` [PR PATCH] [Closed]: " github-actions
  3 siblings, 0 replies; 5+ messages in thread
From: github-actions @ 2022-06-19  2:16 UTC (permalink / raw)
  To: ml

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

New comment by github-actions[bot] on void-packages repository

https://github.com/void-linux/void-packages/pull/34610#issuecomment-1159601727

Comment:
Pull Requests become stale 90 days after last activity and are closed 14 days after that.  If this pull request is still relevant bump it or assign it.

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

* Re: [PR PATCH] [Closed]: New package: ghdl-pyghdl-1.0.0
  2021-12-18 14:50 [PR PATCH] New package: ghdl-pyghdl-1.0.0 Aloz1
                   ` (2 preceding siblings ...)
  2022-06-19  2:16 ` github-actions
@ 2022-07-04  2:15 ` github-actions
  3 siblings, 0 replies; 5+ messages in thread
From: github-actions @ 2022-07-04  2:15 UTC (permalink / raw)
  To: ml

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

There's a closed pull request on the void-packages repository

New package: ghdl-pyghdl-1.0.0
https://github.com/void-linux/void-packages/pull/34610

Description:
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)


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

end of thread, other threads:[~2022-07-04  2:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-18 14:50 [PR PATCH] New package: ghdl-pyghdl-1.0.0 Aloz1
2021-12-18 15:02 ` Aloz1
2021-12-19  1:05 ` [PR PATCH] [Updated] " Aloz1
2022-06-19  2:16 ` github-actions
2022-07-04  2:15 ` [PR PATCH] [Closed]: " github-actions

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 NNTP newsgroup(s).