summaryrefslogtreecommitdiff
blob: a2699f90c4e3f16af82ce92e673c53ce57335bbc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# Copyright 1999-2000 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# Author Holger Brueckner <darks@fet.org>
# $Header: /var/cvsroot/gentoo-x86/net-fs/openafs/openafs-1.0.4-r1.ebuild,v 1.8 2001/08/30 17:31:35 pm Exp $


S=${WORKDIR}/${P}
DESCRIPTION="The AFS 3 distributed file system  targets the issues  critical to
distributed computing environments. AFS performs exceptionally well,
both within small, local work groups of machines and across wide-area
configurations in support of large, collaborative efforts. AFS provides
an architecture geared towards system management, along with the tools
to perform important management tasks. For a user, AFS is a familiar yet
extensive UNIX environment for accessing files easily and quickly."

SRC_URI="http://www.openafs.org/dl/openafs/1.0.4/openafs-1.0.4-src.tar.bz2"
HOMEPAGE="http://www.openafs.org/"

DEPEND="virtual/glibc
        >=sys-libs/ncurses-5.2
	>=sys-libs/pam-0.75"


src_compile() {

    export KERNELVERSION=`grep "UTS_RELEASE" /usr/src/linux/include/linux/version.h | awk '{print $3}' | sed "s/\"//g"`
    KERNELSHORT=`echo $KERNELVERSION | cut -c1-3 | sed "s/\.//"`
    SYSTEM="linux"
    SYSARCH="i386"
    CELLNAME=`cat ${FILESDIR}/ThisCell`

    try mkdir ${SYSARCH}_${SYSTEM}${KERNELSHORT}
    try mkdir ${SYSARCH}_${SYSTEM}${KERNELSHORT}/dest
    try mkdir ${SYSARCH}_${SYSTEM}${KERNELSHORT}/obj
    ln -s "@sys/dest" dest
    ln -s "@sys/obj" obj
    ln -s ${SYSARCH}_${SYSTEM}${KERNELSHORT} @sys
    ln -s src/Makefile Makefile
    try make links
    try make SYS_NAME="${SYSARCH}_${SYSTEM}${KERNELSHORT}" \
	LINUX_VERS="${KERNELVERSION}" TXLIBS=/lib/libncurses.so \
	OPTMZ="$CFLAGS" XCFLAGS="$CFLAGS" \
	PAM_CFLAGS="$CFLAGS -Dlinux -DLINUX_PAM -fPIC"
}

src_install () {


  # Client

  cd ${S}/dest/root.client/usr/vice

  insinto /etc/afs/modload
  doins etc/modload/*
  insinto /etc/afs/C
  doins etc/C/*

  insinto /etc/afs
  doins ${FILESDIR}/{ThisCell,CellServDB}
  doins etc/afs.conf

  dodir /afs

  exeinto /etc/rc.d/init.d
  newexe ${FILESDIR}/afs.rc afs

  dosbin etc/afsd

  # Client Bin
  cd ${S}/dest
  exeinto /usr/afsws/bin
  doexe bin/*

  exeinto /etc/afs/afsws
  doexe etc/*

  cp -a include lib ${D}/usr/afsws
  dosym  /usr/afsws/lib/afs/libtermlib.a /usr/afsws/lib/afs/libnull.a

  # Server
  cd ${S}/dest/root.server/usr/afs
  exeinto /usr/afs/bin
  doexe bin/*

  dodir /usr/vice
  dosym /etc/afs /usr/vice/etc
  dosym /etc/afs/afsws /usr/afsws/etc

  dodoc ${FILESDIR}/README
}

pkg_postinst () {
    if [ "$PN" = "openafs_client" ]
    then
      echo ">>> UPDATE CellServDB and ThisCell to your needs !!"
    elif [ "$PN" = "openafs_client_bin" ]
    then
      echo ">>> UPDATE CellServDB and ThisCell to your needs !!"
    else
      echo ">>> FOLLOW THE INSTRUCTIONS IN AFS QUICK BEGINNINGS"
      echo ">>> PAGE >45 TO DO INITIAL SERVER SETUP"
    fi
}