blob: 525d43a9e568a06b6e427760ab1f7235d04b9c48 [file] [log] [blame]
# Copyright 2020-2022 F4PGA Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
PLUGIN_DIR := $(abspath $(dir $(lastword $(MAKEFILE_LIST))))
NAME = systemverilog
SOURCES = UhdmAst.cc \
uhdmastfrontend.cc \
uhdmcommonfrontend.cc \
uhdmsurelogastfrontend.cc \
third_party/yosys/const2ast.cc \
third_party/yosys/simplify.cc
# Directory to search for Surelog and UHDM libraries
UHDM_INSTALL_DIR ?= /usr/local
# Tell pkg-config to look in the provided install path first.
# PKG_CONFIG_PATH and PKG_CONFIG_PATH_FOR_TARGET are search paths it looks in
# so set the environment variables and prefix with our local install first
PKG_CONFIG_INVOKE = \
PKG_CONFIG_PATH=$(UHDM_INSTALL_DIR)/lib/pkgconfig:${PKG_CONFIG_PATH} \
PKG_CONFIG_PATH_FOR_TARGET=$(UHDM_INSTALL_DIR)/lib/pkgconfig:${PKG_CONFIG_PATH_FOR_TARGET} \
pkg-config
include ../Makefile_plugin.common
# A litmus-test: make compilation fail if pkg-config fails
.SECONDARY: $(BUILD_DIR)/.$(NAME)-deps-test
$(BUILD_DIR)/.$(NAME)-deps-test:
$(PKG_CONFIG_INVOKE) --cflags Surelog
${SO_LIB}: | $(BUILD_DIR)/.$(NAME)-deps-test
CXXFLAGS += -std=c++17 -Wall -W -Wextra \
-Wno-deprecated-declarations \
-Wno-unused-parameter \
$(shell $(PKG_CONFIG_INVOKE) --cflags Surelog)
LDFLAGS += $(shell $(PKG_CONFIG_INVOKE) --libs-only-L Surelog)
LDLIBS += $(shell $(PKG_CONFIG_INVOKE) --libs-only-l --libs-only-other Surelog)