amd.spec 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. ##
  2. ## amd.spec -- OpenPKG RPM Package Specification
  3. ## Copyright (c) 2000-2005 OpenPKG Foundation e.V. <http://openpkg.net/>
  4. ## Copyright (c) 2000-2005 Ralf S. Engelschall <http://engelschall.com/>
  5. ##
  6. ## Permission to use, copy, modify, and distribute this software for
  7. ## any purpose with or without fee is hereby granted, provided that
  8. ## the above copyright notice and this permission notice appear in all
  9. ## copies.
  10. ##
  11. ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  12. ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  13. ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  14. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  15. ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  16. ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  17. ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  18. ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  19. ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  20. ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  21. ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  22. ## SUCH DAMAGE.
  23. ##
  24. # package information
  25. Name: amd
  26. Summary: Auto-Mounting Daemon
  27. URL: http://www.am-utils.org/
  28. Vendor: UCB
  29. Packager: OpenPKG
  30. Distribution: OpenPKG
  31. Class: BASE
  32. Group: System
  33. License: BSD
  34. Version: 6.1.2.1
  35. Release: 20050928
  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 >= 20040130, bison, flex >= 2.5.31-20041031
  45. PreReq: OpenPKG, openpkg >= 20040130, 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. %track
  65. prog amd = {
  66. version = %{version}
  67. url = ftp://ftp.am-utils.org/pub/am-utils/
  68. regex = am-utils-(__VER__)\.tar\.gz
  69. }
  70. %prep
  71. %setup -q -n am-utils-%{version}
  72. %patch -p0
  73. %{l_shtool} subst \
  74. -e '/LINENO: error: C[+]* preprocessor/{N;N;N;N;s/.*/:/;}' \
  75. configure
  76. %{l_shtool} subst \
  77. -e 's;/etc/amd.conf;%{l_prefix}/etc/amd/amd.conf;g' \
  78. amd/get_args.c
  79. %build
  80. # disable system LDAP support because it makes trouble (at least under Solaris 9)
  81. ( echo "ac_cv_func_ldap_open=\${ac_cv_func_ldap_open='no'}"
  82. echo "ac_cv_header_ldap_h=\${ac_cv_header_ldap_h='no'}"
  83. echo "ac_cv_lib_ldap_ldap_open=\${ac_cv_lib_ldap_ldap_open='no'}"
  84. echo "ac_cv_map_ldap=\${ac_cv_map_ldap='no'}"
  85. ) >config.cache
  86. ACLOCAL=true \
  87. AUTOCONF=true \
  88. AUTOMAKE=true \
  89. AUTOHEADER=true \
  90. MAKEINFO=true \
  91. AMTAR=true \
  92. CC="%{l_cc}" \
  93. LEX=flex-old \
  94. CFLAGS="%{l_cflags -O}" \
  95. PERL="%{l_prefix}/bin/perl" \
  96. ./configure \
  97. --prefix=%{l_prefix} \
  98. --sysconfdir=%{l_prefix}/etc/amd \
  99. --disable-debug \
  100. --disable-shared \
  101. --without-ldap
  102. %{l_make} %{l_mflags}
  103. %install
  104. rm -rf $RPM_BUILD_ROOT
  105. %{l_make} %{l_mflags} install AM_MAKEFLAGS="DESTDIR=$RPM_BUILD_ROOT"
  106. rm -f $RPM_BUILD_ROOT%{l_prefix}/info/dir
  107. rm -f $RPM_BUILD_ROOT%{l_prefix}/sbin/automount2amd
  108. rm -f $RPM_BUILD_ROOT%{l_prefix}/sbin/amd2sun
  109. rm -f $RPM_BUILD_ROOT%{l_prefix}/sbin/amd2ldif
  110. rm -f $RPM_BUILD_ROOT%{l_prefix}/man8/automount2amd.8
  111. rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/amd/*
  112. rm -rf $RPM_BUILD_ROOT%{l_prefix}/lib
  113. %{l_shtool} install -c -m 644 %{l_value -s -a} \
  114. %{SOURCE amd.conf} $RPM_BUILD_ROOT%{l_prefix}/etc/amd/
  115. %{l_shtool} mkdir -f -p -m 755 \
  116. $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
  117. %{l_shtool} install -c -m 755 %{l_value -s -a} \
  118. %{SOURCE rc.amd} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
  119. %{l_shtool} mkdir -f -p -m 755 \
  120. $RPM_BUILD_ROOT%{l_prefix}/var/amd
  121. strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
  122. strip $RPM_BUILD_ROOT%{l_prefix}/sbin/* >/dev/null 2>&1 || true
  123. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
  124. %{l_files_std} \
  125. '%config %{l_prefix}/etc/amd/amd.conf'
  126. %files -f files
  127. %clean
  128. rm -rf $RPM_BUILD_ROOT
  129. %post
  130. # after upgrade, restart service
  131. [ $1 -eq 2 ] || exit 0
  132. eval `%{l_rc} amd status 2>/dev/null`
  133. [ ".$amd_active" = .yes ] && %{l_rc} amd restart
  134. exit 0
  135. %preun
  136. # before erase, stop service and remove log files
  137. [ $1 -eq 0 ] || exit 0
  138. %{l_rc} amd stop 2>/dev/null
  139. rm -f $RPM_INSTALL_PREFIX/var/amd/amd.log* >/dev/null 2>&1 || true
  140. exit 0