@@ -86,13 +86,14 @@ venv:
8686# We also install cyclonedx-go to generate SBOM for Go, compile the Go modules,
8787# install SLSA verifier binary, and download mvnw.
8888.PHONY : setup
89+ .PHONY : souffle
8990setup : force-upgrade setup-go setup-binaries
9091pre-commit install
9192mkdir -p dist
9293go install github.com/CycloneDX/cyclonedx-gomod/cmd/cyclonedx-gomod@v1.3.0
9394setup-go :
9495go build -o $(MACARON_PATH ) /bin/ $(MACARON_PATH ) /golang/cmd/...
95- setup-binaries : $(MACARON_PATH ) /bin/slsa-verifier $(MACARON_PATH ) /resources/mvnw
96+ setup-binaries : $(MACARON_PATH ) /bin/slsa-verifier $(MACARON_PATH ) /resources/mvnw souffle
9697$(MACARON_PATH ) /bin/slsa-verifier :
9798git clone --depth 1 https://github.com/slsa-framework/slsa-verifier.git -b v2.0.1
9899cd slsa-verifier/cli/slsa-verifier && go build -o $(MACARON_PATH ) /bin/
@@ -105,6 +106,28 @@ $(MACARON_PATH)/resources/mvnw:
105106&& echo -e " distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip\nwrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar" > .mvn/wrapper/maven-wrapper.properties \
106107&& cd $(MACARON_PATH )
107108
109+ # Supports OL8+, Fedora 34+, and Ubuntu 20.04+
110+ LINUX_DISTRO := "$(shell grep '^NAME=' /etc/os-release | sed 's/^NAME=//' | sed 's/"//g') "
111+ souffle :
112+ if ! [ ` which souffle` ]; then \
113+ echo " Installing system dependency: souffle" && \
114+ case $( LINUX_DISTRO) in \
115+ " Oracle Linux" ) \
116+ sudo dnf -y install https ://github.com/souffle-lang/souffle/releases/download/2.3/x86_64-oraclelinux-8-souffle-2.3-Linux.rpm \
117+ ;; \
118+ "Fedora Linux") \
119+ sudo dnf -y install https ://github.com/souffle-lang/souffle/releases/download/2.3/x86_64-fedora-34-souffle-2.3-Linux.rpm \
120+ ;; \
121+ "Ubuntu") \
122+ wget https://github.com/souffle-lang/souffle/releases/download/2.3/x86_64-ubuntu-2004-souffle-2.3-Linux.deb \
123+ -o souffle.deb; \
124+ sudo apt-get -y install ./souffle.deb; \
125+ rm ./souffle.deb \
126+ ;; \
127+ esac; \
128+ fi
129+
130+
108131# Install or upgrade an existing virtual environment based on the
109132# package dependencies declared in pyproject.toml and go.mod.
110133.PHONY : upgrade force-upgrade upgrade-go
0 commit comments