You are not logged in.

#1 2007-06-07 01:54:09

hbinded
Member
Registered: 2007-06-07
Posts: 2

Xorg 7.1 in one PKGBUILD

Hi all. First of all, let me say of all the distros I've been trying, archlinux is the simplest (for me) and most friendly in terms of end user configuration and package support. I'm not really new to linux so I decided to build archlinux from scratch. Now I'm at the point where I install xorg-7.1 but there are far too many files to write PKGBUILD's for. So I was wondering if it's possible to wrap the whole installation in one or a couple of PKGBUILD's. So far, I've got PKGBUILDS for the "protos" and "utils". But when it comes to the "libs", they are dependent on one another and have to be installed in a certain order in the system for the rest to compile, so that rules out the "make DESTDIR=/$startdir/foo/bar" style. Any ideas out there?

Offline

#2 2007-06-07 02:24:48

.:B:.
Forum Fellow
Registered: 2006-11-26
Posts: 5,819
Website

Re: Xorg 7.1 in one PKGBUILD

I'd suggest you do a bit of reading up on Xorg.

From 7.0 on Xorg has been modularised. 6.9 is equivalent to 7.0 feature-wise, 6.9 still uses the old 'monolithic' system, but development continues on the 7.x branch.

So to go short: no smile.

You need some Xorg stuff installed to build a complete Xorg 7.x, so unless you have those prerequisites, there is no pkgbuild out there that will help you achieve what you want.

You can do it though, but it requires some hacking and a lot of work smile.


Got Leenucks? :: Arch: Power in simplicity :: Get Counted! Registered Linux User #392717 :: Blog thingy

Offline

#3 2007-06-07 02:42:56

hbinded
Member
Registered: 2007-06-07
Posts: 2

Re: Xorg 7.1 in one PKGBUILD

Thanks for the speedy reply:). Actually, what I meant was having a PKGBUILD for the following groups since they have to be installed in the order they are in;

# Protocol Headers
# Utilities
# Libraries
# libdrm
# MesaLib
# XBitmaps
# Applications
# Data
# Fonts
# XKeyboardConfig
# Luit
# Xorg Server
# Drivers

to give you a rough idea, here is my PKGBUILD for the xorg-utilities

pkgname=xorg-utils
pkgver=7.1
pkgrel=1
pkgdesc="The Xorg utility packages provide needed utilities, not for the Xorg  installation itself, but for other applications that make use of legacy X11R6 installation methods"
arch=(i686 x86_64)
url="http://xorg.freedesktop.org/"
depends=('xorg-protocols')
makedepends=('pkg-config' 'xorg-protocols')
source=(${url}/releases/individual/util/xorg-cf-files-1.0.2.tar.bz2
${url}/releases/individual/util/imake-1.0.2.tar.bz2
${url}/releases/individual/util/gccmakedep-1.0.2.tar.bz2
${url}/releases/individual/util/lndir-1.0.1.tar.bz2
${url}/releases/individual/util/makedepend-1.0.0.tar.bz2
${url}/releases/individual/util/util-macros-1.0.2.tar.bz2
utils.list)

md5sums=('5f62dd5545b782c74f6e4e70d0e6552c' '02fea5a02ba2857c7d81820c8e8b8e6f'\
         'b533c0771dbbaf9b041ff35bb941d3a2' 'e274ea9f55dfd62afa0a7b1e1ab4ba96'\
         'fa194caa4f059f5621ed2c5a51efb4d0' '8391f7eb3bf563f5314b0119e870727a'
         'd54790d27f072470b65d869fea9a96ae')

build() {
  cd ${startdir}/src  
  export export XORG_PREFIX="/usr"
  export XORG_CONFIG="--prefix=$XORG_PREFIX \
                      --sysconfdir=/etc \
                    --mandir=$XORG_PREFIX/share/man \
                    --localstatedir=/var \
                    --datadir=$XORG_PREFIX/share"
  for i in `cat ../utils.list`; do
    if [ -d "${i}" ]; then
      pushd "${i}"      
case "${i}" in
        xorg-cf-files*)
          sed -i "s@/usr/X11R6@$XORG_PREFIX@" X11.tmpl
          ./configure $XORG_CONFIG --with-config-dir=$XORG_PREFIX/lib/X11/config
          make DESTDIR=${startdir}/pkg install || return 1
    ;;
    imake-1*)
      ./configure $XORG_CONFIG --with-config-dir=$XORG_PREFIX/lib/X11/config
          make || return 1
          make DESTDIR=${startdir}/pkg install || return 1
    ;;
      esac
      ./configure $XORG_CONFIG
      make || return 1
      make DESTDIR=${startdir}/pkg install || return 1
      popd
    fi
  done
}

now, the "utils.list" has the tarballs of the source packages in the order in which they need to be installed, which in this case is the order they are listed in the source array.

Thanks again for the speedy reply. I dont feel like hacking around with the build, so I will do a system install for the libs and then do a "normal" PKGBUILD just to keep track which files have been installed by the packages.

Offline

Board footer

Powered by FluxBB