summaryrefslogtreecommitdiff
path: root/rc/bin/ape/install
diff options
context:
space:
mode:
authorTaru Karttunen <taruti@taruti.net>2011-03-30 17:14:36 +0300
committerTaru Karttunen <taruti@taruti.net>2011-03-30 17:14:36 +0300
commit2959e1ede0ebc6fdffd7b8660f43c2ce14c9696f (patch)
treef6343b1ce11a8c87251dd27cf3d3e26b50693fa7 /rc/bin/ape/install
parente463eb40363ff4c68b1d903f4e0cdd0ac1c5977f (diff)
Import sources from 2011-03-30 iso image - rc
Diffstat (limited to 'rc/bin/ape/install')
-rwxr-xr-xrc/bin/ape/install40
1 files changed, 40 insertions, 0 deletions
diff --git a/rc/bin/ape/install b/rc/bin/ape/install
new file mode 100755
index 000000000..8d81bec1f
--- /dev/null
+++ b/rc/bin/ape/install
@@ -0,0 +1,40 @@
+#!/bin/rc
+# Usage: install [options] srcfile dstfile
+# Usage: install srcfile dstfile owner group mode
+
+fn usage {
+ echo 'usage: install [-c|-m mode] srcfile dstfile' >[1=2]
+ exit 1
+}
+
+mode=775
+while(! ~ $#* 0){
+ switch($1){
+ case -c
+ ;
+ case -m
+ mode=$2
+ shift
+ case -*
+ usage
+ case *
+ switch($#*) {
+ case 2
+ ;
+ case 5
+ mode=$5 # backward compatibility
+ case *
+ usage
+ }
+ srcfile=$1
+ dstfile=$2
+ if (! test -f $dstfile || ! cmp -s $srcfile $dstfile) {
+ cp $srcfile $dstfile
+ chmod $mode $dstfile
+ chmod g+w $dstfile
+ }
+ exit 0
+ }
+ shift
+}
+usage