diff options
author | Igor Pashev <igor.pashev@nexenta.com> | 2012-10-29 15:36:38 +0400 |
---|---|---|
committer | Igor Pashev <igor.pashev@nexenta.com> | 2012-10-29 15:36:38 +0400 |
commit | 434c9d1997c6b4e8efff4755511f5430ba8f7efe (patch) | |
tree | addb65ce4643f17b41548d4da9bb7d612fda682e /rules/deb.mk | |
parent | 64fb34d1346bab605bf702bf2c2659c91bac0bc3 (diff) | |
download | cibs-434c9d1997c6b4e8efff4755511f5430ba8f7efe.tar.gz |
Add support for creating deb packages
Diffstat (limited to 'rules/deb.mk')
-rw-r--r-- | rules/deb.mk | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/rules/deb.mk b/rules/deb.mk new file mode 100644 index 0000000..15053f5 --- /dev/null +++ b/rules/deb.mk @@ -0,0 +1,80 @@ +# +# CDDL HEADER START +# +# The contents of this file are subject to the terms of the +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. +# +# You can obtain a copy of the license +# at http://www.opensource.org/licenses/CDDL-1.0 +# See the License for the specific language governing permissions +# and limitations under the License. +# +# When distributing Covered Code, include this CDDL HEADER in each file. +# If applicable, add the following below this CDDL HEADER, with the +# fields enclosed by brackets "[]" replaced with your own identifying +# information: Portions Copyright [yyyy] [name of copyright owner] +# +# CDDL HEADER END +# +# +# Copyright (C) 2012, Nexenta Systems, Inc. All rights reserved. +# + +# include guard: +ifeq (,$(__deb_mk)) + +include /usr/share/cibs/rules/ips-manifest.mk + +debmaker := /usr/share/cibs/scripts/debmaker.pl + +DEBVERSION ?= ips + +pkg-define += -D COMPONENT_VERSION="$(ips-version)" + +debsdir := ./debs + +deb-build-depends = \ + $(subst /,-, \ + $(subst pkg:/,,$(build-depends)) \ + ) + + +pre-deb: depend-stamp + +deb-stamp: pre-deb + [ -n "$(debsdir)" ] + [ -d "$(debsdir)" ] || mkdir -p "$(debsdir)" + $(root-cmd) $(debmaker) \ + -V "$(DEBVERSION)" \ + -S "$(name)" \ + -O "$(debsdir)" \ + $(pkg-define) \ + $(pkg-protos) \ + $(depend-manifests) \ + + touch $@ + +deb: deb-stamp + +check-build-dep-stamp: check-deb-build-dep-stamp + +# issue 'make d=' to skip dependency checking: +check-deb-build-dep-stamp: d=true +check-deb-build-dep-stamp: + @[ -z "$d" ] || [ -z "$(build-depends)" ] || dpkg -l $(deb-build-depends) || \ + (echo "type '$(MAKE) build-dep' to install build dependencies"; \ + echo "or add 'd=' to command, e. g. '$(MAKE) build d='"; \ + false) + touch $@ + + +# Install build dependencies: +build-dep: + $(root-cmd) apt-get install $(deb-build-depends) + +.PHONY: deb build-dep pre-deb + +__deb_mk := included +endif + |