summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorP. J. McDermott <pjm@nac.net>2012-08-02 13:22:40 (EDT)
committer P. J. McDermott <pjm@nac.net>2012-08-02 13:22:40 (EDT)
commitc1d4f0e4c9a6526ff0111cac29811c1f1a1d0f20 (patch)
treea844f0bdba4d75f1a12320e40d9c49167fbd2c95 /lib
parent8de7ad41e4a15092f68a5eb540a2c0faec99eed5 (diff)
Write oh_cache().
Diffstat (limited to 'lib')
-rw-r--r--lib/Makefile.in1
-rw-r--r--lib/cache.sh37
2 files changed, 38 insertions, 0 deletions
diff --git a/lib/Makefile.in b/lib/Makefile.in
index aa7cacd..1f40840 100644
--- a/lib/Makefile.in
+++ b/lib/Makefile.in
@@ -40,6 +40,7 @@ SRCS = control.sh \
changelog.sh \
locale.sh \
messages.sh \
+ cache.sh \
util.sh
OBJS = $(SRCS:.sh=)
diff --git a/lib/cache.sh b/lib/cache.sh
new file mode 100644
index 0000000..b428fd8
--- /dev/null
+++ b/lib/cache.sh
@@ -0,0 +1,37 @@
+# opkhelper
+# lib/cache
+# Cache property functions.
+#
+# 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/>.
+
+[ -n "${_OH_CACHE_SH}" ] && return 0
+_OH_CACHE_SH=true
+
+. @@LIBDIR@@/util
+
+oh_cache()
+{
+ _property="${1}"
+ shift
+
+ mkdir -p "${OH_SOURCE_DIR}/tmp/.cache"
+
+ if [ ${#} -eq 1 ]; then
+ cat "${OH_SOURCE_DIR}/tmp/.cache/${_property}" 2>/dev/null
+ else
+ echo "${*}" >"${OH_SOURCE_DIR}/tmp/.cache/${_property}"
+ fi
+}