1
0
forked from brl/citadel

Only one recipe needed for citadel-tools now.

A cargo workspace was added to citadel-tools so everything can now
be built together
This commit is contained in:
Bruce Leidl 2019-01-17 11:47:49 -05:00
parent bb3434acb7
commit e2877ad052
12 changed files with 187 additions and 324 deletions

View File

@ -1,5 +1,5 @@
DEPENDS_append = " citadel-image-native mtools-native cryptsetup-native coreutils-native"
DEPENDS_append = " citadel-tools-native mtools-native cryptsetup-native coreutils-native"
# Block size must be 4096 or dm-verity won't work
EXTRA_IMAGECMD_ext2 = "-i 4096 -b 4096"

View File

@ -215,9 +215,3 @@ INHERIT+="toaster buildhistory"
#
# CITADEL_TOOLS_PATH = "/home/user/citadel-tools"
#
# You can also set this for individual recipes to avoid always rebuilding the
# entire set of citadel-tools on every change.
#
# CITADEL_TOOLS_PATH_pn-citadel-realms = "/home/user/citadel-tools"
# CITADEL_TOOLS_PATH_pn-citadel-image-native = "/home/user/citadel-tools"
#

View File

@ -7,8 +7,8 @@ RDEPENDS_${PN} = "\
packagegroup-gnome \
packagegroup-sway \
packagegroup-theme \
citadel-mount \
citadel-install \
citadel-realms \
citadel-image \
citadel-tools-mount \
citadel-tools-install \
citadel-tools-realms \
citadel-tools-image \
"

View File

@ -10,7 +10,7 @@ CITADEL_POWERTOP_append_citadel-powertop= "powertop"
RDEPENDS_${PN} = "\
${CITADEL_POWERTOP} \
citadel-desktopd \
citadel-tools-desktopd \
accountsservice \
upower \
colord \

View File

@ -1,71 +0,0 @@
include citadel-tools.inc
SRC_URI += " \
crate://crates.io/aho-corasick/0.6.4 \
crate://crates.io/atty/0.2.6 \
crate://crates.io/backtrace-sys/0.1.16 \
crate://crates.io/backtrace/0.3.5 \
crate://crates.io/bitflags/1.0.1 \
crate://crates.io/byteorder/1.2.1 \
crate://crates.io/bytes/0.4.6 \
crate://crates.io/cc/1.0.4 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/chrono/0.4.0 \
crate://crates.io/env_logger/0.5.3 \
crate://crates.io/failure/0.1.1 \
crate://crates.io/failure_derive/0.1.1 \
crate://crates.io/gcc/0.3.54 \
crate://crates.io/inotify-sys/0.1.2 \
crate://crates.io/inotify/0.5.0 \
crate://crates.io/iovec/0.1.2 \
crate://crates.io/lazy_static/1.0.0 \
crate://crates.io/libc/0.2.36 \
crate://crates.io/log/0.4.1 \
crate://crates.io/memchr/2.0.1 \
crate://crates.io/nix/0.10.0 \
crate://crates.io/num-integer/0.1.36 \
crate://crates.io/num-iter/0.1.35 \
crate://crates.io/num-traits/0.1.43 \
crate://crates.io/num-traits/0.2.0 \
crate://crates.io/num/0.1.41 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/redox_syscall/0.1.37 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/regex-syntax/0.4.2 \
crate://crates.io/regex/0.2.5 \
crate://crates.io/rustc-demangle/0.1.5 \
crate://crates.io/serde/1.0.27 \
crate://crates.io/serde_derive/1.0.27 \
crate://crates.io/serde_derive_internals/0.19.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/synstructure/0.6.1 \
crate://crates.io/termcolor/0.3.3 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/thread_local/0.3.5 \
crate://crates.io/time/0.1.39 \
crate://crates.io/toml/0.4.5 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/void/1.0.2 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/winapi/0.3.4 \
crate://crates.io/wincolor/0.1.5 \
"
inherit cargo
do_install() {
install -d ${D}${libexecdir}
install -d ${D}${datadir}/citadel
install -d ${D}${systemd_system_unitdir}
install -m 755 ${B}/target/${CARGO_TARGET_SUBDIR}/citadel-desktopd ${D}${libexecdir}
install -m 644 ${B}/conf/citadel-desktopd.conf ${D}${datadir}/citadel
install -m 644 ${B}/conf/citadel-desktopd.service ${D}${systemd_system_unitdir}
}
FILES_${PN} += "${datadir}/citadel ${systemd_system_unitdir}"

