about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/compilers/yosys/plugins/synlig-makefile-for-nix.patch
blob: 7d1f407d6fdcb5c38475aaa11888c8ff050079fa (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
diff --git a/Makefile b/Makefile
index 4c96ae7..9e1a2e3 100755
--- a/Makefile
+++ b/Makefile
@@ -3,7 +3,7 @@
 # Setup make itself.
 
 .ONESHELL:
-override SHELL := /bin/bash
+SHELL := bash
 override .SHELLFLAGS := -e -u -o pipefail -O nullglob -O extglob -O globstar -c
 
 # Unset all default build- and recipe-related variables.
@@ -315,7 +315,6 @@ endif
 GetTargetStructName = target[${1}]
 
 makefiles_to_include := \
-	third_party/Build.*.mk \
 	frontends/*/Build.mk \
 	tests/*/Build.mk \
 	lib/*/Build.mk
diff --git a/frontends/systemverilog/Build.mk b/frontends/systemverilog/Build.mk
index acd9cb6..c039994 100644
--- a/frontends/systemverilog/Build.mk
+++ b/frontends/systemverilog/Build.mk
@@ -1,6 +1,7 @@
 t       := systemverilog-plugin
 ts      := $(call GetTargetStructName,${t})
 out_dir := $(call GetTargetBuildDir,${t})
+mod_dir := third_party/yosys_mod
 
 cxx_is_clang := $(findstring clang,$(notdir ${CXX}))
 
@@ -13,9 +14,9 @@ ${ts}.sources := \
 	${${ts}.src_dir}uhdm_ast_frontend.cc \
 	${${ts}.src_dir}uhdm_common_frontend.cc \
 	${${ts}.src_dir}uhdm_surelog_ast_frontend.cc \
-	${$(call GetTargetStructName,yosys).mod_dir}const2ast.cc \
-	${$(call GetTargetStructName,yosys).mod_dir}edif.cc \
-	${$(call GetTargetStructName,yosys).mod_dir}simplify.cc
+	$(mod_dir)/const2ast.cc \
+	$(mod_dir)/edif.cc \
+	$(mod_dir)/simplify.cc
 
 define ${ts}.env =
 export PKG_CONFIG_PATH=$(call ShQuote,${$(call GetTargetStructName,surelog).output_vars.PKG_CONFIG_PATH}$(if ${PKG_CONFIG_PATH},:${PKG_CONFIG_PATH}))
@@ -35,8 +36,8 @@ endif
 endif
 
 ${ts}.cxxflags = \
-	-I${$(call GetTargetStructName,yosys).src_dir} \
-	-I${$(call GetTargetStructName,yosys).mod_dir} \
+	-I$(shell yosys-config --cxxflags) \
+	-I$(mod_dir) \
 	-D_YOSYS_ \
 	-DYOSYS_ENABLE_PLUGINS \
 	$(shell ${${ts}.env}; pkg-config --cflags Surelog) \
@@ -55,7 +56,7 @@ ${ts}.ldflags = \
 	$(shell ${${ts}.env}; pkg-config --libs-only-L Surelog) \
 	${build_type_ldflags} \
 	${LDFLAGS} \
-	-Wl,--export-dynamic
+	$(shell yosys-config --ldflags --ldlibs)
 
 ${ts}.ldlibs = \
 	$(shell ${${ts}.env}; pkg-config --libs-only-l --libs-only-other Surelog) \