radeonhd stuff, missing function now?

Beso givemesugarr at gmail.com
Tue Mar 17 04:48:55 PDT 2009


2009/3/16 Gene Heskett <gene.heskett at verizon.net>:
> On Monday 16 March 2009, Beso wrote:
> It still dies with this (different now) on the run to make mesa:
> ************ building mesa ********************
> ***********************************************
> autoreconf: Entering directory `.'
> autoreconf: configure.ac: not using Gettext
> autoreconf: running: aclocal
> autoreconf: configure.ac: tracing
> autoreconf: configure.ac: not using Libtool
> autoreconf: running: /usr/bin/autoconf
> autoreconf: configure.ac: not using Autoheader
> autoreconf: configure.ac: not using Automake
> autoreconf: Leaving directory `.'
> checking build system type... i686-pc-linux-gnu
> checking host system type... i686-pc-linux-gnu
> checking for gcc... gcc
> checking for C compiler default output file name... a.out
> checking whether the C compiler works... yes
> checking whether we are cross compiling... no
> checking for suffix of executables...
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking how to run the C preprocessor... gcc -E
> checking for gcc... (cached) gcc
> checking whether we are using the GNU C compiler... (cached) yes
> checking whether gcc accepts -g... (cached) yes
> checking for gcc option to accept ISO C89... (cached) none needed
> checking for g++... g++
> checking whether we are using the GNU C++ compiler... yes
> checking whether g++ accepts -g... yes
> checking for gmake... gmake
> checking for makedepend... /usr/bin/makedepend
> checking for sed... /bin/sed
> checking for pkg-config... /usr/bin/pkg-config
> checking pkg-config is at least version 0.9.0... yes
> checking whether to enable assembly... yes, x86
> checking for gcc option to produce PIC... -fPIC
> checking for dlopen... no
> checking for dlopen in -ldl... yes
> checking for posix_memalign... yes
> checking pkg-config files for X11 are available... yes
> checking for LIBDRM... yes
> checking for DRI2PROTO... configure: error: Package requirements (dri2proto >=
> 1.99.3) were not met:
>
> Requested 'dri2proto >= 1.99.3' but version of DRI2Proto is 1.99.1

you're missing dri2proto. i've added it to the script and modified the
order in order to build at first dri2proto, then libdrm and then mesa
and xf86-video-radeonhd. if you need other packages, usually you need
only git packages (protos or libs hosted on freedesktop) then try
adding them to the script:

1. add a line here:
> EGIT_REPO_URI_1="git://anongit.freedesktop.org/git/mesa/drm"
> EGIT_REPO_URI_2="git://anongit.freedesktop.org/git/xorg/driver/xf86-video-radeonhd"
> EGIT_REPO_URI_3="git://anongit.freedesktop.org/mesa/mesa"
> EGIT_REPO_URI_4="git://anongit.freedesktop.org/git/xorg/proto/dri2proto"
> EGIT_REPO_URI_5="git://<your new package git uri>"

2. copy the following lines:
> ## -- first git repository (mesa)
> #
>   EGIT_REPO_URI=${EGIT_REPO_URI_3}
>   EGIT_BRANCH=${EGIT_BRANCH_3}
>   PN="mesa"
>   EGIT_PROJECT=${PN/-git}
>   WORKDIR="${WORKING_DIR}/mesa"
>
> ## -- cleaning old src directory, cloning/updating the drm repository
> #
>   echo '***********************************************'
>   echo '************ updating mesa ********************'
>   echo '***********************************************'
>   rm ${WORKDIR} -fR
>   git_fetch || die "git_fetch() failed"
>   echo
>   echo `pwd`

to this (EGIT_BRANCH_3 is master (if you don't know of a particular
branch to use use this)) before the package that fails:

> # new package
> #
>   EGIT_REPO_URI=${EGIT_REPO_URI_5}
>   EGIT_BRANCH=${EGIT_BRANCH_3}
>   PN="<new package name>"
>   EGIT_PROJECT=${PN/-git}
>   WORKDIR="${WORKING_DIR}/<new package name>"

> ## -- cleaning old src directory, cloning/updating the drm repository
> #
>   echo '***********************************************'
>   echo '************ updating mesa ********************'
>   echo '***********************************************'
>   rm ${WORKDIR} -fR
>   git_fetch || die "git_fetch() failed"
>   echo
>   echo `pwd`

3. copy the following before the package that fails:
>   echo '***********************************************'
>   echo '************ building dri2proto ***************'
>   echo '***********************************************'
>   cd ${WORKING_DIR}/dri2proto
>
> ## -- we're using the workdir/build prefix so that the package won't install the
> #  files in the official directory and the script doesn't need the root priviledges
> #  until we copy the files in the right directories
> #
>   ./autogen.sh --prefix="${WORKING_DIR}/dri2proto/build" || die "autogen on drm failed"
>   make || die "error making dri2proto"
>   make install || die "error installing dri2proto"
>   #sudo cp build/* -av /

to:

>   echo '***********************************************'
>   echo '*********** building <new package> *******'
>   echo '***********************************************'
>   cd ${WORKING_DIR}/<new package name>
>
> ## -- we're using the workdir/build prefix so that the package won't install the
> #  files in the official directory and the script doesn't need the root priviledges
> #  until we copy the files in the right directories
> #
>   ./autogen.sh --prefix="${WORKING_DIR}/<new pacakge name>/build" || die "autogen on <new package> failed"
>   make || die "error making <new package>"
>  make install || die "error installing <new package>"
>   #sudo cp build/* -av /

also remember that if you uncomment the line
> sudo cp build/* -av /
to the right place (the "/" should be "/usr", but i'm not sure, verify
the --prefix on your distro), you'll also install the packages in the
right place.


> I was under the impression that dri was part of the kernel, and this is
> 2.6.29-rc8, very bleeding edge but with the old bios, dead stable.
>
> I also hate to be such a PITA, but I also have to say that I'm talking to
> someone who obviously does care.  Thank you very much Beso.
>
remember that you musn't compile the drm module in the kernel. if you do
cat /usr/src/linux/.config | grep DRM
you must see this
# CONFIG_DRM is not set

and not this:
CONFIG_DRM=y
if you enable the drm module inside the kernel then you'll have
problems using the drm module from mesa (and radeonhd). for the
moment, the drm still needs to be built outside of the kernel. when
the radeon modesetting would be merged inside the kernel tree maybe
you could use that drm at that time, but for the moment use the libdrm
kernel modules for radeonhd.

no problem, i'm glad to help out.

-- 
dott. ing. beso
-------------- next part --------------
A non-text attachment was scrubbed...
Name: radeonhd-updater-modified.sh
Type: application/x-sh
Size: 12750 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg/attachments/20090317/3b496a7a/attachment.sh>


More information about the xorg mailing list