amd.spec 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. ##
  2. ## amd.spec -- OpenPKG RPM Specification
  3. ## Copyright (c) 2000-2003 The OpenPKG Project <http://www.openpkg.org/>
  4. ## Copyright (c) 2000-2003 Ralf S. Engelschall <rse@engelschall.com>
  5. ## Copyright (c) 2000-2003 Cable & Wireless <http://www.cw.com/>
  6. ##
  7. ## Permission to use, copy, modify, and distribute this software for
  8. ## any purpose with or without fee is hereby granted, provided that
  9. ## the above copyright notice and this permission notice appear in all
  10. ## copies.
  11. ##
  12. ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  13. ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  14. ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  15. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  16. ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  17. ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  18. ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  19. ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  20. ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  21. ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  22. ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  23. ## SUCH DAMAGE.
  24. ##
  25. # package information
  26. Name: amd
  27. Summary: Auto-Mounting Daemon
  28. URL: http://www.am-utils.org/
  29. Vendor: UCB
  30. Packager: The OpenPKG Project
  31. Distribution: OpenPKG [BASE]
  32. Group: System
  33. License: BSD
  34. Version: 6.0.9
  35. Release: 20030909
  36. # list of sources
  37. Source0: ftp://ftp.am-utils.org/pub/am-utils/am-utils-%{version}.tar.gz
  38. Source1: amd.conf
  39. Source2: rc.amd
  40. Patch0: amd.patch
  41. # build information
  42. Prefix: %{l_prefix}
  43. BuildRoot: %{l_buildroot}
  44. BuildPreReq: OpenPKG, openpkg >= 20030909, flex, bison
  45. PreReq: OpenPKG, openpkg >= 20030909, perl
  46. AutoReq: no
  47. AutoReqProv: no
  48. %description
  49. An automounting daemon maintains a cache of mounted filesystems.
  50. Filesystems are mounted on demand when they are first referenced,
  51. and unmounted after a period of inactivity. Amd may be used as a
  52. replacement for Sun's original automounter. The choice of which
  53. filesystem to mount can be controlled dynamically with selectors.
  54. Selectors allow decisions of the form "hostname is this," or
  55. "architecture is not that." Selectors may be combined arbitrarily.
  56. Amd also supports a variety of filesystem types, including NFS,
  57. UFS and the novel program filesystem. The combination of selectors
  58. and multiple filesystem types allows identical configuration
  59. files to be used on all machines thus reducing the administrative
  60. overhead. Amd ensures that it will not hang if a remote server goes
  61. down. Moreover, Amd can determine when a remote server has become
  62. inaccessible and then mount replacement filesystems as and when they
  63. become available.
  64. %prep
  65. %setup -q -n am-utils-%{version}
  66. %patch -p1
  67. %build
  68. case "%{l_platform -p}" in
  69. *-netbsd* )
  70. %{l_shtool} subst \
  71. -e 's;\(!defined(__FreeBSD__)\);(\1 || !defined(__NetBSD__));g' \
  72. hlfsd/stubs.c
  73. ;;
  74. esac
  75. # disable system LDAP support because it makes trouble (at least under Solaris 9)
  76. ( echo "ac_cv_func_ldap_open=\${ac_cv_func_ldap_open='no'}"
  77. echo "ac_cv_header_ldap_h=\${ac_cv_header_ldap_h='no'}"
  78. echo "ac_cv_lib_ldap_ldap_open=\${ac_cv_lib_ldap_ldap_open='no'}"
  79. echo "ac_cv_map_ldap=\${ac_cv_map_ldap='no'}"
  80. ) >config.cache
  81. ACLOCAL=true \
  82. AUTOCONF=true \
  83. AUTOMAKE=true \
  84. AUTOHEADER=true \
  85. MAKEINFO=true \
  86. AMTAR=true \
  87. CC="%{l_cc}" \
  88. CFLAGS="%{l_cflags -O}" \
  89. PERL="%{l_prefix}/bin/perl" \
  90. ./configure \
  91. --prefix=%{l_prefix} \
  92. --sysconfdir=%{l_prefix}/etc/amd \
  93. --disable-debug \
  94. --disable-shared \
  95. --without-ldap
  96. %{l_make} %{l_mflags}
  97. %install
  98. rm -rf $RPM_BUILD_ROOT
  99. %{l_make} %{l_mflags} install AM_MAKEFLAGS="DESTDIR=$RPM_BUILD_ROOT"
  100. rm -f $RPM_BUILD_ROOT%{l_prefix}/info/dir
  101. rm -f $RPM_BUILD_ROOT%{l_prefix}/sbin/automount2amd
  102. rm -f $RPM_BUILD_ROOT%{l_prefix}/sbin/amd2sun
  103. rm -f $RPM_BUILD_ROOT%{l_prefix}/sbin/amd2ldif
  104. rm -f $RPM_BUILD_ROOT%{l_prefix}/man8/automount2amd.8
  105. rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/amd/*
  106. rm -rf $RPM_BUILD_ROOT%{l_prefix}/lib
  107. %{l_shtool} install -c -m 644 %{l_value -s -a} \
  108. %{SOURCE amd.conf} $RPM_BUILD_ROOT%{l_prefix}/etc/amd/
  109. %{l_shtool} mkdir -f -p -m 755 \
  110. $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
  111. %{l_shtool} install -c -m 755 %{l_value -s -a} \
  112. %{SOURCE rc.amd} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
  113. %{l_shtool} mkdir -f -p -m 755 \
  114. $RPM_BUILD_ROOT%{l_prefix}/var/amd
  115. strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
  116. strip $RPM_BUILD_ROOT%{l_prefix}/sbin/* >/dev/null 2>&1 || true
  117. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
  118. %{l_files_std} \
  119. '%config %{l_prefix}/etc/amd/amd.conf'
  120. %files -f files
  121. %clean
  122. rm -rf $RPM_BUILD_ROOT
  123. %post
  124. # after upgrade, restart service
  125. [ $1 -eq 2 ] || exit 0
  126. eval `%{l_rc} amd status 2>/dev/null`
  127. [ ".$amd_active" = .yes ] && %{l_rc} amd restart
  128. exit 0
  129. %preun
  130. # before erase, stop service and remove log files
  131. [ $1 -eq 0 ] || exit 0
  132. %{l_rc} amd stop 2>/dev/null
  133. rm -f $RPM_INSTALL_PREFIX/var/amd/amd.log* >/dev/null 2>&1 || true
  134. exit 0