summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorP. 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)
commit2c0b2a3c5a7ecf4888387864784933b758d356e9 (patch)
treebd6c2b199806b5b98a4040389f133a5e95e43e4b /src
parent8ff365db634e1e848439ad4567b7824972abbd33 (diff)
Write opkbuild.
Diffstat (limited to 'src')
-rw-r--r--src/opkbuild67
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