View File

@ -1,42 +0,0 @@
include citadel-tools.inc
BBCLASSEXTEND = "native"
SRC_URI += " \
crate://crates.io/ansi_term/0.11.0 \
crate://crates.io/atty/0.2.11 \
crate://crates.io/backtrace-sys/0.1.24 \
crate://crates.io/backtrace/0.3.9 \
crate://crates.io/bitflags/1.0.4 \
crate://crates.io/cc/1.0.28 \
crate://crates.io/cfg-if/0.1.6 \
crate://crates.io/clap/2.32.0 \
crate://crates.io/failure/0.1.3 \
crate://crates.io/failure_derive/0.1.3 \
crate://crates.io/lazy_static/1.2.0 \
crate://crates.io/libc/0.2.45 \
crate://crates.io/nix/0.12.0 \
crate://crates.io/proc-macro2/0.4.24 \
crate://crates.io/quote/0.6.10 \
crate://crates.io/redox_syscall/0.1.43 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/ring/0.13.5 \
crate://crates.io/rustc-demangle/0.1.9 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/serde/1.0.82 \
crate://crates.io/serde_derive/1.0.82 \
crate://crates.io/strsim/0.7.0 \
crate://crates.io/syn/0.15.22 \
crate://crates.io/synstructure/0.10.1 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/textwrap/0.10.0 \
crate://crates.io/toml/0.4.10 \
crate://crates.io/unicode-width/0.1.5 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/untrusted/0.6.2 \
crate://crates.io/vec_map/0.8.1 \
crate://crates.io/void/1.0.2 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.3.6 \
"

View File

@ -1,43 +0,0 @@
include citadel-tools.inc
SRC_URI += " \
crate://crates.io/autocfg/0.1.1 \
crate://crates.io/backtrace-sys/0.1.28 \
crate://crates.io/backtrace/0.3.13 \
crate://crates.io/bitflags/1.0.4 \
crate://crates.io/cc/1.0.28 \
crate://crates.io/cfg-if/0.1.6 \
crate://crates.io/failure/0.1.3 \
crate://crates.io/failure_derive/0.1.3 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/lazy_static/1.2.0 \
crate://crates.io/libc/0.2.45 \
crate://crates.io/nix/0.12.0 \
crate://crates.io/proc-macro2/0.4.24 \
crate://crates.io/quote/0.6.10 \
crate://crates.io/ring/0.13.5 \
crate://crates.io/rpassword/2.1.0 \
crate://crates.io/rustc-demangle/0.1.11 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/serde/1.0.84 \
crate://crates.io/serde_derive/1.0.84 \
crate://crates.io/syn/0.15.23 \
crate://crates.io/synstructure/0.10.1 \
crate://crates.io/toml/0.4.10 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/untrusted/0.6.2 \
crate://crates.io/void/1.0.2 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/winapi/0.3.6 \
"
inherit cargo
do_install() {
install -d ${D}${libexecdir}
install -m 755 ${B}/target/${CARGO_TARGET_SUBDIR}/citadel-install ${D}${libexecdir}
}

View File

