From 88f867d9995be83eb6e95d44b6ab3dd2e9aca8f2 Mon Sep 17 00:00:00 2001 From: P. J. McDermott Date: Wed, 03 Oct 2012 18:47:03 -0400 Subject: Implement ob-buildopk. --- (limited to 'src') diff --git a/src/Makefile.in b/src/Makefile.in index c90078d..a5a1264 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -43,8 +43,8 @@ SRCS = opkbuild.sh \ ob-applypatches.sh \ ob-installplatconf.sh \ ob-installdocs.sh \ - ob-gencontrol.sh #\ - ob-buildopk.sh \ + ob-gencontrol.sh \ + ob-buildopk.sh #\ ob-genchanges.sh OBJS = $(SRCS:.sh=) diff --git a/src/ob-buildopk.sh b/src/ob-buildopk.sh new file mode 100644 index 0000000..a79d37b --- /dev/null +++ b/src/ob-buildopk.sh @@ -0,0 +1,58 @@ +#!@@SH@@ +# +# opkbuild +# src/ob-buildopk +# Pack binary package files into an opk file. +# +# Copyright (C) 2012 Patrick "P. J." McDermott +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# 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. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +. '@@LIBOPKBUILD@@/load.sm' + +ob_use locale +ob_use output +ob_use package + +main() +{ + ob_set_text_domain 'opkbuild' + + ob_init_package '..' + ob_parse_package_metadata -c '.opkbuild.cache' + + echo '2.0' >debian-binary + if [ -n "${OB_DO_SOURCE}" ]; then + build_opk "src:${OB_SOURCE}" "${OB_SOURCE_VERSION}" + else + for pkg in $(ob_get_binary_packages); do + build_opk "${pkg}" "${OB_BINARY_VERSION}" + done + fi +} + +build_opk() +{ + binary="${1}" + version="${2}" + + (cd ${binary}.data && tar -czf '../data.tar.gz') + (cd ${binary}.control && tar -czf '../control.tar.gz') + + tar -czf ../../${binary}_${version}_all.opk \ + debian-binary data.tar.gz control.tar.gz + rm -Rf debian-binary control data.tar.gz control.tar.gz +} + +main "${@}" -- cgit v0.9.1