[Bug 294873] Mk/Uses/xorg.mk: Add CONFLICT with xlibre-server for xorg-server users.
| Newsgroups | gmane.os.freebsd.devel.x11 |
|---|---|
| Message-ID | <[email protected]/bugzilla/> |
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=294873
Bug ID: 294873
Summary: Mk/Uses/xorg.mk: Add CONFLICT with xlibre-server for
xorg-server users.
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Keywords: patch-ready
Severity: Affects Only Me
Priority: ---
Component: Individual Port(s)
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected], [email protected], [email protected],
[email protected]
CC: [email protected]
Created attachment 270240
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=270240&action=edit
Adds CONFLICT between xorg-server and xlibre-server.
The XLibre X server also installs the xorg-server.pc pkgconf file for backwards
compatibility with X.Org X server.
Due to this fact, if xlibre-server is installed on the system, it can also pass
the xorg.mk check for:
LIB_PC_DEPENDS=
${LOCALBASE}/libdata/pkgconfig/xorg-server.pc:x11-servers/xorg-server
,and a given port that wants to build with xorg-server can mistakenly build
against xlibre-server instead,
This can be observed by doing the following:
0. Removing xorg-server (if present)
1. Installing xlibre-server (port/pkg doesn't matter)
2. Building the x11-drivers/xf86-input-egalax port
3. Installing it with `make install`
4. Looking at its dependencies with `pkg query %dn xf86-input-egalax` (The port
depends on xlibre-server instead)
I used xf86-input-egalax as an example; this can happen with any other port
that depends on xorg-server, and does not include a explicit CONFLICT with
xlibre-server. In the case of the eGalax driver, the build completes, but in
other drivers the build can fail in confusing/odd ways due to API changes
between the two servers.
To fix this issue this small patch can be applied to xorg.mk that adds a
conflict with xlibre-server for users of xorg-server. It also uses the same
pattern used for RUN_DEPENDS, BUILD_DEPENDS & LIB_PC_DEPENDS, so that it can be
easily extended in any other similar CONFLICTs arise.
--
You are receiving this mail because:
You are on the CC list for the bug.