summaryrefslogtreecommitdiffstats
path: root/src/package.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/package.sh')
-rw-r--r--src/package.sh62
1 files changed, 62 insertions, 0 deletions
diff --git a/src/package.sh b/src/package.sh
new file mode 100644
index 0000000..3175202
--- /dev/null
+++ b/src/package.sh
@@ -0,0 +1,62 @@
+# Interface for handling source package metadata
+#
+# Copyright (C) 2014 Patrick "P. J." McDermott
+#
+# This file is part of the ProteanOS Development Kit.
+#
+# The ProteanOS Development Kit 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.
+#
+# The ProteanOS Development Kit 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 the ProteanOS Development Kit. If not, see
+# <http://www.gnu.org/licenses/>.
+
+package_dir=
+package_format=
+
+package_init()
+{
+ local dir="${1}"
+
+ package_dir="${dir}"
+
+ package_format=''
+ if [ -r "${package_dir}/format" ]; then
+ case "$(cat "${package_dir}/format")" in
+ 2.*)
+ package_format=2
+ ;;
+ esac
+ fi
+
+ if [ "x${package_format}" = 'x' ]; then
+ error 2 "$(get_msg 'package_format_unknown')"
+ fi
+
+ use "package/${package_format}"
+
+ return 0
+}
+
+package_get_build_deps()
+{
+ local arch="${1}"
+ local plat="${2}"
+
+ "package_${package_format}_get_build_deps" "${arch}" "${plat}"
+}
+
+package_set_substvars()
+{
+ local arch="${1}"
+ local plat="${2}"
+
+ "package_${package_format}_set_substvars" "${arch}" "${plat}"
+}