Skip to content

Commit

Permalink
Add scripts for building .deb package.
Browse files Browse the repository at this point in the history
  • Loading branch information
richardxia committed Feb 6, 2018
1 parent 3788e90 commit b5c01a6
Show file tree
Hide file tree
Showing 4 changed files with 58 additions and 0 deletions.
18 changes: 18 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
services:
- docker

before_install:
- docker build -t verilator .

script:
- docker run --rm -e PACKAGE_VERSION=${TRAVIS_TAG:-0.0UNTAGGED} -v $PWD:/usr/src/app verilator ./build-deb.sh

deploy:
provider: releases
api_key:
secure: ltStIEenLA7CgOv5Y48614kqf48d3zyPxsRDeT78dFSb/obmnMarafaYVjCWpn/1/NI3YLcEHkmrenousB/oU9d8GNIAK81pElBzzIEj0ZvFvpV/fS0+Dwk6N8EjWKbECkkeka2jL7B7ycGkkcHgd8VoCGsuMjNVFXetmxC5q1GRaXQ3Yh3xDXDmcQh402w3p/AR2sEo6cjZFUIfjHtVyTILKkMk1LQp5kdcHoAOJrFE5KNnCOJFutT51jJc+tp9IWNuqjNOcekMCgdYZ4i1BMGtBb2nqA1m4oZyECgnBD7HoB2swaRv9ro4HjHBnnuaaaOX03UTcGwY5i1ccQB0JDwjQruFR8LehqSoVHBUu+dvJ40XuhCIkAAQ/O9e27289p4Y2Zrsxd2W5fFIxUFCFMYqVG+LjKEpwYq0V+TTPTPx58pT749h2wAAuJH7YKVbbbIorzkmqcHuDr86PQ+60gfPbH76iUUcem39WDvEnVNywDPhNEOxgxJx6pVAHsJD15YAWChH+TbDQkXm4M5L+fghuoywoyESzO1JkckTjSYkGZd1ouhtNFKY8wKYPVXGBLXs0Agi6tF+gwKZfyi3gqDIXXD0eKqW4K2RvEtJQh1xt5s8zh826CdBxBEygOO0iIIuheDjOep/jl34NOi0WvfzxLbDaibGUhg52LCkgMQ=
file: verilator_${TRAVIS_TAG}_amd64.deb
skip_cleanup: true
on:
repo: sifive/verilator
tags: true
8 changes: 8 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
FROM ubuntu:16.04
RUN apt-get update && apt-get install -y \
autoconf \
bison \
flex \
g++ \
make
WORKDIR /usr/src/app
8 changes: 8 additions & 0 deletions README.pod
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,14 @@

=pod

=head1 FORK NOTES

This is a fork of the Verilator project which adds some steps for automatically
creating a .deb package from a release. Travis is configured to automatically
run a build and upload a release to GitHub whenever a tag is created. You can
simply cherry-pick the latest commit on top of a real Verilator release and
create a tag from that.

=head1 NAME

This is the Verilator package README file.
Expand Down
24 changes: 24 additions & 0 deletions build-deb.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#!/bin/bash

set -eux

pkg_arch=amd64
pkg_dir=$(realpath ./verilator_${PACKAGE_VERSION}_${pkg_arch})

autoconf
./configure
make
make test
make install DESTDIR=$pkg_dir

mkdir $pkg_dir/DEBIAN
cat << EOF > $pkg_dir/DEBIAN/control
Package: verilator
Version: ${PACKAGE_VERSION}
Architecture: ${pkg_arch}
Maintainer: Richard Xia <rxia@sifive.com>
Depends: perl (>= 5.22.1)
Description: fast free Verilog simulator
EOF

dpkg-deb --build $pkg_dir

0 comments on commit b5c01a6

Please sign in to comment.