@ -1,39 +0,0 @@
include citadel-tools.inc
SRC_URI += " \
crate://crates.io/autocfg/0.1.1 \
crate://crates.io/backtrace-sys/0.1.26 \
crate://crates.io/backtrace/0.3.13 \
crate://crates.io/bitflags/1.0.4 \
crate://crates.io/cc/1.0.26 \
crate://crates.io/cfg-if/0.1.6 \
crate://crates.io/failure/0.1.3 \
crate://crates.io/failure_derive/0.1.3 \
crate://crates.io/lazy_static/1.2.0 \
crate://crates.io/libc/0.2.45 \
crate://crates.io/nix/0.12.0 \
crate://crates.io/proc-macro2/0.4.24 \
crate://crates.io/quote/0.6.10 \
crate://crates.io/ring/0.13.5 \
crate://crates.io/rustc-demangle/0.1.11 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/serde/1.0.82 \
crate://crates.io/serde_derive/1.0.82 \
crate://crates.io/syn/0.15.23 \
crate://crates.io/synstructure/0.10.1 \
crate://crates.io/toml/0.4.10 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/untrusted/0.6.2 \
crate://crates.io/void/1.0.2 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.3.6 \
"
inherit cargo
do_install() {
install -d ${D}${libexecdir}
install -m 755 ${B}/target/${CARGO_TARGET_SUBDIR}/citadel-mount ${D}${libexecdir}
}

View File

@ -1,51 +0,0 @@
include citadel-tools.inc
SRC_URI += " \
crate://crates.io/ansi_term/0.11.0 \
crate://crates.io/atty/0.2.8 \
crate://crates.io/backtrace-sys/0.1.16 \
crate://crates.io/backtrace/0.3.5 \
crate://crates.io/bitflags/1.0.1 \
crate://crates.io/cc/1.0.6 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/clap/2.31.1 \
crate://crates.io/failure/0.1.1 \
crate://crates.io/failure_derive/0.1.1 \
crate://crates.io/libc/0.2.39 \
crate://crates.io/proc-macro2/0.2.3 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/quote/0.4.2 \
crate://crates.io/redox_syscall/0.1.37 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/rustc-demangle/0.1.7 \
crate://crates.io/same-file/1.0.2 \
crate://crates.io/serde/1.0.30 \
crate://crates.io/serde_derive/1.0.30 \
crate://crates.io/serde_derive_internals/0.20.0 \
crate://crates.io/strsim/0.7.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/syn/0.12.14 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/synstructure/0.6.1 \
crate://crates.io/termcolor/0.3.5 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/textwrap/0.9.0 \
crate://crates.io/toml/0.4.5 \
crate://crates.io/unicode-width/0.1.4 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/vec_map/0.8.0 \
crate://crates.io/walkdir/2.1.4 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.3.4 \
crate://crates.io/wincolor/0.1.6 \
"
inherit cargo
do_install() {
install -d ${D}${bindir}
install -m 755 -T ${B}/target/${CARGO_TARGET_SUBDIR}/citadel-realms ${D}${bindir}/realms
}

View File

@ -1,64 +0,0 @@
SUMMARY = "${PN}"
HOMEPAGE = "http://github.com/subgraph/citadel"
LICENSE = "CLOSED"
LIC_FILES_CHKSUM=""
inherit cargo
#
# Update this when changes are pushed to github
#
SRCREV = "91530279cf8390e2085ae9539d0dd4809f43ff4c"
GIT_URI = "git://github.com/subgraph/citadel-tools.git;protocol=https"
#
# To make development more convenient citadel-tools recipes support
# building from a checked out tree on the filesystem. If the variable
# CITADEL_TOOLS_PATH is set (preferably in build/conf/local.conf) then
# bitbake will not check out the source files from git but instead will
# copy the directory this variable contains.
#
#
#
# By default:
#
# S = "${WORKDIR}/git/${BPN}",
#
# if CITADEL_TOOLS_PATH is set:
#
# S = ${WORKDIR}${CITADEL_TOOLS_PATH}/${BPN}
#
S = "${WORKDIR}${@source_path(d)}/${BPN}"
#
# By default:
#
# SRC_URI += ${GIT_URI}
#
# If CITADEL_TOOLS_PATH is set:
#
# SRC_URI += "file://${CITADEL_TOOLS_PATH}"
#
SRC_URI += "${@source_uri(d)}"
# what is this even for?
CARGO_SRC_DIR=""
def source_path(d):
tools_path = d.getVar("CITADEL_TOOLS_PATH")
if tools_path:
return tools_path
else:
return "/git"
def source_uri(d):
tools_path = d.getVar("CITADEL_TOOLS_PATH")
if tools_path:
return "file://" + tools_path
else:
return d.getVar("GIT_URI")

