Opened 4 years ago

Last modified 3 years ago

#62654 assigned defect

xorg-server-legacy @1.20.10_1 does not build on Tiger because of missing posix_spawn support.

Reported by: ballapete (Peter "Pete" Dyballa) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.6.4
Keywords: tiger Cc: jeremyhu (Jeremy Huddleston Sequoia), evanmiller (Evan Miller)
Port: xorg-server-legacy

Description

After almost 5,000 lines of output:

/opt/local/bin/gcc-apple-4.2 -std=gnu99 -DHAVE_CONFIG_H -I. -I../../../include  -I./.. -DBUILD_DATE=\"20210407\" -DXSERVER_VERSION=\"1.20.10\" -DX11BINDIR=\"/opt/local/bin\" -isystem/opt/local/include/LegacySupport -I/opt/local/include -I/opt/local/var/macports/sources/nue.de.rsync.macports.org/macports/release/tarballs/ports/x11/xorg-server-legacy/files/include -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wbad-function-cast -Wold-style-definition -Wdeclaration-after-statement -Wunused -Wuninitialized -Wshadow -Wmissing-noreturn -Wmissing-format-attribute -Wredundant-decls -Werror=implicit -Werror=nonnull -Werror=init-self -Werror=main -Werror=missing-braces -Werror=sequence-point -Werror=return-type -Werror=trigraphs -Werror=write-strings -Werror=address -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -fno-strict-aliasing -fno-strict-aliasing -D_DEFAULT_SOURCE -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -I/opt/local/include/pixman-1 -I/opt/local/include/freetype2 -I/opt/local/include/libpng16 -I../../../include -I../../../include -I../../../Xext  -I../../../damageext -I../../../xfixes -I../../../Xi -I../../../mi -I../../../miext/sync -I../../../miext/shadow  -I../../../miext/damage -I../../../render -I../../../randr -I../../../fb -I../../../dbe -I../../../present -pipe -Os -arch ppc -D_THREAD_SAFE -pthread -DROOTLESS_WORKAROUND -DROOTLESS_SAFEALPHA -DNO_ALLOCA -c -o bundle_trampoline.o bundle_trampoline.c
bundle_trampoline.c:32:19: error: spawn.h: No such file or directory
bundle_trampoline.c:53: warning: function declaration isn't a prototype
bundle_trampoline.c: In function 'executable_path':
bundle_trampoline.c:53: warning: old-style function definition
bundle_trampoline.c: In function 'main':
bundle_trampoline.c:79: error: 'posix_spawnattr_t' undeclared (first use in this function)
bundle_trampoline.c:79: error: (Each undeclared identifier is reported only once
bundle_trampoline.c:79: error: for each function it appears in.)
bundle_trampoline.c:79: error: expected ';' before 'attr'
bundle_trampoline.c:80: warning: implicit declaration of function 'posix_spawnattr_init'
bundle_trampoline.c:80: warning: nested extern declaration of 'posix_spawnattr_init'
bundle_trampoline.c:80: error: 'attr' undeclared (first use in this function)
bundle_trampoline.c:81: warning: implicit declaration of function 'posix_spawnattr_setflags'
bundle_trampoline.c:81: warning: nested extern declaration of 'posix_spawnattr_setflags'
bundle_trampoline.c:81: error: 'POSIX_SPAWN_SETEXEC' undeclared (first use in this function)
bundle_trampoline.c:83: warning: ISO C90 forbids mixed declarations and code
bundle_trampoline.c:84: warning: implicit declaration of function 'posix_spawn'
bundle_trampoline.c:84: warning: nested extern declaration of 'posix_spawn'
make[4]: *** [bundle_trampoline.o] Error 1
make[4]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_nue.de.rsync.macports.org_macports_release_tarballs_ports_x11_xorg-server-legacy/xorg-server-legacy/work/XQuartz-xorg-server-802a0f3/hw/xquartz/mach-startup'
make[3]: *** [all] Error 2

Leopard has /usr/include/spawn.h and /usr/include/sys/spawn.h, Tiger would need /opt/local/include/LegacySupport/sys/spawn.h

This will be shown (or just tried?) next!

Attachments (1)

main.log (1.4 MB) - added by ballapete (Peter "Pete" Dyballa) 4 years ago.
Main.log from PPC Tiger

Download all attachments as: .zip

Change History (10)

Changed 4 years ago by ballapete (Peter "Pete" Dyballa)

Attachment: main.log added

Main.log from PPC Tiger

comment:1 Changed 4 years ago by ballapete (Peter "Pete" Dyballa)

It already has:

      6 PortGroup       legacysupport 1.1

Is this a bit too much? Is it faulty to use -isystem/opt/local/include/LegacySupport? It's presumingly not enough, not correct, bundle_trampoline.c should include <sys/spawn.h>… Is Legacy Support just missing the C header file that includes <sys/spawn.h>?

comment:2 Changed 4 years ago by ballapete (Peter "Pete" Dyballa)

bundle_trampoline.c needs one data data type and three functions defined:

    posix_spawnattr_t
    posix_spawnattr_init()
    posix_spawnattr_setflags()
    posix_spawn()

Leopard has them in /usr/include/sys/spawn.h.

comment:3 Changed 4 years ago by mf2k (Frank Schima)

Cc: jeremyhu@… removed
Owner: set to jeremyhu
Status: newassigned

comment:4 Changed 4 years ago by kencu (Ken)

Owner: changed from jeremyhu to kencu
Status: assignedaccepted

comment:5 Changed 4 years ago by kencu (Ken)

Cc: jeremyhu added

comment:6 Changed 4 years ago by kencu (Ken)

I got this one.

Yes, xorg-server-legacy now uses posix spawn. The plan is for me to add these functions to legacysupport, which is 99% done, rather than conditionalize xorg-server-legacy.

For now, Tiger users must use xorg-server-1.18 which still uses the old Tiger-compatable method of launching the server.

Last edited 4 years ago by kencu (Ken) (previous) (diff)

comment:7 Changed 4 years ago by kencu (Ken)

Summary: xorg-server-legacy @1.20.10_1 does not build on PPC Tiger, Mac OS X 10.4.11, because of missing spawn.hxorg-server-legacy @1.20.10_1 does not build on Tiger because of missing posix_spawn support.

comment:8 Changed 3 years ago by kencu (Ken)

Owner: kencu deleted
Status: acceptedassigned

comment:9 Changed 3 years ago by evanmiller (Evan Miller)

Cc: evanmiller added
Note: See TracTickets for help on using tickets.