Add dkms packaging for our kernel modules
This commit is contained in:
parent
928ebdba5a
commit
c32e200638
12 changed files with 184 additions and 0 deletions
13
kernel/Makefile
Normal file
13
kernel/Makefile
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
#/usr/bin/make
|
||||||
|
VERSION = 1
|
||||||
|
SRC = $(DESTDIR)/usr/src
|
||||||
|
|
||||||
|
all:
|
||||||
|
|
||||||
|
clean:
|
||||||
|
|
||||||
|
install:
|
||||||
|
install -d $(SRC)
|
||||||
|
for d in ashmem binder ; do \
|
||||||
|
cp -a $$d $(SRC)/anbox-modules-$$d-$(VERSION) ; \
|
||||||
|
done
|
||||||
7
kernel/ashmem/dkms.conf
Normal file
7
kernel/ashmem/dkms.conf
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
PACKAGE_NAME="anbox-ashmem"
|
||||||
|
PACKAGE_VERSION="1"
|
||||||
|
CLEAN="make clean"
|
||||||
|
MAKE[0]="make all KVERSION=$kernelver"
|
||||||
|
BUILT_MODULE_NAME[0]="ashmem_linux"
|
||||||
|
DEST_MODULE_LOCATION[0]="/updates"
|
||||||
|
AUTOINSTALL="yes"
|
||||||
7
kernel/binder/dkms.conf
Normal file
7
kernel/binder/dkms.conf
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
PACKAGE_NAME="anbox-binder"
|
||||||
|
PACKAGE_VERSION="1"
|
||||||
|
CLEAN="make clean"
|
||||||
|
MAKE[0]="make all KVERSION=$kernelver"
|
||||||
|
BUILT_MODULE_NAME[0]="binder_linux"
|
||||||
|
DEST_MODULE_LOCATION[0]="/updates"
|
||||||
|
AUTOINSTALL="yes"
|
||||||
5
kernel/debian/README.Debian
Normal file
5
kernel/debian/README.Debian
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
MODULE_NAME DKMS module for Debian
|
||||||
|
|
||||||
|
This package was automatically generated by the DKMS system,
|
||||||
|
for distribution on Debian based operating systems.
|
||||||
|
|
||||||
5
kernel/debian/changelog
Normal file
5
kernel/debian/changelog
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
anbox-modules-dkms (1) xenial; urgency=low
|
||||||
|
|
||||||
|
* Initial release.
|
||||||
|
|
||||||
|
-- Simon Fels <morphis@gravedo.de> Mon, 06 Feb 2017 21:43:58 +0100
|
||||||
1
kernel/debian/compat
Normal file
1
kernel/debian/compat
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
7
|
||||||
14
kernel/debian/control
Normal file
14
kernel/debian/control
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
Source: anbox-modules-dkms
|
||||||
|
Section: misc
|
||||||
|
Priority: optional
|
||||||
|
Maintainer: Simon Fels <morphis@gravedo.de>
|
||||||
|
Build-Depends: debhelper (>= 7), dkms
|
||||||
|
Standards-Version: 3.9.7
|
||||||
|
|
||||||
|
Package: anbox-modules-dkms
|
||||||
|
Architecture: all
|
||||||
|
Depends: dkms (>= 1.95), ${misc:Depends}
|
||||||
|
Description: Android kernel driver (binder, ashmem) in DKMS format.
|
||||||
|
.
|
||||||
|
This package contains a out-of-tree version of the core Android
|
||||||
|
kernel functionalities binder and ashmem.
|
||||||
37
kernel/debian/copyright
Normal file
37
kernel/debian/copyright
Normal file
|
|
@ -0,0 +1,37 @@
|
||||||
|
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||||
|
Upstream-Name: anbox
|
||||||
|
Source: http://github.com/anbox
|
||||||
|
|
||||||
|
files: debian/* Makefile
|
||||||
|
Copyright: 2017 Simon Fels <morphis@gravedo.de>
|
||||||
|
License: GPL-3
|
||||||
|
This program is free software: you can redistribute it and/or modify it
|
||||||
|
under the terms of the the GNU General Public License version 3, as
|
||||||
|
published by the Free Software Foundation.
|
||||||
|
.
|
||||||
|
This program is distributed in the hope that it will be useful, but
|
||||||
|
WITHOUT ANY WARRANTY; without even the implied warranties of
|
||||||
|
MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
|
||||||
|
PURPOSE. See the applicable version of the GNU Lesser General Public
|
||||||
|
License for more details.
|
||||||
|
.
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
.
|
||||||
|
On Debian systems, the complete text of the GNU General Public License
|
||||||
|
can be found in `/usr/share/common-licenses/GPL-3'
|
||||||
|
|
||||||
|
|
||||||
|
files: ashmem/* binder/*
|
||||||
|
Copyright: 2008-2012 Google Inc.
|
||||||
|
License: GPL-2
|
||||||
|
Copyright (C) 2008-2012 Google, Inc.
|
||||||
|
.
|
||||||
|
This software is licensed under the terms of the GNU General Public
|
||||||
|
License version 2, as published by the Free Software Foundation, and
|
||||||
|
may be copied, distributed, and modified under those terms.
|
||||||
|
.
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
1
kernel/debian/dirs
Normal file
1
kernel/debian/dirs
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
usr/src
|
||||||
51
kernel/debian/postinst
Executable file
51
kernel/debian/postinst
Executable file
|
|
@ -0,0 +1,51 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Copyright (C) 2002-2005 Flavio Stanchina
|
||||||
|
# Copyright (C) 2005-2006 Aric Cyr
|
||||||
|
# Copyright (C) 2007 Mario Limonciello
|
||||||
|
# Copyright (C) 2009 Alberto Milone
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
NAME=anbox-modules
|
||||||
|
PACKAGE_NAME=$NAME-dkms
|
||||||
|
DEB_NAME=$(echo $PACKAGE_NAME | sed 's,_,-,')
|
||||||
|
CVERSION=`dpkg-query -W -f='${Version}' $DEB_NAME | awk -F "-" '{print $1}' | cut -d\: -f2`
|
||||||
|
ARCH=`dpkg --print-architecture`
|
||||||
|
|
||||||
|
dkms_configure () {
|
||||||
|
for POSTINST in /usr/lib/dkms/common.postinst "/usr/share/$PACKAGE_NAME/postinst"; do
|
||||||
|
if [ -f "$POSTINST" ]; then
|
||||||
|
for d in ashmem binder ; do
|
||||||
|
"$POSTINST" "$NAME-$d" "$CVERSION" "/usr/share/$PACKAGE_NAME" "$ARCH" "$2"
|
||||||
|
done
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
echo "WARNING: $POSTINST does not exist." >&2
|
||||||
|
done
|
||||||
|
echo "ERROR: DKMS version is too old and $PACKAGE_NAME was not" >&2
|
||||||
|
echo "built with legacy DKMS support." >&2
|
||||||
|
echo "You must either rebuild $PACKAGE_NAME with legacy postinst" >&2
|
||||||
|
echo "support or upgrade DKMS to a more current version." >&2
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
configure)
|
||||||
|
dkms_configure
|
||||||
|
;;
|
||||||
|
|
||||||
|
abort-upgrade|abort-remove|abort-deconfigure)
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "postinst called with unknown argument \`$1'" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# dh_installdeb will replace this with shell code automatically
|
||||||
|
# generated by other debhelper scripts.
|
||||||
|
|
||||||
|
#DEBHELPER#
|
||||||
|
|
||||||
|
exit 0
|
||||||
28
kernel/debian/prerm
Executable file
28
kernel/debian/prerm
Executable file
|
|
@ -0,0 +1,28 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
NAME=anbox-modules-dkms
|
||||||
|
VERSION=1
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
remove|upgrade|deconfigure)
|
||||||
|
if [ "`dkms status -m $NAME`" ]; then
|
||||||
|
dkms remove -m $NAME -v $VERSION --all
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
|
||||||
|
failed-upgrade)
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "prerm called with unknown argument \`$1'" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
#DEBHELPER#
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
||||||
15
kernel/debian/rules
Executable file
15
kernel/debian/rules
Executable file
|
|
@ -0,0 +1,15 @@
|
||||||
|
#!/usr/bin/make -f
|
||||||
|
# -*- makefile -*-
|
||||||
|
|
||||||
|
# Uncomment this to turn on verbose mode.
|
||||||
|
#export DH_VERBOSE=1
|
||||||
|
|
||||||
|
DEB_NAME=anbox-modules
|
||||||
|
|
||||||
|
include /usr/share/dpkg/default.mk
|
||||||
|
|
||||||
|
%:
|
||||||
|
dh $@ --parallel --fail-missing
|
||||||
|
|
||||||
|
override_dh_install:
|
||||||
|
$(MAKE) DESTDIR=$(CURDIR)/debian/$(DEB_NAME)-dkms install
|
||||||
Loading…
Add table
Add a link
Reference in a new issue