View File

@ -0,0 +1,179 @@
SUMMARY = "${PN}"
HOMEPAGE = "http://github.com/subgraph/citadel"
LICENSE = "CLOSED"
LIC_FILES_CHKSUM=""
inherit cargo
#
# Update this when changes are pushed to github
#
SRCREV = "ff115e6005247b0b860a2da2b2bd6a0cca37381b"
GIT_URI = "git://github.com/subgraph/citadel-tools.git;protocol=https"
# If Cargo.lock changes in citadel-tools, this needs to be updated.
# cargo bitbake does not support workspaces so as a workaround first
# copy the Cargo.lock file into one of the tool subdirectories. In
# that subdirectory run "cargo bitbake" and it will produce a bitbake
# recipe file with the correct set of dependencies for the Cargo.lock
# file. Copy just the SRC_URI variable from that file here to update
# the dependency list.
SRC_URI += " \
crate://crates.io/aho-corasick/0.6.9 \
crate://crates.io/ansi_term/0.11.0 \
crate://crates.io/atty/0.2.11 \
crate://crates.io/autocfg/0.1.2 \
crate://crates.io/backtrace-sys/0.1.28 \
crate://crates.io/backtrace/0.3.13 \
crate://crates.io/bitflags/1.0.4 \
crate://crates.io/byteorder/1.2.7 \
crate://crates.io/bytes/0.4.11 \
crate://crates.io/cc/1.0.28 \
crate://crates.io/cfg-if/0.1.6 \
crate://crates.io/clap/2.32.0 \
crate://crates.io/env_logger/0.5.13 \
crate://crates.io/failure/0.1.5 \
crate://crates.io/failure_derive/0.1.5 \
crate://crates.io/futures/0.1.25 \
crate://crates.io/gcc/0.3.55 \
crate://crates.io/humantime/1.2.0 \
crate://crates.io/inotify-sys/0.1.3 \
crate://crates.io/inotify/0.5.1 \
crate://crates.io/iovec/0.1.2 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/lazy_static/1.2.0 \
crate://crates.io/libc/0.2.47 \
crate://crates.io/log/0.4.6 \
crate://crates.io/memchr/2.1.2 \
crate://crates.io/nix/0.10.0 \
crate://crates.io/nix/0.12.0 \
crate://crates.io/proc-macro2/0.4.25 \
crate://crates.io/quick-error/1.2.2 \
crate://crates.io/quote/0.6.10 \
crate://crates.io/redox_syscall/0.1.50 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/regex-syntax/0.6.4 \
crate://crates.io/regex/1.1.0 \
crate://crates.io/ring/0.13.5 \
crate://crates.io/rpassword/2.1.0 \
crate://crates.io/rustc-demangle/0.1.13 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/same-file/1.0.4 \
crate://crates.io/serde/1.0.84 \
crate://crates.io/serde_derive/1.0.84 \
crate://crates.io/strsim/0.7.0 \
crate://crates.io/syn/0.15.26 \
crate://crates.io/synstructure/0.10.1 \
crate://crates.io/termcolor/0.3.6 \
crate://crates.io/termcolor/1.0.4 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/textwrap/0.10.0 \
crate://crates.io/thread_local/0.3.6 \
crate://crates.io/toml/0.4.10 \
crate://crates.io/ucd-util/0.1.3 \
crate://crates.io/unicode-width/0.1.5 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/untrusted/0.6.2 \
crate://crates.io/utf8-ranges/1.0.2 \
crate://crates.io/vec_map/0.8.1 \
crate://crates.io/version_check/0.1.5 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/2.2.7 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-util/0.1.1 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/winapi/0.3.6 \
crate://crates.io/wincolor/0.1.6 \
crate://crates.io/wincolor/1.0.1 \
"
BBCLASSEXTEND = "native"
PACKAGES =+ "${PN}-desktopd ${PN}-realms ${PN}-install ${PN}-image ${PN}-mount"
FILES_${PN}-desktopd = "\
${libexecdir}/citadel-desktopd \
${datadir}/citadel \
${systemd_system_unitdir} \
"
FILES_${PN}-image = "${bindir}/citadel-image"
FILES_${PN}-install = "${libexecdir}/citadel-install"
FILES_${PN}-mount = "${libexecdir}/citadel-mount"
FILES_${PN}-realms = "${bindir}/realms"
TARGET_BIN = "${B}/target/${CARGO_TARGET_SUBDIR}"
DESKTOPD_CONF = "${B}/citadel-desktopd/conf"
do_install() {
install -d ${D}${bindir}
install -d ${D}${libexecdir}
install -d ${D}${datadir}/citadel
install -d ${D}${systemd_system_unitdir}
# /usr/libexec/citadel-desktopd
install -m 755 ${TARGET_BIN}/citadel-desktopd ${D}${libexecdir}
install -m 644 ${DESKTOPD_CONF}/citadel-desktopd.conf ${D}${datadir}/citadel
install -m 644 ${DESKTOPD_CONF}/citadel-desktopd.service ${D}${systemd_system_unitdir}
# /usr/bin/citadel-image
install -m 755 ${TARGET_BIN}/citadel-image ${D}${bindir}
# /usr/libexec/citadel-install
install -m 755 ${TARGET_BIN}/citadel-install ${D}${libexecdir}
# /usr/libexec/citadel-mount
install -m 755 ${TARGET_BIN}/citadel-mount ${D}${libexecdir}
# citadel-realms as /usr/bin/realms
install -m 755 -T ${TARGET_BIN}/citadel-realms ${D}${bindir}/realms
}
#
# To make development more convenient citadel-tools recipes support
# building from a checked out tree on the filesystem. If the variable
# CITADEL_TOOLS_PATH is set (preferably in build/conf/local.conf) then
# bitbake will not check out the source files from git but instead will
# copy the directory this variable contains.
#
#
#
# By default:
#
# S = "${WORKDIR}/git"
#
# if CITADEL_TOOLS_PATH is set:
#
# S = "${WORKDIR}${CITADEL_TOOLS_PATH}"
#
S = "${WORKDIR}${@source_path(d)}"
#
# By default:
#
# SRC_URI += "${GIT_URI}"
#
# If CITADEL_TOOLS_PATH is set:
#
# SRC_URI += "file://${CITADEL_TOOLS_PATH}"
#
SRC_URI += "${@source_uri(d)}"
def source_path(d):
tools_path = d.getVar("CITADEL_TOOLS_PATH")
if tools_path:
return tools_path
else:
return "/git"
def source_uri(d):
tools_path = d.getVar("CITADEL_TOOLS_PATH")
if tools_path:
return "file://" + tools_path
else:
return d.getVar("GIT_URI")

View File

@ -4,8 +4,8 @@ NO_RECOMMENDATIONS = "1"
PACKAGE_INSTALL = "\
citadel-initramfs \
citadel-mount \
citadel-install \
citadel-tools-mount \
citadel-tools-install \
cryptsetup \
strace \
lvm2 \