Magellan Linux

Contents of /trunk/include/mtools.sminc

Parent Directory Parent Directory | Revision Log Revision Log


Revision 12655 - (show annotations) (download)
Tue Jun 26 16:15:58 2012 UTC (11 years, 10 months ago) by niro
File size: 16849 byte(s)
-fixed udev and systemd install directories
1 # $Header: /magellan-cvs/smage/include/mtools.sminc,v 1.39 2008/04/20 08:28:23 niro Exp $
2 # some special build tools
3
4 # automatical inherit mtools.minc
5 # this will provide the service management functions
6 INHERITS="${INHERITS} mtools"
7
8 # get the pname right with splitpackages
9 mpname()
10 {
11 local pname="${PNAME}"
12 [[ ! -z ${SPLIT_PACKAGE_BASE} ]] && pname="${SPLIT_PACKAGE_BASE}"
13
14 echo "${pname}"
15 }
16
17 # installs initscripts
18 # minstallrc /path/to/rc-script {destfilename}
19 minstallrc()
20 {
21 local rcscript
22 local file
23
24 [[ -z "$1" ]] && die "No initscript given"
25
26 # if no fullpath given use file from sourcedir
27 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
28 then
29 file="${SOURCEDIR}/$(mpname)/$1"
30 else
31 file="$1"
32 fi
33
34 if [[ -n "$2" ]]
35 then
36 rcscript="$2"
37 else
38 rcscript="$(basename ${file})"
39 fi
40
41 # needed directory
42 install -d ${BINDIR}/etc/rc.d/init.d || die
43
44 # install our initscript
45 install -v -m 0755 -o root -g root ${file} ${BINDIR}/etc/rc.d/init.d/${rcscript} || die
46 }
47
48 # installs environment files
49 # minstallenv /path/to/envdfile {destfilename}
50 minstallenv()
51 {
52 local envdfile
53 local file
54
55 [[ -z "$1" ]] && die "No envd file given"
56
57 # if no fullpath given use file from sourcedir
58 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
59 then
60 file="${SOURCEDIR}/$(mpname)/$1"
61 else
62 file="$1"
63 fi
64
65 if [[ -n "$2" ]]
66 then
67 envdfile="$2"
68 else
69 envdfile="$(basename ${file})"
70 fi
71
72 # needed directory
73 install -d ${BINDIR}/etc/env.d || die
74
75 # install our envfile
76 install -v -m 0644 -o root -g root ${file} ${BINDIR}/etc/env.d/${envdfile} || die
77 }
78
79 # installs system configuration files
80 # minstallconf /path/to/confdfile {destfilename}
81 minstallconf()
82 {
83 local confdfile
84 local file
85
86 [[ -z "$1" ]] && die "No confd file given"
87
88 # if no fullpath given use file from sourcedir
89 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
90 then
91 file="${SOURCEDIR}/$(mpname)/$1"
92 else
93 file="$1"
94 fi
95
96 if [[ -n "$2" ]]
97 then
98 confdfile="$2"
99 else
100 confdfile="$(basename ${file})"
101 fi
102
103 # needed directory
104 install -d ${BINDIR}/etc/conf.d || die
105
106 # install our configfile
107 install -v -m 0644 -o root -g root ${file} ${BINDIR}/etc/conf.d/${confdfile} || die
108 }
109
110 # installs system configuration files to etc
111 # minstalletc /path/to/etcfile {destfilename} {destdir path}
112 minstalletc()
113 {
114 local etcfile
115 local file
116 local destdir
117
118 [[ -z "$1" ]] && die "No etc file given"
119
120 # if no fullpath given use file from sourcedir
121 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
122 then
123 file="${SOURCEDIR}/$(mpname)/$1"
124 else
125 file="$1"
126 fi
127
128 if [[ -n "$2" ]]
129 then
130 etcfile="$2"
131 else
132 etcfile="$(basename ${file})"
133 fi
134
135 if [[ -n "$3" ]]
136 then
137 destdir="$3"
138 else
139 destdir="/etc"
140 fi
141
142 # needed directory
143 install -d ${BINDIR}/${destdir} || die
144
145 # install our configfile
146 install -v -m 0644 -o root -g root ${file} ${BINDIR}/${destdir}/${etcfile} || die
147 }
148
149 minstalludevrule()
150 {
151 local udevrule
152 local file
153 local udevrulesddir="/usr/lib/udev/rules.d"
154
155 [[ -z "$1" ]] && die "No udev rule given"
156
157 # if no fullpath given use file from sourcedir
158 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
159 then
160 file="${SOURCEDIR}/$(mpname)/$1"
161 else
162 file="$1"
163 fi
164
165 if [[ -n "$2" ]]
166 then
167 udevrule="$2"
168 else
169 udevrule="$(basename ${file})"
170 fi
171
172 # needed directory
173 install -d ${BINDIR}${udevrulesddir} || die
174
175 # install our udev rule
176 install -v -m 0644 -o root -g root ${file} ${BINDIR}${udevrulesddir}/${udevrule} || die
177 }
178
179 minstalludevhelper()
180 {
181 local udevhelper
182 local file
183 local udevdir="/usr/lib/udev"
184
185 [[ -z "$1" ]] && die "No udev helper given"
186
187 # if no fullpath given use file from sourcedir
188 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
189 then
190 file="${SOURCEDIR}/$(mpname)/$1"
191 else
192 file="$1"
193 fi
194
195 if [[ -n "$2" ]]
196 then
197 udevhelper="$2"
198 else
199 udevhelper="$(basename ${file})"
200 fi
201
202 # needed directory
203 install -d ${BINDIR}${udevdir} || die
204
205 # install our udev-helper
206 install -v -m 0755 -o root -g root ${file} ${BINDIR}${udevdir}/${udevhelper} || die
207 }
208
209 minstallhalinformation()
210 {
211 local halrule
212 local file
213
214 [[ -z "$1" ]] && die "No hal rule given"
215
216 # if no fullpath given use file from sourcedir
217 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
218 then
219 file="${SOURCEDIR}/$(mpname)/$1"
220 else
221 file="$1"
222 fi
223
224 if [[ -n "$2" ]]
225 then
226 halrule="$2"
227 else
228 halrule="$(basename ${file})"
229 fi
230
231 # needed directory
232 install -d ${BINDIR}/usr/share/hal/fdi/information/20thirdparty || die
233
234 # install our udev rule
235 install -v -m 0644 -o root -g root ${file} ${BINDIR}/usr/share/hal/fdi/information/20thirdparty/${halrule} || die
236 }
237
238 minstallhalpolicy()
239 {
240 local halrule
241 local file
242
243 [[ -z "$1" ]] && die "No hal rule given"
244
245 # if no fullpath given use file from sourcedir
246 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
247 then
248 file="${SOURCEDIR}/$(mpname)/$1"
249 else
250 file="$1"
251 fi
252
253 if [[ -n "$2" ]]
254 then
255 halrule="$2"
256 else
257 halrule="$(basename ${file})"
258 fi
259
260 # needed directory
261 install -d ${BINDIR}/usr/share/hal/fdi/policy/20thirdparty || die
262
263 # install our udev rule
264 install -v -m 0644 -o root -g root ${file} ${BINDIR}/usr/share/hal/fdi/policy/20thirdparty/${halrule} || die
265 }
266
267 minstallhalpreprobe()
268 {
269 local halrule
270 local file
271
272 [[ -z "$1" ]] && die "No hal rule given"
273
274 # if no fullpath given use file from sourcedir
275 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
276 then
277 file="${SOURCEDIR}/$(mpname)/$1"
278 else
279 file="$1"
280 fi
281
282 if [[ -n "$2" ]]
283 then
284 halrule="$2"
285 else
286 halrule="$(basename ${file})"
287 fi
288
289 # needed directory
290 install -d ${BINDIR}/usr/share/hal/fdi/preprobe/10osvendor || die
291
292 # install our udev rule
293 install -v -m 0644 -o root -g root ${file} ${BINDIR}/usr/share/hal/fdi/preprobe/10osvendor/${halrule} || die
294 }
295
296 # install man files to appropiate dirs
297 # minstallman /path/to/manfile.foo
298 minstallman()
299 {
300 local manfile
301 local mandir
302 local file
303
304 [[ -z "$@" ]] && die "No man file given"
305
306 for file in $@
307 do
308 manfile="$(basename ${file})"
309 mandir="man${manfile##*.}"
310
311 install -d ${BINDIR}/usr/share/man/${mandir} || die
312 install -v -m0644 ${file} ${BINDIR}/usr/share/man/${mandir}/${manfile} || die
313 done
314 }
315
316 # install info files to appropiate dirs
317 # minstallinfo /path/to/infofile.foo
318 minstallinfo()
319 {
320 local file
321
322 [[ -z "$@" ]] && die "No info file given"
323
324 for file in $@
325 do
326 install -d ${BINDIR}/usr/share/info || die
327 install -v -m0644 ${file} ${BINDIR}/usr/share/info/$(basename ${file}) || die
328 done
329 }
330
331 # install html files to appropiate dirs
332 # minstallhtml /path/to/infofile.foo
333 minstallhtml()
334 {
335 local file
336 local subfile
337 local prefix
338 local subprefix
339
340 # handle prefix
341 case "$1" in
342 --prefix|-p) shift; prefix="$1"; shift ;;
343 esac
344
345 [[ -z "$@" ]] && die "No html file given"
346
347 for file in $@
348 do
349 install -d ${BINDIR}/usr/share/doc/${PNAME}-${PVER}/html${prefix} || die
350
351 if [[ -d ${file} ]]
352 then
353 for subfile in ${file}/*
354 do
355 subprefix="$(dirname ${subfile/$(dirname ${file})/})"
356 subprefix="${prefix}${subprefix}/"
357
358 minstallhtml --prefix ${subprefix} ${subfile} || die
359 done
360 else
361 install -v -m0644 ${file} ${BINDIR}/usr/share/doc/${PNAME}-${PVER}/html/${prefix}$(basename ${file}) || die
362 fi
363 done
364 }
365
366 # install pixmaps to appropiate dirs
367 # minstallpixmap srcname destname {/path/to}
368 minstallpixmap()
369 {
370 local file
371 local destdir
372 local destfile
373
374 [[ -z "$1" ]] && die "No pixmap given"
375
376 # if no fullpath given use file from sourcedir
377 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
378 then
379 file="${SOURCEDIR}/$(mpname)/$1"
380 else
381 file="$1"
382 fi
383
384 if [[ -n "$2" ]]
385 then
386 destfile="$2"
387 else
388 destfile="$(basename ${file})"
389 fi
390
391 if [[ -n "$3" ]]
392 then
393 destdir="$3"
394 else
395 destdir="/usr/share/pixmaps"
396 fi
397
398 # needed directory
399 install -d ${BINDIR}/${destdir} || die
400
401 # install our pixmap
402 install -v -m 0644 -o root -g root ${file} ${BINDIR}/${destdir}/${destfile} || die
403 }
404
405 # installs pam configuration files
406 # minstallpam /path/to/pamfile {destfilename}
407 minstallpam()
408 {
409 local pamfile
410 local file
411
412 [[ -z "$1" ]] && die "No pam file given"
413
414 # if no fullpath given use file from sourcedir
415 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
416 then
417 file="${SOURCEDIR}/$(mpname)/$1"
418 else
419 file="$1"
420 fi
421
422 if [[ -n "$2" ]]
423 then
424 pamfile="$2"
425 else
426 pamfile="$(basename ${file})"
427 fi
428
429 # needed directory
430 install -d ${BINDIR}/etc/pam.d || die
431
432 # install our configfile
433 install -v -m 0644 -o root -g root ${file} ${BINDIR}/etc/pam.d/${pamfile} || die
434 }
435
436 # installs cronjobs
437 # minstallcron [hourly|daily|weekly|monthly] /path/to/cronfile {destfilename}
438 minstallcron()
439 {
440 local cronfile
441 local loop
442 local file
443
444 [[ -z "$1" ]] && die "No loop rythem given [hourly|daily|weekly|monthly]"
445 [[ -z "$2" ]] && die "No cronfile given"
446
447 loop="$1"
448
449 # if no fullpath given use file from sourcedir
450 if [[ -z $(dirname $2) ]] || [[ $(dirname $2) = . ]]
451 then
452 file="${SOURCEDIR}/$(mpname)/$2"
453 else
454 file="$2"
455 fi
456
457 if [[ -n "$3" ]]
458 then
459 cronfile="$3"
460 else
461 cronfile="$(basename ${file})"
462 fi
463
464 # needed directory
465 install -m0750 -d ${BINDIR}/etc/cron.${loop} || die
466
467 # install our cronfile
468 install -v -m 0750 -o root -g root ${file} ${BINDIR}/etc/cron.${loop}/${cronfile} || die
469 }
470
471
472 # installs logrotate configuration files
473 # minstalllog /path/to/logrotatefile {destfilename}
474 minstalllog()
475 {
476 local logfile
477 local file
478
479 [[ -z "$1" ]] && die "No logrotate file given"
480
481 # if no fullpath given use file from sourcedir
482 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
483 then
484 file="${SOURCEDIR}/$(mpname)/$1"
485 else
486 file="$1"
487 fi
488
489 if [[ -n "$2" ]]
490 then
491 logfile="$2"
492 else
493 logfile="$(basename ${file})"
494 fi
495
496 # needed directory
497 install -d ${BINDIR}/etc/logrotate.d || die
498
499 # install our configfile
500 install -v -m 0644 -o root -g root ${file} ${BINDIR}/etc/logrotate.d/${logfile} || die
501 }
502
503
504 # installs given directories
505 # minstalldir /path/to/dest/dir {/path/to/dest/dirN}
506 minstalldir()
507 {
508 local argv="$@"
509 local dest
510
511 [[ -z ${argv} ]] && die "No dest dir given"
512 for dest in ${argv}
513 do
514 [[ -d ${BINDIR}${dest} ]] && continue
515 install -v -d ${BINDIR}/${dest} || die
516 done
517 }
518
519
520 # install files to given path (defaults to /usr/bin)
521 # minstallfile {-s} /path/to/file {/path/to/dest}
522 minstallfile()
523 {
524 local file
525 local dest
526
527 [[ -z $1 ]] && die "No etc file given"
528
529 if [[ $1 = -s ]]
530 then
531 file="${SOURCEDIR}/$(mpname)/$2"
532 dest="$3"
533 if [[ -z $3 ]]
534 then
535 dest=/usr/bin
536 install -d ${BINDIR}/${dest} || die
537 fi
538 else
539 file="$1"
540 dest="$2"
541 if [[ -z $2 ]]
542 then
543 dest=/usr/bin
544 install -d ${BINDIR}/${dest} || die
545 fi
546 fi
547
548 # install our configfile
549 install -v -m 0644 -o root -g root ${file} ${BINDIR}/${dest} || die
550 }
551
552 # installs executables to given path
553 # minstallexec {-s} /path/to/exec {/path/to/dest}
554 minstallexec()
555 {
556 local file
557 local dest
558
559 [[ -z $1 ]] && die "No file given"
560
561 if [[ $1 = -s ]]
562 then
563 file="${SOURCEDIR}/$(mpname)/$2"
564 dest="$3"
565 if [[ -z $3 ]]
566 then
567 dest=/usr/bin
568 install -d ${BINDIR}/${dest} || die
569 fi
570 else
571 file="$1"
572 dest="$2"
573 if [[ -z $2 ]]
574 then
575 dest=/usr/bin
576 install -d ${BINDIR}/${dest} || die
577 fi
578 fi
579
580 # install our configfile
581 install -v -m 0755 -o root -g root ${file} ${BINDIR}/${dest} || die
582 }
583
584 # installs executables to given path
585 # minstalllib {-s} /path/to/exec {/path/to/dest}
586 minstalllib()
587 {
588 local file
589 local dest
590 local verbose="-v"
591
592 # check for busybox as it doesn'tz support 'ln -v'
593 [[ $(readlink $(which ln)) = */busybox ]] && verbose=""
594
595 [[ -z $1 ]] && die "No file given"
596
597 if [[ $1 = -s ]]
598 then
599 file="${SOURCEDIR}/$(mpname)/$2"
600 dest="$3"
601 if [[ -z $3 ]]
602 then
603 dest=/usr/$(mlibdir)
604 install -d ${BINDIR}/${dest} || die
605 fi
606 else
607 file="$1"
608 dest="$2"
609 if [[ -z $2 ]]
610 then
611 dest=/usr/$(mlibdir)
612 install -d ${BINDIR}/${dest} || die
613 fi
614 fi
615
616 # install our library
617 install -v -m 0755 -o root -g root ${file} ${BINDIR}/${dest} || die
618
619 # create libtool symlinks
620 # 1. - library.so.1.0.0 -> library.so.1.0
621 if [ "${file%.*}" != *.so ]
622 then
623 ln ${verbose} -snf $(basename ${file}) ${BINDIR}/${dest}/$(basename ${file%.*})
624 fi
625 # 2. - library.so.1.0.0 -> library.so.1
626 if [ "${file%.*.*}" != *.so ]
627 then
628 ln ${verbose} -snf $(basename ${file}) ${BINDIR}/${dest}/$(basename ${file%.*.*})
629 fi
630 }
631
632 mcopy()
633 {
634 local source="$1"
635 local dest="$2"
636 local opts
637
638 # recursive
639 if [[ $1 = -r ]] || [[ $1 = -R ]]
640 then
641 opts="-R"
642 source="$2"
643 dest="$3"
644 fi
645
646 # recursive
647 if [[ $1 = -rf ]] || [[ $1 = -fr ]] || [[ $1 = -Rf ]] || [[ $1 = -fR ]]
648 then
649 opts="-R -f"
650 source="$2"
651 dest="$3"
652 fi
653
654 if [[ $1 = -a ]]
655 then
656 opts="-a"
657 source="$2"
658 dest="$3"
659 fi
660
661 [[ -z ${source} ]] && die "No source given."
662 [[ -z ${dest} ]] && die "No dest given."
663
664 cp -v ${opts} ${source} ${BINDIR}/${dest} || die
665 }
666
667 mdelete()
668 {
669 local dest="$1"
670 local opts
671
672 # recursive
673 if [[ $1 = -r ]] || [[ $1 = -R ]]
674 then
675 opts="-r"
676 dest="$2"
677 fi
678
679 # recursive
680 if [[ $1 = -rf ]] || [[ $1 = -fr ]] || [[ $1 = -Rf ]] || [[ $1 = -fR ]]
681 then
682 opts="-r -f"
683 dest="$2"
684 fi
685
686 [[ -z ${dest} ]] && die "No dest given."
687 [[ ! -e ${BINDIR}/${dest} ]] && die "${BINDIR}/${dest} does not exist."
688
689 rm -v ${opts} ${BINDIR}/${dest} || die
690 }
691
692 mmove()
693 {
694 local source="$1"
695 local dest="$2"
696 local opts
697
698 # force
699 if [[ $1 = -f ]]
700 then
701 opts="-f"
702 source="$2"
703 dest="$3"
704 fi
705
706 [[ -z ${source} ]] && die "No source given."
707 [[ -z ${dest} ]] && die "No dest given."
708
709 mv -v ${opts} ${source} ${BINDIR}/${dest} || die
710 }
711
712 # mark directories undeletable
713 mkeepdir()
714 {
715 local keepdir
716 [[ -z "$1" ]] && die "No directory given"
717
718 keepdir="$1"
719 install -v -d ${BINDIR}/${keepdir} || die
720 touch ${BINDIR}/${keepdir}/.keep || die
721 }
722
723 # creates empty files
724 memptyfile()
725 {
726 local file
727 local path
728
729 [[ -z "$1" ]] && die "No file given"
730
731 file="$1"
732 path="$(dirname ${file})"
733
734 install -d ${BINDIR}/${path} || die
735 touch ${BINDIR}/${file} || die
736 }
737
738 mchown()
739 {
740 local owner="$1"
741 local path="$2"
742 local recursive
743
744 # recursive
745 if [[ $1 = -r ]] || [[ $1 = -R ]]
746 then
747 local recursive="-R"
748 local owner="$2"
749 local path="$3"
750 fi
751
752 [[ -z ${owner} ]] && die "No owner given."
753 [[ -z ${path} ]] && die "No path given."
754
755 chown -v ${recursive} ${owner} ${BINDIR}/${path} || die
756 }
757
758 mchmod()
759 {
760 local posix="$1"
761 local path="$2"
762 local recursive
763
764 # recursive
765 if [[ $1 = -r ]] || [[ $1 = -R ]]
766 then
767 local recursive="-R"
768 local posix="$2"
769 local path="$3"
770 fi
771
772 [[ -z ${posix} ]] && die "No posix given."
773 [[ -z ${path} ]] && die "No path given."
774
775 chmod -v ${recursive} ${posix} ${BINDIR}/${path} || die
776 }
777
778 mlink()
779 {
780 local symlink="$1"
781 local pathto="$2"
782 local verbose="-v"
783
784 # check for busybox as it doesn'tz support 'ln -v'
785 [[ $(readlink $(which ln)) = */busybox ]] && verbose=""
786
787 [[ -z ${symlink} ]] && die "No symlink given."
788 [[ -z ${pathto} ]] && die "No path given."
789
790 ln ${verbose} -snf ${symlink} ${BINDIR}/${pathto} || die
791 }
792
793 # installs systemd units
794 # minstallunit /path/to/unit-file {destfilename}
795 minstallunit()
796 {
797 local unit
798 local file
799 local systemdunitdir="/usr/lib/systemd/system"
800
801 [[ -z "$1" ]] && die "No unit given"
802
803 # if no fullpath given use file from sourcedir
804 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
805 then
806 file="${SOURCEDIR}/$(mpname)/$1"
807 else
808 file="$1"
809 fi
810
811 if [[ -n "$2" ]]
812 then
813 unit="$2"
814 else
815 unit="$(basename ${file})"
816 fi
817
818 # needed directory
819 install -d ${BINDIR}${prefix}${systemdunitdir} || die
820
821 # install our initscript
822 install -v -m 0644 -o root -g root ${file} ${BINDIR}${prefix}${systemdunitdir}/${unit} || die
823 }
824
825 # installs systemd tmp configs to /etc/tmpfiles.d
826 # minstalltmp /path/to/tmpdfile {destfilename}
827 minstalltmp()
828 {
829 local tmpdfile
830 local file
831
832 [[ -z "$1" ]] && die "No tmpd file given"
833
834 # if no fullpath given use file from sourcedir
835 if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
836 then
837 file="${SOURCEDIR}/$(mpname)/$1"
838 else
839 file="$1"
840 fi
841
842 if [[ -n "$2" ]]
843 then
844 tmpdfile="$2"
845 else
846 tmpdfile="$(basename ${file})"
847 fi
848
849 # needed directory
850 install -d ${BINDIR}/etc/tmpfiles.d || die
851
852 # install our tmpdfile
853 install -v -m 0644 -o root -g root ${file} ${BINDIR}/etc/tmpfiles.d/${tmpdfile} || die
854 }
855
856 mclearconfig()
857 {
858 local confdir
859 local prefix="${BINDIR}"
860 [[ -z ${MCONFIG} ]] && die "No \$MCONFIG given!"
861
862 # no bindir prefix if requested
863 case $1 in
864 -b|--no-bindir) prefix="";;
865 esac
866
867 confdir="$(dirname ${MCONFIG})"
868 if [[ ! -d ${prefix}/${confdir} ]]
869 then
870 install -d ${prefix}/${confdir} || die
871 fi
872 : > ${prefix}/${MCONFIG}
873 }
874
875 maddconfig()
876 {
877 local argv="$1"
878 local confdir
879 local prefix="${BINDIR}"
880
881 [[ -z ${MCONFIG} ]] && die "No \$MCONFIG given!"
882
883 # no bindir prefix if requested
884 case $1 in
885 -b|--no-bindir) prefix=""; argv="$2" ;;
886 esac
887
888 [[ -z ${argv} ]] && die "No argument given!"
889
890 confdir="$(dirname ${MCONFIG})"
891 if [[ ! -d ${prefix}/${confdir} ]]
892 then
893 install -d ${prefix}/${confdir} || die
894 fi
895 echo "${argv}" >> ${prefix}/${MCONFIG} || die
896 }