Add debian directory for building .deb packages

This commit is contained in:
Lubos Dolezel 2017-06-05 21:47:34 +02:00
parent 09889b6603
commit 7228350584
11 changed files with 88 additions and 0 deletions

1
debian/compat vendored Normal file
View File

@ -0,0 +1 @@
10

17
debian/control vendored Normal file
View File

@ -0,0 +1,17 @@
Source: darling
Maintainer: Lubos Dolezel <lubos@dolezel.info>
Section: misc
Priority: optional
Standards-Version: 3.9.2
Build-Depends: cmake, flex, bison, clang, ninja-build, libcap2-bin
Package: darling
Architecture: amd64
Depends: ${shlibs:Depends}, ${misc:Depends}, fuse, darling-dkms
Description: Darling
macOS emulation layer for Linux
Package: darling-dkms
Architecture: amd64
Description: Kernel module for Darling
Depends: dkms

4
debian/copyright vendored Normal file
View File

@ -0,0 +1,4 @@
Copyright (C) 2012-2017 Darling developers
Copyright (C) 1999-2017 Apple, Inc.
Copyright (C) 1989-2005 Free Software Foundation, Inc.

3
debian/darling-dkms.install vendored Normal file
View File

@ -0,0 +1,3 @@
src/lkm /usr/src/darling-mach-0.1
debbuild/src/lkm/osfmk /usr/src/darling-mach-0.1/miggen
debian/dkms.conf /usr/src/darling-mach-0.1

13
debian/darling-dkms.postinst vendored Executable file
View File

@ -0,0 +1,13 @@
#!/bin/sh
set -e
MODNAME="darling-mach"
MODVER="0.1"
echo ">>> DKMS: Module add, build, and install"
dkms add -m $MODNAME -v $MODVER
dkms build -m $MODNAME -v $MODVER
dkms install -m $MODNAME -v $MODVER
depmod -a

15
debian/darling-dkms.prerm vendored Executable file
View File

@ -0,0 +1,15 @@
#!/bin/sh
set -e
MODNAME="darling-mach"
echo ">>> DKMS: Module uninstall"
line=$(dkms status -m $MODNAME)
if echo "$line" | grep -E 'added|built|installed'; then
version=$(echo "$line" | sed "s/$MODNAME,\([^,]*\)[,:].*/\1/;t;d")
dkms remove -m $MODNAME -v $version --all
fi
depmod -a

1
debian/darling.install vendored Normal file
View File

@ -0,0 +1 @@
usr

10
debian/dkms.conf vendored Normal file
View File

@ -0,0 +1,10 @@
PACKAGE_NAME=darling-mach
PACKAGE_VERSION=0.1
BUILT_MODULE_NAME="$PACKAGE_NAME"
BUILT_MODULE_LOCATION=lkm/
DEST_MODULE_LOCATION[0]=/extra
MAKE[0]="'make' -C lkm/ MIGDIR=/usr/src/${PACKAGE_NAME}-${PACKAGE_VERSION}/miggen MIGDIR_REL=../miggen"
CLEAN="'make' -C lkm/ MIGDIR=/usr/src/${PACKAGE_NAME}-${PACKAGE_VERSION}/miggen MIGDIR_REL=../miggen clean"
REMAKE_INITRD=no
AUTOINSTALL=yes

15
debian/rules vendored Executable file
View File

@ -0,0 +1,15 @@
#!/usr/bin/make -f
%:
dh $@ --builddirectory=debbuild --parallel
override_dh_auto_configure:
mkdir debbuild
cd debbuild && CFLAGS="" CXXFLAGS="" CPPFLAGS="" LDFLAGS="" cmake .. -DCMAKE_TOOLCHAIN_FILE=../Toolchain.cmake -DCMAKE_INSTALL_PREFIX=/usr
override_dh_auto_build:
cd debbuild && $(MAKE) && make lkm_generate printwrapgen
override_dh_makeshlibs:
dh_makeshlibs
# TODO: append ELF files referenced from Mach-Os into debian/darling.shlibs

1
debian/source/format vendored Normal file
View File

@ -0,0 +1 @@
3.0 (quilt)

8
tools/makedeb Executable file
View File

@ -0,0 +1,8 @@
#!/bin/sh
set -e
DATE=$(date +%Y%m%d)
rm -f debian/changelog
EDITOR=true NAME="Darling build server" EMAIL=noreply@darlinghq.org dch -u low -v 0.1.${DATE}-1 --create --distribution testing "Daily build"
debuild -us -uc -b