_toolchain.cxx: remove.

This is causing issues on Python 3.12 and in any case should be
based on the Python `ziglang` package instead of this cursed
setuptools hack.
This commit is contained in:
Catherine 2023-06-01 18:17:44 +00:00
parent c343e879d3
commit 58b8acac0d
2 changed files with 0 additions and 141 deletions

View file

@ -1,68 +0,0 @@
import os
import ctypes
import tempfile
import unittest
from amaranth._toolchain.cxx import *
class ToolchainCxxTestCase(unittest.TestCase):
def setUp(self):
self.include_dir = None
self.build_dir = None
def tearDown(self):
if self.include_dir:
self.include_dir.cleanup()
if self.build_dir:
self.build_dir.cleanup()
def test_filename(self):
self.build_dir, filename = build_cxx(
cxx_sources={"test.cc": ""},
output_name="answer",
include_dirs=[],
macros=[],
)
self.assertTrue(filename.startswith("answer"))
def test_simple(self):
self.build_dir, filename = build_cxx(
cxx_sources={"test.cc": """
extern "C" int answer() { return 42; }
"""},
output_name="answer",
include_dirs=[],
macros=[],
)
library = ctypes.cdll.LoadLibrary(os.path.join(self.build_dir.name, filename))
self.assertEqual(library.answer(), 42)
def test_macro(self):
self.build_dir, filename = build_cxx(
cxx_sources={"test.cc": """
extern "C" int answer() { return ANSWER; }
"""},
output_name="answer",
include_dirs=[],
macros=["ANSWER=42"],
)
library = ctypes.cdll.LoadLibrary(os.path.join(self.build_dir.name, filename))
self.assertEqual(library.answer(), 42)
def test_include(self):
self.include_dir = tempfile.TemporaryDirectory(prefix="amaranth_hxx_")
with open(os.path.join(self.include_dir.name, "answer.h"), "w") as f:
f.write("#define ANSWER 42")
self.build_dir, filename = build_cxx(
cxx_sources={"test.cc": """
#include <answer.h>
extern "C" int answer() { return ANSWER; }
"""},
output_name="answer",
include_dirs=[self.include_dir.name],
macros=[],
)
library = ctypes.cdll.LoadLibrary(os.path.join(self.build_dir.name, filename))
self.assertEqual(library.answer(), 42)