2017-04-24 13:13:17 -04:00
|
|
|
import unittest
|
2017-04-24 13:25:58 -04:00
|
|
|
import os
|
2017-04-24 13:13:17 -04:00
|
|
|
|
2018-02-23 07:38:19 -05:00
|
|
|
from migen import *
|
2017-04-24 13:13:17 -04:00
|
|
|
|
|
|
|
from litex.soc.integration.builder import *
|
|
|
|
|
|
|
|
|
|
|
|
def build_test(socs):
|
2017-04-24 13:25:58 -04:00
|
|
|
errors = 0
|
2017-04-24 13:13:17 -04:00
|
|
|
for soc in socs:
|
2017-04-24 13:25:58 -04:00
|
|
|
os.system("rm -rf build")
|
|
|
|
builder = Builder(soc, output_dir="./build", compile_software=False, compile_gateware=False)
|
2017-04-24 13:13:17 -04:00
|
|
|
builder.build()
|
2017-04-24 13:25:58 -04:00
|
|
|
errors += not os.path.isfile("./build/gateware/top.v")
|
|
|
|
os.system("rm -rf build")
|
|
|
|
return errors
|
2017-04-24 13:13:17 -04:00
|
|
|
|
|
|
|
|
|
|
|
class TestTargets(unittest.TestCase):
|
|
|
|
def test_arty(self):
|
|
|
|
from litex.boards.targets.arty import BaseSoC, MiniSoC
|
2017-04-24 13:25:58 -04:00
|
|
|
errors = build_test([BaseSoC(), MiniSoC()])
|
|
|
|
self.assertEqual(errors, 0)
|
2017-04-24 13:13:17 -04:00
|
|
|
|
|
|
|
def test_de0nano(self):
|
|
|
|
from litex.boards.targets.de0nano import BaseSoC
|
2017-04-24 13:25:58 -04:00
|
|
|
errors = build_test([BaseSoC()])
|
|
|
|
self.assertEqual(errors, 0)
|
2017-04-24 13:13:17 -04:00
|
|
|
|
|
|
|
def test_kc705(self):
|
|
|
|
from litex.boards.targets.kc705 import BaseSoC, MiniSoC
|
2017-04-24 13:25:58 -04:00
|
|
|
errors = build_test([BaseSoC(), MiniSoC()])
|
|
|
|
self.assertEqual(errors, 0)
|
2017-04-24 13:13:17 -04:00
|
|
|
|
|
|
|
def test_minispartan6(self):
|
|
|
|
from litex.boards.targets.minispartan6 import BaseSoC
|
2017-04-24 13:25:58 -04:00
|
|
|
errors = build_test([BaseSoC()])
|
|
|
|
self.assertEqual(errors, 0)
|
2017-04-24 13:13:17 -04:00
|
|
|
|
|
|
|
def test_nexys_video(self):
|
|
|
|
from litex.boards.targets.nexys_video import BaseSoC, MiniSoC
|
2017-04-24 13:25:58 -04:00
|
|
|
errors = build_test([BaseSoC(), MiniSoC()])
|
|
|
|
self.assertEqual(errors, 0)
|