diff options
author | P. J. McDermott <pjm@nac.net> | 2012-01-19 20:44:06 (EST) |
---|---|---|
committer | P. J. McDermott <pjm@nac.net> | 2012-01-19 20:44:06 (EST) |
commit | 2c0b2a3c5a7ecf4888387864784933b758d356e9 (patch) | |
tree | bd6c2b199806b5b98a4040389f133a5e95e43e4b | |
parent | 8ff365db634e1e848439ad4567b7824972abbd33 (diff) |
Write opkbuild.
-rw-r--r-- | src/opkbuild | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/src/opkbuild b/src/opkbuild new file mode 100644 index 0000000..e4d8d60 --- /dev/null +++ b/src/opkbuild @@ -0,0 +1,67 @@ +#! /bin/sh +# +# opkhelper +# src/opkbuild +# Build opkg packages. +# +# 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 <http://www.gnu.org/licenses/>. + +print_usage() +{ + printf 'Usage: %s\n' "$1" +} + +# TODO: Sanity checks. + +mkdir -p tmp/dest/usr/src/${pkgname}_${pkgver} +cd tmp +for file in ../*; do + case ${file} in + ../tmp) + ;; + ../*) + cp -R ${file} dest/usr/src/${pkgname}_${pkgver} + ;; + esac +done +# TODO: Generate control file. +oh-buildpkg ${pkgname}-src +rm -Rf dest + +for binpkgdir in ../*.pkg/; do + # TODO: Check architecture. + if true; then + mkdir dest + if [ -d ../src ]; then + cp -Rp ../src src + elif [ -f ../${pkgname}_${pkgver}.tar.gz ]; then + tar -xzf ../${pkgname}_${pkgver}.tar.gz + fi + # TODO: Other compression formats, putting things in src/, ... + binpkg=${binpkgdir#'../'} + binpkg=${binpkg%'.pkg/} + ../build ${binpkg} + for file in *; do + case ${file} in + *.buildstamp) + ;; + *) + rm -Rf ${file} + ;; + esac + done + fi +done |