aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Lehmann <Patrick.Lehmann@plc2.de>2020-12-29 03:24:28 +0100
committerPatrick Lehmann <Patrick.Lehmann@plc2.de>2020-12-29 03:24:28 +0100
commit8977b7432b4cd362795f8dd89a59bc7328d01212 (patch)
tree7ac02000a5adbe2996d80eb776eeaa1f57316c9a
parentedaecdb68ca5e0c6e59561b5e93cb3c6d2cb7410 (diff)
parentdbc0651008b4becac90450038c0f31d590bddbfc (diff)
downloadghdl-8977b7432b4cd362795f8dd89a59bc7328d01212.tar.gz
ghdl-8977b7432b4cd362795f8dd89a59bc7328d01212.tar.bz2
ghdl-8977b7432b4cd362795f8dd89a59bc7328d01212.zip
Merge remote-tracking branch 'github-umarcor/py/GHDL' into paebbels/pyGHDL
-rwxr-xr-xdist/ci-run.sh4
-rw-r--r--pyGHDL/libghdl/__init__.py2
-rw-r--r--pyGHDL/libghdl/errorout.py2
-rw-r--r--pyGHDL/libghdl/errorout_console.py2
-rw-r--r--pyGHDL/libghdl/errorout_memory.py2
-rw-r--r--pyGHDL/libghdl/files_map.py2
-rw-r--r--pyGHDL/libghdl/files_map_editor.py2
-rw-r--r--pyGHDL/libghdl/flags.py2
-rw-r--r--pyGHDL/libghdl/libraries.py2
-rw-r--r--pyGHDL/libghdl/name_table.py2
-rw-r--r--pyGHDL/libghdl/vhdl/canon.py3
-rw-r--r--pyGHDL/libghdl/vhdl/elocations.py2
-rw-r--r--pyGHDL/libghdl/vhdl/flists.py3
-rw-r--r--pyGHDL/libghdl/vhdl/formatters.py3
-rw-r--r--pyGHDL/libghdl/vhdl/ieee.py3
-rw-r--r--pyGHDL/libghdl/vhdl/lists.py3
-rw-r--r--pyGHDL/libghdl/vhdl/nodes.py3
-rw-r--r--pyGHDL/libghdl/vhdl/nodes_meta.py2
-rw-r--r--pyGHDL/libghdl/vhdl/nodes_utils.py3
-rw-r--r--pyGHDL/libghdl/vhdl/parse.py3
-rw-r--r--pyGHDL/libghdl/vhdl/scanner.py3
-rw-r--r--pyGHDL/libghdl/vhdl/sem.py3
-rw-r--r--pyGHDL/libghdl/vhdl/sem_lib.py3
-rw-r--r--pyGHDL/libghdl/vhdl/std_package.py3
-rwxr-xr-xtestsuite/pyunit/testsuite.sh59
-rwxr-xr-xtestsuite/testsuite.sh15
26 files changed, 40 insertions, 96 deletions
diff --git a/dist/ci-run.sh b/dist/ci-run.sh
index c61169f9f..43e1c8b66 100755
--- a/dist/ci-run.sh
+++ b/dist/ci-run.sh
@@ -430,6 +430,7 @@ ci_run () {
case "$GHDL_IMAGE_TAG" in
*ubuntu20*|*buster*)
GHDL_TEST_IMAGE="test:$GHDL_IMAGE_TAG-py"
+ gstart "[CI] Docker build $GHDL_TEST_IMAGE" "$ANSI_BLUE"
docker build -t "$GHDL_TEST_IMAGE" . -f- <<-EOF
# syntax=docker/dockerfile:experimental
FROM ghdl/ghdl:$GHDL_IMAGE_TAG
@@ -437,7 +438,8 @@ RUN apt update -qq && apt install -y python3 python3-pip
RUN --mount=type=bind,src=./,target=/tmp/ghdl/ \
pip3 install -r /tmp/ghdl/testsuite/requirements.txt
EOF
- tests+=" pyunit"
+ gend
+ tests+=" pyunit"
;;
*)
GHDL_TEST_IMAGE="ghdl/ghdl:$GHDL_IMAGE_TAG"
diff --git a/pyGHDL/libghdl/__init__.py b/pyGHDL/libghdl/__init__.py
index 4ba7b6b26..da39a4475 100644
--- a/pyGHDL/libghdl/__init__.py
+++ b/pyGHDL/libghdl/__init__.py
@@ -3,7 +3,7 @@ import os
import sys
from os.path import dirname, join, exists, normpath
from shutil import which
-from libghdl.version import __version__
+from pyGHDL.libghdl.version import __version__
def _to_char_p(arg):
diff --git a/pyGHDL/libghdl/errorout.py b/pyGHDL/libghdl/errorout.py
index af0da5fc6..5819970b5 100644
--- a/pyGHDL/libghdl/errorout.py
+++ b/pyGHDL/libghdl/errorout.py
@@ -1,4 +1,4 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
Enable_Warning = libghdl.errorout__enable_warning
diff --git a/pyGHDL/libghdl/errorout_console.py b/pyGHDL/libghdl/errorout_console.py
index 877165b70..8862b92ec 100644
--- a/pyGHDL/libghdl/errorout_console.py
+++ b/pyGHDL/libghdl/errorout_console.py
@@ -1,3 +1,3 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
Install_Handler = libghdl.errorout__console__install_handler
diff --git a/pyGHDL/libghdl/errorout_memory.py b/pyGHDL/libghdl/errorout_memory.py
index f236f1075..9dc283f75 100644
--- a/pyGHDL/libghdl/errorout_memory.py
+++ b/pyGHDL/libghdl/errorout_memory.py
@@ -1,4 +1,4 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_int8, c_int32, c_char_p, Structure
diff --git a/pyGHDL/libghdl/files_map.py b/pyGHDL/libghdl/files_map.py
index d27209e7a..ef1cf55ca 100644
--- a/pyGHDL/libghdl/files_map.py
+++ b/pyGHDL/libghdl/files_map.py
@@ -1,4 +1,4 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_void_p
EOT = b"\x04"
diff --git a/pyGHDL/libghdl/files_map_editor.py b/pyGHDL/libghdl/files_map_editor.py
index bf9492786..e258dd047 100644
--- a/pyGHDL/libghdl/files_map_editor.py
+++ b/pyGHDL/libghdl/files_map_editor.py
@@ -1,5 +1,5 @@
+from pyGHDL.libghdl import libghdl
from ctypes import c_int32, c_char_p, c_bool
-from libghdl import libghdl
Replace_Text = libghdl.files_map__editor__replace_text_ptr
Replace_Text.argstype = [c_int32, c_int32, c_int32, c_int32, c_char_p, c_int32]
diff --git a/pyGHDL/libghdl/flags.py b/pyGHDL/libghdl/flags.py
index 3a82950a0..22f5925cc 100644
--- a/pyGHDL/libghdl/flags.py
+++ b/pyGHDL/libghdl/flags.py
@@ -1,4 +1,4 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_bool, sizeof
assert sizeof(c_bool) == 1
diff --git a/pyGHDL/libghdl/libraries.py b/pyGHDL/libghdl/libraries.py
index 625f7fdd1..5dbb89804 100644
--- a/pyGHDL/libghdl/libraries.py
+++ b/pyGHDL/libghdl/libraries.py
@@ -1,4 +1,4 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_int32
Get_Libraries_Chain = libghdl.libraries__get_libraries_chain
diff --git a/pyGHDL/libghdl/name_table.py b/pyGHDL/libghdl/name_table.py
index c41973ec1..6d2d1a3f3 100644
--- a/pyGHDL/libghdl/name_table.py
+++ b/pyGHDL/libghdl/name_table.py
@@ -1,4 +1,4 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_char_p
Get_Name_Length = libghdl.name_table__get_name_length
diff --git a/pyGHDL/libghdl/vhdl/canon.py b/pyGHDL/libghdl/vhdl/canon.py
index 7893cf3ff..97eea62e1 100644
--- a/pyGHDL/libghdl/vhdl/canon.py
+++ b/pyGHDL/libghdl/vhdl/canon.py
@@ -1,6 +1,7 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_bool
+
Flag_Concurrent_Stmts = c_bool.in_dll(
libghdl, "vhdl__canon__canon_flag_concurrent_stmts"
)
diff --git a/pyGHDL/libghdl/vhdl/elocations.py b/pyGHDL/libghdl/vhdl/elocations.py
index 87d87b731..bd76d47a3 100644
--- a/pyGHDL/libghdl/vhdl/elocations.py
+++ b/pyGHDL/libghdl/vhdl/elocations.py
@@ -1,4 +1,4 @@
-from libghdl import libghdl
+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 6cdd39ff3..96bac53d5 100644
--- a/pyGHDL/libghdl/vhdl/flists.py
+++ b/pyGHDL/libghdl/vhdl/flists.py
@@ -1,6 +1,7 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_int32
+
Flist_Type = c_int32
Ffirst = 0
diff --git a/pyGHDL/libghdl/vhdl/formatters.py b/pyGHDL/libghdl/vhdl/formatters.py
index 9c8bf9afb..4b1f68fec 100644
--- a/pyGHDL/libghdl/vhdl/formatters.py
+++ b/pyGHDL/libghdl/vhdl/formatters.py
@@ -1,6 +1,7 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_int32, c_char_p
+
Indent_String = libghdl.vhdl__formatters__indent_string
Allocate_Handle = libghdl.vhdl__formatters__allocate_handle
diff --git a/pyGHDL/libghdl/vhdl/ieee.py b/pyGHDL/libghdl/vhdl/ieee.py
index 35db1a631..0010e5c5a 100644
--- a/pyGHDL/libghdl/vhdl/ieee.py
+++ b/pyGHDL/libghdl/vhdl/ieee.py
@@ -1,6 +1,7 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_int
+
Std_Logic_1164_Pkg = c_int.in_dll(
libghdl, "vhdl__ieee__std_logic_1164__std_logic_1164_pkg"
)
diff --git a/pyGHDL/libghdl/vhdl/lists.py b/pyGHDL/libghdl/vhdl/lists.py
index bcaecb89b..4c4f98579 100644
--- a/pyGHDL/libghdl/vhdl/lists.py
+++ b/pyGHDL/libghdl/vhdl/lists.py
@@ -1,6 +1,7 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_int32, c_bool, POINTER, Structure
+
List_Type = c_int32
diff --git a/pyGHDL/libghdl/vhdl/nodes.py b/pyGHDL/libghdl/vhdl/nodes.py
index e7f47b16f..45e9a1ab9 100644
--- a/pyGHDL/libghdl/vhdl/nodes.py
+++ b/pyGHDL/libghdl/vhdl/nodes.py
@@ -1,4 +1,5 @@
-from libghdl import libghdl
+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 245a847cf..f3cf0256f 100644
--- a/pyGHDL/libghdl/vhdl/nodes_meta.py
+++ b/pyGHDL/libghdl/vhdl/nodes_meta.py
@@ -1,4 +1,4 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
# From nodes_meta
diff --git a/pyGHDL/libghdl/vhdl/nodes_utils.py b/pyGHDL/libghdl/vhdl/nodes_utils.py
index caee7ac4a..b6110e541 100644
--- a/pyGHDL/libghdl/vhdl/nodes_utils.py
+++ b/pyGHDL/libghdl/vhdl/nodes_utils.py
@@ -1,4 +1,5 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
+
Strip_Denoting_Name = libghdl.vhdl__utils__strip_denoting_name
diff --git a/pyGHDL/libghdl/vhdl/parse.py b/pyGHDL/libghdl/vhdl/parse.py
index 4fff64b84..b09056128 100644
--- a/pyGHDL/libghdl/vhdl/parse.py
+++ b/pyGHDL/libghdl/vhdl/parse.py
@@ -1,6 +1,7 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_bool
+
Parse_Design_File = libghdl.vhdl__parse__parse_design_file
Flag_Parse_Parenthesis = c_bool.in_dll(libghdl, "vhdl__parse__flag_parse_parenthesis")
diff --git a/pyGHDL/libghdl/vhdl/scanner.py b/pyGHDL/libghdl/vhdl/scanner.py
index 8cea66ba3..765986f85 100644
--- a/pyGHDL/libghdl/vhdl/scanner.py
+++ b/pyGHDL/libghdl/vhdl/scanner.py
@@ -1,6 +1,7 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_int, c_bool
+
Set_File = libghdl.vhdl__scanner__set_file
Close_File = libghdl.vhdl__scanner__close_file
diff --git a/pyGHDL/libghdl/vhdl/sem.py b/pyGHDL/libghdl/vhdl/sem.py
index df82435da..577d16eeb 100644
--- a/pyGHDL/libghdl/vhdl/sem.py
+++ b/pyGHDL/libghdl/vhdl/sem.py
@@ -1,3 +1,4 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
+
Semantic = libghdl.vhdl__sem__semantic
diff --git a/pyGHDL/libghdl/vhdl/sem_lib.py b/pyGHDL/libghdl/vhdl/sem_lib.py
index 36559ec5e..cf1f9cf32 100644
--- a/pyGHDL/libghdl/vhdl/sem_lib.py
+++ b/pyGHDL/libghdl/vhdl/sem_lib.py
@@ -1,4 +1,5 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
+
Load_File = libghdl.vhdl__sem_lib__load_file
diff --git a/pyGHDL/libghdl/vhdl/std_package.py b/pyGHDL/libghdl/vhdl/std_package.py
index d999ae8b9..a4db2a1f2 100644
--- a/pyGHDL/libghdl/vhdl/std_package.py
+++ b/pyGHDL/libghdl/vhdl/std_package.py
@@ -1,6 +1,7 @@
-from libghdl import libghdl
+from pyGHDL.libghdl import libghdl
from ctypes import c_int32
+
# Use .value
Std_Location = c_int32.in_dll(libghdl, "vhdl__std_package__std_location")
diff --git a/testsuite/pyunit/testsuite.sh b/testsuite/pyunit/testsuite.sh
deleted file mode 100755
index 3de4b3951..000000000
--- a/testsuite/pyunit/testsuite.sh
+++ /dev/null
@@ -1,59 +0,0 @@
-#! /bin/sh
-
-# Driver for a testsuite.
-
-set -e
-
-# This is the only place where test dirs are specified. Do not duplicate this
-# line
-#dirs="*[0-9]"
-#
-#failures=""
-#full=n
-#
-#for opt; do
-# case "$opt" in
-# -k | --keep-going) full=y ;;
-# --dir=*) dirs=`echo $opt | sed -e 's/--dir=//'` ;;
-# --skip=*) d=`echo $opt | sed -e 's/--skip=//'`
-# dirs=`echo "" $dirs | sed -e "s/ $d//"` ;;
-# --start-at=*) d=`echo $opt | sed -e 's/--start-at=//'`
-# dirs=`echo "" $dirs | sed -e "s/^.* $d//"`
-# dirs="$d $dirs" ;;
-# --list-tests) echo $dirs; exit 0;;
-# *) echo "Unknown option $opt"
-# exit 2
-# ;;
-# esac
-#done
-#
-#singlerun() {
-# echo ""
-# echo "dir $1:"
-# cd $1
-# if ! ./testsuite.sh; then
-# echo "#################################################################"
-# echo "######### FAILURE: $1"
-# echo "#################################################################"
-# if [ $2 = "y" ]; then
-# failures="$failures $1"
-# else
-# exit 1;
-# fi
-# fi
-# cd ..
-#}
-#
-#for i in $dirs; do singlerun $i $full; done
-#
-#if [ x"$failures" = x"" ]; then
-# echo "tests are successful" && exit 0
-#else
-# echo "test failed ($failures)" && exit 1
-#fi
-
-cd $(dirname "$0")/../..
-
-export PYTHONPATH=$(pwd)/pyGHDL
-
-python3 -m unittest testsuite.pyunit
diff --git a/testsuite/testsuite.sh b/testsuite/testsuite.sh
index b46ffcdc4..c11b90993 100755
--- a/testsuite/testsuite.sh
+++ b/testsuite/testsuite.sh
@@ -141,22 +141,11 @@ do_gna () {
# The Python Unit testsuite: regression testsuite for Python bindings to libghdl
do_pyunit () {
gstart "[GHDL - test] pyunit"
- cd pyunit
- ./testsuite.sh
+ cd $(dirname "$0")/..
+ PYTHONPATH=$(pwd) python3 -m unittest testsuite.pyunit
-# if ./testsuite.sh > test.log 2>&1 ; then
-# printf "pyunit: ${ANSI_GREEN}ok${ANSI_NOCOLOR}\n"
-# # Don't disp log
-# else
-# printf "pyunit: ${ANSI_RED}failed${ANSI_NOCOLOR}\n"
-# cat test.log
-# failures="$failures"
-# fi
-
- cd ..
gend
- [ "$failures" = "" ] || exit 1
}
# The VESTS testsuite: compliance testsuite, from: https://github.com/nickg/vests.git 388250486a