head/graphics/svgalib does not build in poudriere
Matthias Apitz
guru at unixarea.de
Sun Jan 25 10:11:51 UTC 2015
El día Sunday, January 25, 2015 a las 08:51:22AM +0100, Matthias Apitz escribió:
>
> Hello,
>
> This is in head r276659, ports r377801 and with poudriere 3.1.1 on
> amd64; the port graphics/svgalib fails to build (only) in poudriere with:
>
> ...
> clang -Wall -Wstrict-prototypes -Wall -Wstrict-prototypes -fPIC
> -I/wrkdirs/usr/ports/graphics/svgalib/work/svgalib-1.4.3/include -I.
> -fstack-protector -fno-strict-aliasing -I../include -L../sharedlib -o
> restorefont restorefont.o -lvga -lm
> ../sharedlib/libvga.so: undefined reference to `_outb'
> clang: error: linker command failed with exit code 1 (use -v to see
> invocation)
> /wrkdirs/usr/ports/graphics/svgalib/work/svgalib-1.4.3/utils/Makefile:34:
> recipe for target 'restorefont' failed
> gmake[2]: *** [restorefont] Error 1
> gmake[2]: Leaving directory
> '/wrkdirs/usr/ports/graphics/svgalib/work/svgalib-1.4.3/utils'
> Makefile:423: recipe for target 'textutils' failed
> gmake[1]: *** [textutils] Error 2
> gmake[1]: Leaving directory
> '/wrkdirs/usr/ports/graphics/svgalib/work/svgalib-1.4.3'
> *** Error code 2
>
> Stop.
> make: stopped in /usr/ports/graphics/svgalib
> ====>> Cleaning up wrkdir
> ===> Cleaning for svgalib-1.4.3_7
> build of graphics/svgalib ended at Sun Jan 25 04:52:14 CET 2015
> build time: 00:00:59
> !!! build failure encountered !!!
> --
> the offending code is in src/paradise.c:
>
> ...
> void inline _outb(unsigned port,unsigned value)
> {
> #ifdef DEBUG
> printf ("0x%x, 0x%x\n",port,value);
> #endif
> outb(port,value);
> }
> ...
>
> When I do the ports build the normal way, it builds fine and the object
> files do not contain any reference to _out:
>
> # find . -name paradise.o
> ./sharedlib/paradise.o
> ./staticlib/paradise.o
> # nm `find . -name paradise.o` | fgrep out
> #
>
additional information: I compared how src/paradise.c gets compiled as
normal port or in poudriere:
port:
cc -Wall -Wstrict-prototypes -fPIC
-I/usr/ports-head/graphics/svgalib/work/svgalib-1.4.3/include -I.
-I/usr/ports-head/graphics/svgalib/work/svgalib-1.4.3/src
-I/usr/ports-head/graphics/svgalib/work/svgalib-1.4.3/src/config -Wall
-Wstrict-prototypes -fPIC
-I/usr/ports-head/graphics/svgalib/work/svgalib-1.4.3/include -I. -O2
-pipe -fstack-protector -fno-strict-aliasing -DNO_ASSEMBLY
-DSVGALIB_CONFIG_FILE=\"/usr/local/etc/vga/libvga.config\"
-DALLOW_MOUSE_OVERRIDE
-DET4000_REGS=\"/usr/local/etc/vga/libvga.et4000\" -DDYNAMIC -c -o
paradise.o
/usr/ports-head/graphics/svgalib/work/svgalib-1.4.3/src/paradise.c
poudriere:
clang -Wall -Wstrict-prototypes -fPIC
-I/wrkdirs/usr/ports/graphics/svgalib/work/svgalib-1.4.3/include -I.
-I/wrkdirs/usr/ports/graphics/svgalib/work/svgalib-1.4.3/src
-I/wrkdirs/usr/ports/graphics/svgalib/work/svgalib-1.4.3/src/config
-Wall -Wstrict-prototypes -fPIC
-I/wrkdirs/usr/ports/graphics/svgalib/work/svgalib-1.4.3/include -I.
-fstack-protector -fno-strict-aliasing -DNO_ASSEMBLY
-DSVGALIB_CONFIG_FILE=\"/usr/local/etc/vga/libvga.config\"
-DALLOW_MOUSE_OVERRIDE
-DET4000_REGS=\"/usr/local/etc/vga/libvga.et4000\" -DDYNAMIC -c -o
paradise.o
/wrkdirs/usr/ports/graphics/svgalib/work/svgalib-1.4.3/src/paradise.c
the only interesting diff is that as port it gets compiled with '-O2 -pipe' in
addition;
HIH
matthias
--
Matthias Apitz, guru at unixarea.de, http://www.unixarea.de/ +49-170-4527211
1989-2014: The Wall was torn down so that we go to war together again.
El Muro ha sido derribado para que nos unimos en ir a la guerra otra vez.
Diese Grenze wurde aufgehoben damit wir gemeinsam wieder in den Krieg ziehen.
More information about the freebsd-ports
mailing list