Hi,

Is there a way to build binaries for distribution from the 4.3.0 source
tree, similar to the ones made publicly available?  I am using XFree86
4.3.0 on Solaris 2.5.1 x86, so there are none currently available that I
can use, plus there are some minor changes that I need to be included in
our binaries.  Doing a make install on each target machine is a hassle for
a few reasons:

1)
There is no compiler on the target machines, but 4.3.0 requires one, even
for a make install.  This is due to the update of xf86Build.h in
xc/programs/Xserver/hw/xfree86/common.  To me this is wrong, firstly
because a compiler is needed to do an install, and secondly because the
build stamp is updated when doing an install.  To get around this I'm
currently removing the xf86Build.h target in the Makefile and touching it
back to the original timestamp before doing a make install.

2)
I have to tar up and copy the entire source tree to each target machine to
do the install.  The target machines do not have access to the buid
filesystem, but even if they did it would be readonly (this is a problem
because of the build time stamp issue mentioned in 1) ).  It would be much
better to only have to transfer the binaries.

3)
I'm guessing I could tar up the /usr/X11R6 directory on one of the target
machines to be distributed to the other machines.  This is not a good
solution from a maintenance point of view, especially if somebody who is
not familiar with the process has to do it in the future.  Every time an
update is made, it would be required to tar up the source, copy it to the
target machine, untar it, edit
xc/programs/Xserver/hw/xfree86/common/Makefile, make install, tar
/usr/X11R6 and copy it back to the central distribution place (even this is
a simplified description).

If somebody could suggest or inform me of a way to build binaries suitable
for distribution on their own directly from the source tree, this would be
very much appreciated.  I could supply the binaries to be made publicly
available, but users of them should be aware that I've had to make a couple
of changes to get 4.3.0 to build on Solaris 2.5.1 x86:

1)
#define BuildGlxExt NO in host.def, otherwise the build fails with:

making all in lib/GL/mesa/src/X86...
rm -f mmx_blend.i
/usr/ccs/lib/cpp -Dsun -Di386 -DSVR4 -D__EXTENSIONS__ -D__i386
-DMALLOC_0_RETURNS_NULL -DGLXEXT  -DGLX_USE_MESA  -DUSE_X86_ASM
-DUSE_MMX_ASM   -I../../../../../exports/include
-I../../../../../include/extensions -I../../../../../extras/Mesa/src
-I../../../../../extras/Mesa/src/X86            -I../../../include
mmx_blend.S | \
grep -v '^\#' > mmx_blend.i
rm -f mmx_blend.o
gcc -c -x assembler -o mmx_blend.o mmx_blend.i
Assembler:
        aline 1198      : Illegal mnemonic
        aline 1198      : syntax error
        aline 1198      : Illegal register
        aline 1198      : Illegal register
        aline 1200      : Illegal mnemonic
        aline 1200      : syntax error
        aline 1200      : Illegal register
        aline 1201      : Illegal mnemonic
        aline 1201      : syntax error
        aline 1201      : Illegal register
        aline 1203      : Illegal mnemonic
        aline 1203      : syntax error
        aline 1203      : Illegal register
        aline 1203      : Illegal register
        aline 1204      : Illegal mnemonic
        aline 1204      : syntax error
        aline 1204      : Illegal register
        aline 1204      : Illegal register
        aline 1206      : Illegal mnemonic
        aline 1206      : syntax error
        aline 1206      : Illegal register
        aline 1206      : Illegal register
        aline 1208      : Illegal mnemonic
        aline 1208      : syntax error
        aline 1208      : Illegal register
        aline 1208      : Illegal register
        aline 1209      : Illegal mnemonic
        aline 1209      : syntax error
        aline 1209      : Illegal register
        aline 1209      : Illegal register
        aline 1214      : Illegal mnemonic
Too many errors - Goodbye
*** Error code 1
make: Fatal error: Command failed for target `mmx_blend.o'
Current working directory
/proj3/ere/work/lindsayh/XFree86/4.3.0/xc/lib/GL/mesa/src/X86

This built ok in 4.2.0, but the build didn't even go into the X86
directory, just the X directory.  Am I losing much by disabling Glx?

2)
Remove calls to xf86Int10SaveRestoreBIOSVars and SetResetBIOSVars (these
functions were added in 4.3.0), because they cause mmap to fail.

3)
I used a couple of updates to int10 from CVS, that fixed non-detection/use
of a second card.

3)
Changed "static sigjmp_buf jmp;" to "static int jmp[_SIGJBLEN];" in
xc/programs/xedit/lisp/private.h and
xc/programs/Xserver/hw/xfree86/xf86cfg/loader.c, to allow compilation.

4)
Changed the background pattern (xc/programs/Xserver/dix/window.c).  This is
the only non-build-related change that has been made.

Regards,

Lindsay Haigh

_______________________________________________
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel

Reply via email to