View | Details | Raw Unified | Return to bug 254557
Collapse All | Expand All

(-)b/x11-servers/xorg-server/Makefile (-2 / +3 lines)
Lines 3-9 Link Here
3
3
4
PORTNAME?=	xorg-server
4
PORTNAME?=	xorg-server
5
PORTVERSION?=	1.20.9
5
PORTVERSION?=	1.20.9
6
PORTREVISION?=	3
6
PORTREVISION?=	4
7
PORTEPOCH?=	1
7
PORTEPOCH?=	1
8
CATEGORIES=	x11-servers
8
CATEGORIES=	x11-servers
9
MASTER_SITES=	XORG/individual/xserver
9
MASTER_SITES=	XORG/individual/xserver
Lines 75-81 CPE_VENDOR= x.org Link Here
75
75
76
.if ${SLAVE_PORT} == "no" || ${PORTNAME} == "xephyr" || ${PORTNAME} == "xwayland"
76
.if ${SLAVE_PORT} == "no" || ${PORTNAME} == "xephyr" || ${PORTNAME} == "xwayland"
77
LIB_DEPENDS+=	libdrm.so:graphics/libdrm \
77
LIB_DEPENDS+=	libdrm.so:graphics/libdrm \
78
		libepoxy.so:graphics/libepoxy
78
		libepoxy.so:graphics/libepoxy \
79
		libxcvt.so:x11/libxcvt
79
.else
80
.else
80
BUILD_DEPENDS+=	libepoxy>0:graphics/libepoxy	# only for configure
81
BUILD_DEPENDS+=	libepoxy>0:graphics/libepoxy	# only for configure
81
.endif
82
.endif
(-)b/x11-servers/xorg-server/files/patch-libxcvt (+1058 lines)
Added Link Here
1
https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/637
2
3
--- configure.orig	2020-08-25 15:40:04 UTC
4
+++ configure
5
@@ -858,6 +858,8 @@ PCI_TXT_IDS_PATH
6
 PCIACCESS_LIBS
7
 PCIACCESS_CFLAGS
8
 symbol_visibility
9
+LIBXCVT_LIBS
10
+LIBXCVT_CFLAGS
11
 XNEST_SYS_LIBS
12
 XNEST_LIBS
13
 XNEST_FALSE
14
@@ -1448,6 +1450,8 @@ LIBUNWIND_CFLAGS
15
 LIBUNWIND_LIBS
16
 XNESTMODULES_CFLAGS
17
 XNESTMODULES_LIBS
18
+LIBXCVT_CFLAGS
19
+LIBXCVT_LIBS
20
 PCIACCESS_CFLAGS
21
 PCIACCESS_LIBS
22
 DGA_CFLAGS
23
@@ -2403,6 +2407,10 @@ Some influential environment variables:
24
               C compiler flags for XNESTMODULES, overriding pkg-config
25
   XNESTMODULES_LIBS
26
               linker flags for XNESTMODULES, overriding pkg-config
27
+  LIBXCVT_CFLAGS
28
+              C compiler flags for LIBXCVT, overriding pkg-config
29
+  LIBXCVT_LIBS
30
+              linker flags for LIBXCVT, overriding pkg-config
31
   PCIACCESS_CFLAGS
32
               C compiler flags for PCIACCESS, overriding pkg-config
33
   PCIACCESS_LIBS
34
@@ -24784,6 +24792,7 @@ LIBUDEV="libudev >= 143"
35
 LIBSELINUX="libselinux >= 2.0.86"
36
 LIBDBUS="dbus-1 >= 1.0"
37
 LIBPIXMAN="pixman-1 >= 0.27.2"
38
+LIBXCVT="libxcvt >= 0.0.1"
39
 
40
 
41
 pkg_failed=no
42
@@ -28912,8 +28921,100 @@ if test "x$XORG" = xyes; then
43
 	XORG_OSINCS='-I$(top_srcdir)/hw/xfree86/os-support -I$(top_srcdir)/hw/xfree86/os-support/bus -I$(top_srcdir)/os'
44
 	XORG_INCS="$XORG_DDXINCS $XORG_OSINCS"
45
 	XORG_CFLAGS="$XORGSERVER_CFLAGS -DHAVE_XORG_CONFIG_H"
46
-	XORG_LIBS="$COMPOSITE_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $XI_LIB $XKB_LIB"
47
+	XORG_LIBS="$COMPOSITE_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $XI_LIB $XKB_LIB $LIBXCVT_LIB"
48
 
49
+
50
+pkg_failed=no
51
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBXCVT" >&5
52
+$as_echo_n "checking for LIBXCVT... " >&6; }
53
+
54
+if test -n "$LIBXCVT_CFLAGS"; then
55
+    pkg_cv_LIBXCVT_CFLAGS="$LIBXCVT_CFLAGS"
56
+ elif test -n "$PKG_CONFIG"; then
57
+    if test -n "$PKG_CONFIG" && \
58
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$LIBXCVT\""; } >&5
59
+  ($PKG_CONFIG --exists --print-errors "$LIBXCVT") 2>&5
60
+  ac_status=$?
61
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
62
+  test $ac_status = 0; }; then
63
+  pkg_cv_LIBXCVT_CFLAGS=`$PKG_CONFIG --cflags "$LIBXCVT" 2>/dev/null`
64
+		      test "x$?" != "x0" && pkg_failed=yes
65
+else
66
+  pkg_failed=yes
67
+fi
68
+ else
69
+    pkg_failed=untried
70
+fi
71
+if test -n "$LIBXCVT_LIBS"; then
72
+    pkg_cv_LIBXCVT_LIBS="$LIBXCVT_LIBS"
73
+ elif test -n "$PKG_CONFIG"; then
74
+    if test -n "$PKG_CONFIG" && \
75
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$LIBXCVT\""; } >&5
76
+  ($PKG_CONFIG --exists --print-errors "$LIBXCVT") 2>&5
77
+  ac_status=$?
78
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
79
+  test $ac_status = 0; }; then
80
+  pkg_cv_LIBXCVT_LIBS=`$PKG_CONFIG --libs "$LIBXCVT" 2>/dev/null`
81
+		      test "x$?" != "x0" && pkg_failed=yes
82
+else
83
+  pkg_failed=yes
84
+fi
85
+ else
86
+    pkg_failed=untried
87
+fi
88
+
89
+
90
+
91
+if test $pkg_failed = yes; then
92
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
93
+$as_echo "no" >&6; }
94
+
95
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
96
+        _pkg_short_errors_supported=yes
97
+else
98
+        _pkg_short_errors_supported=no
99
+fi
100
+        if test $_pkg_short_errors_supported = yes; then
101
+	        LIBXCVT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$LIBXCVT" 2>&1`
102
+        else
103
+	        LIBXCVT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$LIBXCVT" 2>&1`
104
+        fi
105
+	# Put the nasty error message in config.log where it belongs
106
+	echo "$LIBXCVT_PKG_ERRORS" >&5
107
+
108
+	as_fn_error $? "Package requirements ($LIBXCVT) were not met:
109
+
110
+$LIBXCVT_PKG_ERRORS
111
+
112
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
113
+installed software in a non-standard prefix.
114
+
115
+Alternatively, you may set the environment variables LIBXCVT_CFLAGS
116
+and LIBXCVT_LIBS to avoid the need to call pkg-config.
117
+See the pkg-config man page for more details." "$LINENO" 5
118
+elif test $pkg_failed = untried; then
119
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
120
+$as_echo "no" >&6; }
121
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
122
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
123
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
124
+is in your PATH or set the PKG_CONFIG environment variable to the full
125
+path to pkg-config.
126
+
127
+Alternatively, you may set the environment variables LIBXCVT_CFLAGS
128
+and LIBXCVT_LIBS to avoid the need to call pkg-config.
129
+See the pkg-config man page for more details.
130
+
131
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
132
+See \`config.log' for more details" "$LINENO" 5; }
133
+else
134
+	LIBXCVT_CFLAGS=$pkg_cv_LIBXCVT_CFLAGS
135
+	LIBXCVT_LIBS=$pkg_cv_LIBXCVT_LIBS
136
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
137
+$as_echo "yes" >&6; }
138
+
139
+fi
140
+
141
 			symbol_visibility=
142
 	have_visibility=disabled
143
 	if test x$SYMBOL_VISIBILITY != xno; then
144
@@ -32283,6 +32384,98 @@ $as_echo "#define XWL_HAS_EGLSTREAM 1" >>confdefs.h
145
 
146
 	fi
147
 
148
+
149
+pkg_failed=no
150
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBXCVT" >&5
151
+$as_echo_n "checking for LIBXCVT... " >&6; }
152
+
153
+if test -n "$LIBXCVT_CFLAGS"; then
154
+    pkg_cv_LIBXCVT_CFLAGS="$LIBXCVT_CFLAGS"
155
+ elif test -n "$PKG_CONFIG"; then
156
+    if test -n "$PKG_CONFIG" && \
157
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$LIBXCVT\""; } >&5
158
+  ($PKG_CONFIG --exists --print-errors "$LIBXCVT") 2>&5
159
+  ac_status=$?
160
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
161
+  test $ac_status = 0; }; then
162
+  pkg_cv_LIBXCVT_CFLAGS=`$PKG_CONFIG --cflags "$LIBXCVT" 2>/dev/null`
163
+		      test "x$?" != "x0" && pkg_failed=yes
164
+else
165
+  pkg_failed=yes
166
+fi
167
+ else
168
+    pkg_failed=untried
169
+fi
170
+if test -n "$LIBXCVT_LIBS"; then
171
+    pkg_cv_LIBXCVT_LIBS="$LIBXCVT_LIBS"
172
+ elif test -n "$PKG_CONFIG"; then
173
+    if test -n "$PKG_CONFIG" && \
174
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$LIBXCVT\""; } >&5
175
+  ($PKG_CONFIG --exists --print-errors "$LIBXCVT") 2>&5
176
+  ac_status=$?
177
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
178
+  test $ac_status = 0; }; then
179
+  pkg_cv_LIBXCVT_LIBS=`$PKG_CONFIG --libs "$LIBXCVT" 2>/dev/null`
180
+		      test "x$?" != "x0" && pkg_failed=yes
181
+else
182
+  pkg_failed=yes
183
+fi
184
+ else
185
+    pkg_failed=untried
186
+fi
187
+
188
+
189
+
190
+if test $pkg_failed = yes; then
191
+   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
192
+$as_echo "no" >&6; }
193
+
194
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
195
+        _pkg_short_errors_supported=yes
196
+else
197
+        _pkg_short_errors_supported=no
198
+fi
199
+        if test $_pkg_short_errors_supported = yes; then
200
+	        LIBXCVT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$LIBXCVT" 2>&1`
201
+        else
202
+	        LIBXCVT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$LIBXCVT" 2>&1`
203
+        fi
204
+	# Put the nasty error message in config.log where it belongs
205
+	echo "$LIBXCVT_PKG_ERRORS" >&5
206
+
207
+	as_fn_error $? "Package requirements ($LIBXCVT) were not met:
208
+
209
+$LIBXCVT_PKG_ERRORS
210
+
211
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
212
+installed software in a non-standard prefix.
213
+
214
+Alternatively, you may set the environment variables LIBXCVT_CFLAGS
215
+and LIBXCVT_LIBS to avoid the need to call pkg-config.
216
+See the pkg-config man page for more details." "$LINENO" 5
217
+elif test $pkg_failed = untried; then
218
+     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
219
+$as_echo "no" >&6; }
220
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
221
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
222
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
223
+is in your PATH or set the PKG_CONFIG environment variable to the full
224
+path to pkg-config.
225
+
226
+Alternatively, you may set the environment variables LIBXCVT_CFLAGS
227
+and LIBXCVT_LIBS to avoid the need to call pkg-config.
228
+See the pkg-config man page for more details.
229
+
230
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
231
+See \`config.log' for more details" "$LINENO" 5; }
232
+else
233
+	LIBXCVT_CFLAGS=$pkg_cv_LIBXCVT_CFLAGS
234
+	LIBXCVT_LIBS=$pkg_cv_LIBXCVT_LIBS
235
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
236
+$as_echo "yes" >&6; }
237
+
238
+fi
239
+
240
 	XWAYLAND_LIBS="$FB_LIB $FIXES_LIB $MI_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $MAIN_LIB $DIX_LIB $OS_LIB"
241
 	XWAYLAND_SYS_LIBS="$XWAYLANDMODULES_LIBS $GLX_SYS_LIBS"
242
 
243
@@ -32611,7 +32804,7 @@ $as_echo "$as_me: WARNING:
244
              ***********************************************" >&2;}
245
 fi
246
 
247
-ac_config_files="$ac_config_files Makefile glx/Makefile include/Makefile composite/Makefile damageext/Makefile dbe/Makefile dix/Makefile doc/Makefile doc/dtrace/Makefile man/Makefile fb/Makefile glamor/Makefile record/Makefile config/Makefile mi/Makefile miext/Makefile miext/sync/Makefile miext/damage/Makefile miext/shadow/Makefile miext/rootless/Makefile os/Makefile pseudoramiX/Makefile randr/Makefile render/Makefile xkb/Makefile Xext/Makefile Xi/Makefile xfixes/Makefile exa/Makefile dri3/Makefile present/Makefile hw/Makefile hw/xfree86/Makefile hw/xfree86/Xorg.sh hw/xfree86/common/Makefile hw/xfree86/common/xf86Build.h hw/xfree86/ddc/Makefile hw/xfree86/dixmods/Makefile hw/xfree86/doc/Makefile hw/xfree86/dri/Makefile hw/xfree86/dri2/Makefile hw/xfree86/dri2/pci_ids/Makefile hw/xfree86/drivers/Makefile hw/xfree86/drivers/modesetting/Makefile hw/xfree86/exa/Makefile hw/xfree86/exa/man/Makefile hw/xfree86/fbdevhw/Makefile hw/xfree86/fbdevhw/man/Makefile hw/xfree86/glamor_egl/Makefile hw/xfree86/i2c/Makefile hw/xfree86/int10/Makefile hw/xfree86/loader/Makefile hw/xfree86/man/Makefile hw/xfree86/modes/Makefile hw/xfree86/os-support/Makefile hw/xfree86/os-support/bsd/Makefile hw/xfree86/os-support/bus/Makefile hw/xfree86/os-support/hurd/Makefile hw/xfree86/os-support/misc/Makefile hw/xfree86/os-support/linux/Makefile hw/xfree86/os-support/solaris/Makefile hw/xfree86/os-support/stub/Makefile hw/xfree86/parser/Makefile hw/xfree86/ramdac/Makefile hw/xfree86/shadowfb/Makefile hw/xfree86/vbe/Makefile hw/xfree86/vgahw/Makefile hw/xfree86/x86emu/Makefile hw/xfree86/xkb/Makefile hw/xfree86/utils/Makefile hw/xfree86/utils/man/Makefile hw/xfree86/utils/cvt/Makefile hw/xfree86/utils/gtf/Makefile hw/dmx/config/Makefile hw/dmx/config/man/Makefile hw/dmx/doc/Makefile hw/dmx/doxygen/doxygen.conf hw/dmx/doxygen/Makefile hw/dmx/examples/Makefile hw/dmx/input/Makefile hw/dmx/glxProxy/Makefile hw/dmx/Makefile hw/dmx/man/Makefile hw/vfb/Makefile hw/vfb/man/Makefile hw/xnest/Makefile hw/xnest/man/Makefile hw/xwin/Makefile hw/xwin/dri/Makefile hw/xwin/glx/Makefile hw/xwin/man/Makefile hw/xwin/winclipboard/Makefile hw/xquartz/Makefile hw/xquartz/GL/Makefile hw/xquartz/bundle/Makefile hw/xquartz/man/Makefile hw/xquartz/mach-startup/Makefile hw/xquartz/pbproxy/Makefile hw/xquartz/xpr/Makefile hw/kdrive/Makefile hw/kdrive/ephyr/Makefile hw/kdrive/ephyr/man/Makefile hw/kdrive/src/Makefile hw/xwayland/Makefile test/Makefile xserver.ent xorg-server.pc"
248
+ac_config_files="$ac_config_files Makefile glx/Makefile include/Makefile composite/Makefile damageext/Makefile dbe/Makefile dix/Makefile doc/Makefile doc/dtrace/Makefile man/Makefile fb/Makefile glamor/Makefile record/Makefile config/Makefile mi/Makefile miext/Makefile miext/sync/Makefile miext/damage/Makefile miext/shadow/Makefile miext/rootless/Makefile os/Makefile pseudoramiX/Makefile randr/Makefile render/Makefile xkb/Makefile Xext/Makefile Xi/Makefile xfixes/Makefile exa/Makefile dri3/Makefile present/Makefile hw/Makefile hw/xfree86/Makefile hw/xfree86/Xorg.sh hw/xfree86/common/Makefile hw/xfree86/common/xf86Build.h hw/xfree86/ddc/Makefile hw/xfree86/dixmods/Makefile hw/xfree86/doc/Makefile hw/xfree86/dri/Makefile hw/xfree86/dri2/Makefile hw/xfree86/dri2/pci_ids/Makefile hw/xfree86/drivers/Makefile hw/xfree86/drivers/modesetting/Makefile hw/xfree86/exa/Makefile hw/xfree86/exa/man/Makefile hw/xfree86/fbdevhw/Makefile hw/xfree86/fbdevhw/man/Makefile hw/xfree86/glamor_egl/Makefile hw/xfree86/i2c/Makefile hw/xfree86/int10/Makefile hw/xfree86/loader/Makefile hw/xfree86/man/Makefile hw/xfree86/modes/Makefile hw/xfree86/os-support/Makefile hw/xfree86/os-support/bsd/Makefile hw/xfree86/os-support/bus/Makefile hw/xfree86/os-support/hurd/Makefile hw/xfree86/os-support/misc/Makefile hw/xfree86/os-support/linux/Makefile hw/xfree86/os-support/solaris/Makefile hw/xfree86/os-support/stub/Makefile hw/xfree86/parser/Makefile hw/xfree86/ramdac/Makefile hw/xfree86/shadowfb/Makefile hw/xfree86/vbe/Makefile hw/xfree86/vgahw/Makefile hw/xfree86/x86emu/Makefile hw/xfree86/xkb/Makefile hw/xfree86/utils/Makefile hw/xfree86/utils/man/Makefile hw/xfree86/utils/gtf/Makefile hw/dmx/config/Makefile hw/dmx/config/man/Makefile hw/dmx/doc/Makefile hw/dmx/doxygen/doxygen.conf hw/dmx/doxygen/Makefile hw/dmx/examples/Makefile hw/dmx/input/Makefile hw/dmx/glxProxy/Makefile hw/dmx/Makefile hw/dmx/man/Makefile hw/vfb/Makefile hw/vfb/man/Makefile hw/xnest/Makefile hw/xnest/man/Makefile hw/xwin/Makefile hw/xwin/dri/Makefile hw/xwin/glx/Makefile hw/xwin/man/Makefile hw/xwin/winclipboard/Makefile hw/xquartz/Makefile hw/xquartz/GL/Makefile hw/xquartz/bundle/Makefile hw/xquartz/man/Makefile hw/xquartz/mach-startup/Makefile hw/xquartz/pbproxy/Makefile hw/xquartz/xpr/Makefile hw/kdrive/Makefile hw/kdrive/ephyr/Makefile hw/kdrive/ephyr/man/Makefile hw/kdrive/src/Makefile hw/xwayland/Makefile test/Makefile xserver.ent xorg-server.pc"
249
 
250
 cat >confcache <<\_ACEOF
251
 # This file is a shell script that caches the results of configure
252
@@ -34110,7 +34303,6 @@ do
253
     "hw/xfree86/xkb/Makefile") CONFIG_FILES="$CONFIG_FILES hw/xfree86/xkb/Makefile" ;;
254
     "hw/xfree86/utils/Makefile") CONFIG_FILES="$CONFIG_FILES hw/xfree86/utils/Makefile" ;;
255
     "hw/xfree86/utils/man/Makefile") CONFIG_FILES="$CONFIG_FILES hw/xfree86/utils/man/Makefile" ;;
256
-    "hw/xfree86/utils/cvt/Makefile") CONFIG_FILES="$CONFIG_FILES hw/xfree86/utils/cvt/Makefile" ;;
257
     "hw/xfree86/utils/gtf/Makefile") CONFIG_FILES="$CONFIG_FILES hw/xfree86/utils/gtf/Makefile" ;;
258
     "hw/dmx/config/Makefile") CONFIG_FILES="$CONFIG_FILES hw/dmx/config/Makefile" ;;
259
     "hw/dmx/config/man/Makefile") CONFIG_FILES="$CONFIG_FILES hw/dmx/config/man/Makefile" ;;
260
--- hw/xfree86/Makefile.in.orig	2020-08-25 15:40:06 UTC
261
+++ hw/xfree86/Makefile.in
262
@@ -374,6 +374,8 @@ LIBSHA1_LIBS = @LIBSHA1_LIBS@
263
 LIBTOOL = @LIBTOOL@
264
 LIBUNWIND_CFLAGS = @LIBUNWIND_CFLAGS@
265
 LIBUNWIND_LIBS = @LIBUNWIND_LIBS@
266
+LIBXCVT_CFLAGS = @LIBXCVT_CFLAGS@
267
+LIBXCVT_LIBS = @LIBXCVT_LIBS@
268
 LIB_MAN_DIR = @LIB_MAN_DIR@
269
 LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
270
 LIPO = @LIPO@
271
@@ -625,7 +627,7 @@ DIST_SUBDIRS = common ddc i2c x86emu int10 fbdevhw os-
272
 	       utils doc man glamor_egl drivers
273
 
274
 nodist_Xorg_SOURCES = sdksyms.c
275
-AM_CFLAGS = $(DIX_CFLAGS) @XORG_CFLAGS@
276
+AM_CFLAGS = $(DIX_CFLAGS) $(LIBXCVT_CFLAGS) @XORG_CFLAGS@
277
 AM_CPPFLAGS = $(XORG_INCS) -I$(srcdir)/parser \
278
 	-I$(srcdir)/ddc -I$(srcdir)/i2c -I$(srcdir)/modes -I$(srcdir)/ramdac \
279
 	-I$(srcdir)/dri -I$(srcdir)/dri2 -I$(top_srcdir)/dri3
280
@@ -656,7 +658,8 @@ LOCAL_LIBS = \
281
 Xorg_LDADD = \
282
             $(LOCAL_LIBS) \
283
             $(XORG_SYS_LIBS) \
284
-            $(XSERVER_SYS_LIBS)
285
+            $(XSERVER_SYS_LIBS) \
286
+            $(LIBXCVT_LIBS)
287
 
288
 Xorg_DEPENDENCIES = $(LOCAL_LIBS)
289
 Xorg_LDFLAGS = $(LD_EXPORT_SYMBOLS_FLAG)
290
--- hw/xfree86/meson.build.orig	2020-08-25 15:39:55 UTC
291
+++ hw/xfree86/meson.build
292
@@ -153,15 +153,6 @@ if get_option('suid_wrapper')
293
     )
294
 endif
295
 
296
-executable('cvt',
297
-    ['utils/cvt/cvt.c', 'modes/xf86cvt.c'],
298
-    include_directories: [inc, xorg_inc],
299
-    dependencies: xorg_deps,
300
-    link_with: libxserver_os,
301
-    c_args: xorg_c_args,
302
-    install: true,
303
-)
304
-
305
 executable('gtf',
306
     'utils/gtf/gtf.c',
307
     include_directories: [inc, xorg_inc],
308
@@ -213,12 +204,6 @@ install_man(configure_file(
309
 install_man(configure_file(
310
     input: 'man/xorg.conf.d.man',
311
     output: 'xorg.conf.d.5',
312
-    configuration: manpage_config,
313
-))
314
-
315
-install_man(configure_file(
316
-    input: 'utils/man/cvt.man',
317
-    output: 'cvt.1',
318
     configuration: manpage_config,
319
 ))
320
 
321
--- hw/xfree86/modes/Makefile.in.orig	2020-08-25 15:40:07 UTC
322
+++ hw/xfree86/modes/Makefile.in
323
@@ -351,6 +351,8 @@ LIBSHA1_LIBS = @LIBSHA1_LIBS@
324
 LIBTOOL = @LIBTOOL@
325
 LIBUNWIND_CFLAGS = @LIBUNWIND_CFLAGS@
326
 LIBUNWIND_LIBS = @LIBUNWIND_LIBS@
327
+LIBXCVT_CFLAGS = @LIBXCVT_CFLAGS@
328
+LIBXCVT_LIBS = @LIBXCVT_LIBS@
329
 LIB_MAN_DIR = @LIB_MAN_DIR@
330
 LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
331
 LIPO = @LIPO@
332
@@ -605,7 +607,7 @@ sdk_HEADERS = \
333
 	xf86Modes.h \
334
 	xf86RandR12.h
335
 
336
-AM_CFLAGS = $(DIX_CFLAGS) $(XORG_CFLAGS)
337
+AM_CFLAGS = $(DIX_CFLAGS) $(XORG_CFLAGS) $(LIBXCVT_CFLAGS)
338
 all: all-am
339
 
340
 .SUFFIXES:
341
--- hw/xfree86/modes/meson.build.orig	2020-08-25 15:39:55 UTC
342
+++ hw/xfree86/modes/meson.build
343
@@ -15,8 +15,8 @@ endif
344
 
345
 xorg_modes = static_library('xorg_modes',
346
     srcs_xorg_modes,
347
-    include_directories: [inc, xorg_inc],
348
-    dependencies: common_dep,
349
+    include_directories: [ inc, xorg_inc ],
350
+    dependencies: [ common_dep, libxcvt_dep ],
351
     c_args: xorg_c_args,
352
 )
353
 
354
--- hw/xfree86/modes/xf86cvt.c.orig	2020-08-25 15:39:55 UTC
355
+++ hw/xfree86/modes/xf86cvt.c
356
@@ -20,12 +20,6 @@
357
  * OTHER DEALINGS IN THE SOFTWARE.
358
  */
359
 
360
-/*
361
- * The reason for having this function in a file of its own is
362
- * so that ../utils/cvt/cvt can link to it, and that xf86CVTMode
363
- * code is shared directly.
364
- */
365
-
366
 #ifdef HAVE_XORG_CONFIG_H
367
 #include <xorg-config.h>
368
 #endif
369
@@ -34,6 +28,7 @@
370
 #include "xf86Modes.h"
371
 
372
 #include <string.h>
373
+#include <libxcvt/libxcvt.h>
374
 
375
 /*
376
  * Generate a CVT standard mode from HDisplay, VDisplay and VRefresh.
377
@@ -63,233 +58,25 @@ DisplayModePtr
378
 xf86CVTMode(int HDisplay, int VDisplay, float VRefresh, Bool Reduced,
379
             Bool Interlaced)
380
 {
381
+    struct libxcvt_mode_info *libxcvt_mode_info;
382
     DisplayModeRec *Mode = xnfcalloc(1, sizeof(DisplayModeRec));
383
 
384
-    /* 1) top/bottom margin size (% of height) - default: 1.8 */
385
-#define CVT_MARGIN_PERCENTAGE 1.8
386
+    libxcvt_mode_info =
387
+        libxcvt_gen_mode_info(HDisplay, VDisplay, VRefresh, Reduced, Interlaced);
388
 
389
-    /* 2) character cell horizontal granularity (pixels) - default 8 */
390
-#define CVT_H_GRANULARITY 8
391
+    Mode->VDisplay   = libxcvt_mode_info->vdisplay;
392
+    Mode->HDisplay   = libxcvt_mode_info->hdisplay;
393
+    Mode->Clock      = libxcvt_mode_info->dot_clock;
394
+    Mode->HSyncStart = libxcvt_mode_info->hsync_start;
395
+    Mode->HSyncEnd   = libxcvt_mode_info->hsync_end;
396
+    Mode->HTotal     = libxcvt_mode_info->htotal;
397
+    Mode->VSyncStart = libxcvt_mode_info->vsync_start;
398
+    Mode->VSyncEnd   = libxcvt_mode_info->vsync_end;
399
+    Mode->VTotal     = libxcvt_mode_info->vtotal;
400
+    Mode->VRefresh   = libxcvt_mode_info->vrefresh;
401
+    Mode->Flags      = libxcvt_mode_info->mode_flags;
402
 
403
-    /* 4) Minimum vertical porch (lines) - default 3 */
404
-#define CVT_MIN_V_PORCH 3
405
-
406
-    /* 4) Minimum number of vertical back porch lines - default 6 */
407
-#define CVT_MIN_V_BPORCH 6
408
-
409
-    /* Pixel Clock step (kHz) */
410
-#define CVT_CLOCK_STEP 250
411
-
412
-    Bool Margins = FALSE;
413
-    float VFieldRate, HPeriod;
414
-    int HDisplayRnd, HMargin;
415
-    int VDisplayRnd, VMargin, VSync;
416
-    float Interlace;            /* Please rename this */
417
-    char *tmp;
418
-
419
-    /* CVT default is 60.0Hz */
420
-    if (!VRefresh)
421
-        VRefresh = 60.0;
422
-
423
-    /* 1. Required field rate */
424
-    if (Interlaced)
425
-        VFieldRate = VRefresh * 2;
426
-    else
427
-        VFieldRate = VRefresh;
428
-
429
-    /* 2. Horizontal pixels */
430
-    HDisplayRnd = HDisplay - (HDisplay % CVT_H_GRANULARITY);
431
-
432
-    /* 3. Determine left and right borders */
433
-    if (Margins) {
434
-        /* right margin is actually exactly the same as left */
435
-        HMargin = (((float) HDisplayRnd) * CVT_MARGIN_PERCENTAGE / 100.0);
436
-        HMargin -= HMargin % CVT_H_GRANULARITY;
437
-    }
438
-    else
439
-        HMargin = 0;
440
-
441
-    /* 4. Find total active pixels */
442
-    Mode->HDisplay = HDisplayRnd + 2 * HMargin;
443
-
444
-    /* 5. Find number of lines per field */
445
-    if (Interlaced)
446
-        VDisplayRnd = VDisplay / 2;
447
-    else
448
-        VDisplayRnd = VDisplay;
449
-
450
-    /* 6. Find top and bottom margins */
451
-    /* nope. */
452
-    if (Margins)
453
-        /* top and bottom margins are equal again. */
454
-        VMargin = (((float) VDisplayRnd) * CVT_MARGIN_PERCENTAGE / 100.0);
455
-    else
456
-        VMargin = 0;
457
-
458
-    Mode->VDisplay = VDisplay + 2 * VMargin;
459
-
460
-    /* 7. Interlace */
461
-    if (Interlaced)
462
-        Interlace = 0.5;
463
-    else
464
-        Interlace = 0.0;
465
-
466
-    /* Determine VSync Width from aspect ratio */
467
-    if (!(VDisplay % 3) && ((VDisplay * 4 / 3) == HDisplay))
468
-        VSync = 4;
469
-    else if (!(VDisplay % 9) && ((VDisplay * 16 / 9) == HDisplay))
470
-        VSync = 5;
471
-    else if (!(VDisplay % 10) && ((VDisplay * 16 / 10) == HDisplay))
472
-        VSync = 6;
473
-    else if (!(VDisplay % 4) && ((VDisplay * 5 / 4) == HDisplay))
474
-        VSync = 7;
475
-    else if (!(VDisplay % 9) && ((VDisplay * 15 / 9) == HDisplay))
476
-        VSync = 7;
477
-    else                        /* Custom */
478
-        VSync = 10;
479
-
480
-    if (!Reduced) {             /* simplified GTF calculation */
481
-
482
-        /* 4) Minimum time of vertical sync + back porch interval (µs)
483
-         * default 550.0 */
484
-#define CVT_MIN_VSYNC_BP 550.0
485
-
486
-        /* 3) Nominal HSync width (% of line period) - default 8 */
487
-#define CVT_HSYNC_PERCENTAGE 8
488
-
489
-        float HBlankPercentage;
490
-        int VSyncAndBackPorch, VBackPorch;
491
-        int HBlank;
492
-
493
-        /* 8. Estimated Horizontal period */
494
-        HPeriod = ((float) (1000000.0 / VFieldRate - CVT_MIN_VSYNC_BP)) /
495
-            (VDisplayRnd + 2 * VMargin + CVT_MIN_V_PORCH + Interlace);
496
-
497
-        /* 9. Find number of lines in sync + backporch */
498
-        if (((int) (CVT_MIN_VSYNC_BP / HPeriod) + 1) <
499
-            (VSync + CVT_MIN_V_PORCH))
500
-            VSyncAndBackPorch = VSync + CVT_MIN_V_PORCH;
501
-        else
502
-            VSyncAndBackPorch = (int) (CVT_MIN_VSYNC_BP / HPeriod) + 1;
503
-
504
-        /* 10. Find number of lines in back porch */
505
-        VBackPorch = VSyncAndBackPorch - VSync;
506
-        (void) VBackPorch;
507
-
508
-        /* 11. Find total number of lines in vertical field */
509
-        Mode->VTotal = VDisplayRnd + 2 * VMargin + VSyncAndBackPorch + Interlace
510
-            + CVT_MIN_V_PORCH;
511
-
512
-        /* 5) Definition of Horizontal blanking time limitation */
513
-        /* Gradient (%/kHz) - default 600 */
514
-#define CVT_M_FACTOR 600
515
-
516
-        /* Offset (%) - default 40 */
517
-#define CVT_C_FACTOR 40
518
-
519
-        /* Blanking time scaling factor - default 128 */
520
-#define CVT_K_FACTOR 128
521
-
522
-        /* Scaling factor weighting - default 20 */
523
-#define CVT_J_FACTOR 20
524
-
525
-#define CVT_M_PRIME CVT_M_FACTOR * CVT_K_FACTOR / 256
526
-#define CVT_C_PRIME (CVT_C_FACTOR - CVT_J_FACTOR) * CVT_K_FACTOR / 256 + \
527
-        CVT_J_FACTOR
528
-
529
-        /* 12. Find ideal blanking duty cycle from formula */
530
-        HBlankPercentage = CVT_C_PRIME - CVT_M_PRIME * HPeriod / 1000.0;
531
-
532
-        /* 13. Blanking time */
533
-        if (HBlankPercentage < 20)
534
-            HBlankPercentage = 20;
535
-
536
-        HBlank = Mode->HDisplay * HBlankPercentage / (100.0 - HBlankPercentage);
537
-        HBlank -= HBlank % (2 * CVT_H_GRANULARITY);
538
-
539
-        /* 14. Find total number of pixels in a line. */
540
-        Mode->HTotal = Mode->HDisplay + HBlank;
541
-
542
-        /* Fill in HSync values */
543
-        Mode->HSyncEnd = Mode->HDisplay + HBlank / 2;
544
-
545
-        Mode->HSyncStart = Mode->HSyncEnd -
546
-            (Mode->HTotal * CVT_HSYNC_PERCENTAGE) / 100;
547
-        Mode->HSyncStart += CVT_H_GRANULARITY -
548
-            Mode->HSyncStart % CVT_H_GRANULARITY;
549
-
550
-        /* Fill in VSync values */
551
-        Mode->VSyncStart = Mode->VDisplay + CVT_MIN_V_PORCH;
552
-        Mode->VSyncEnd = Mode->VSyncStart + VSync;
553
-
554
-    }
555
-    else {                      /* Reduced blanking */
556
-        /* Minimum vertical blanking interval time (µs) - default 460 */
557
-#define CVT_RB_MIN_VBLANK 460.0
558
-
559
-        /* Fixed number of clocks for horizontal sync */
560
-#define CVT_RB_H_SYNC 32.0
561
-
562
-        /* Fixed number of clocks for horizontal blanking */
563
-#define CVT_RB_H_BLANK 160.0
564
-
565
-        /* Fixed number of lines for vertical front porch - default 3 */
566
-#define CVT_RB_VFPORCH 3
567
-
568
-        int VBILines;
569
-
570
-        /* 8. Estimate Horizontal period. */
571
-        HPeriod = ((float) (1000000.0 / VFieldRate - CVT_RB_MIN_VBLANK)) /
572
-            (VDisplayRnd + 2 * VMargin);
573
-
574
-        /* 9. Find number of lines in vertical blanking */
575
-        VBILines = ((float) CVT_RB_MIN_VBLANK) / HPeriod + 1;
576
-
577
-        /* 10. Check if vertical blanking is sufficient */
578
-        if (VBILines < (CVT_RB_VFPORCH + VSync + CVT_MIN_V_BPORCH))
579
-            VBILines = CVT_RB_VFPORCH + VSync + CVT_MIN_V_BPORCH;
580
-
581
-        /* 11. Find total number of lines in vertical field */
582
-        Mode->VTotal = VDisplayRnd + 2 * VMargin + Interlace + VBILines;
583
-
584
-        /* 12. Find total number of pixels in a line */
585
-        Mode->HTotal = Mode->HDisplay + CVT_RB_H_BLANK;
586
-
587
-        /* Fill in HSync values */
588
-        Mode->HSyncEnd = Mode->HDisplay + CVT_RB_H_BLANK / 2;
589
-        Mode->HSyncStart = Mode->HSyncEnd - CVT_RB_H_SYNC;
590
-
591
-        /* Fill in VSync values */
592
-        Mode->VSyncStart = Mode->VDisplay + CVT_RB_VFPORCH;
593
-        Mode->VSyncEnd = Mode->VSyncStart + VSync;
594
-    }
595
-
596
-    /* 15/13. Find pixel clock frequency (kHz for xf86) */
597
-    Mode->Clock = Mode->HTotal * 1000.0 / HPeriod;
598
-    Mode->Clock -= Mode->Clock % CVT_CLOCK_STEP;
599
-
600
-    /* 16/14. Find actual Horizontal Frequency (kHz) */
601
-    Mode->HSync = ((float) Mode->Clock) / ((float) Mode->HTotal);
602
-
603
-    /* 17/15. Find actual Field rate */
604
-    Mode->VRefresh = (1000.0 * ((float) Mode->Clock)) /
605
-        ((float) (Mode->HTotal * Mode->VTotal));
606
-
607
-    /* 18/16. Find actual vertical frame frequency */
608
-    /* ignore - just set the mode flag for interlaced */
609
-    if (Interlaced)
610
-        Mode->VTotal *= 2;
611
-
612
-    XNFasprintf(&tmp, "%dx%d", HDisplay, VDisplay);
613
-    Mode->name = tmp;
614
-
615
-    if (Reduced)
616
-        Mode->Flags |= V_PHSYNC | V_NVSYNC;
617
-    else
618
-        Mode->Flags |= V_NHSYNC | V_PVSYNC;
619
-
620
-    if (Interlaced)
621
-        Mode->Flags |= V_INTERLACE;
622
+    free(libxcvt_mode_info);
623
 
624
     return Mode;
625
 }
626
--- hw/xfree86/utils/Makefile.in.orig	2020-08-25 15:40:08 UTC
627
+++ hw/xfree86/utils/Makefile.in
628
@@ -550,7 +550,6 @@ top_builddir = @top_builddir@
629
 top_srcdir = @top_srcdir@
630
 SUBDIRS = \
631
 	gtf \
632
-	cvt \
633
 	man
634
 
635
 all: all-recursive
636
--- hw/xfree86/utils/man/Makefile.in.orig	2020-08-25 15:40:08 UTC
637
+++ hw/xfree86/utils/man/Makefile.in
638
@@ -565,7 +565,7 @@ fileman_DATA = $(fileman_PRE:man=$(FILE_MAN_SUFFIX))
639
 EXTRA_DIST = $(appman_PRE) $(driverman_PRE) $(fileman_PRE)
640
 CLEANFILES = $(appman_DATA) $(driverman_DATA) $(fileman_DATA)
641
 SUFFIXES = .$(APP_MAN_SUFFIX) .$(DRIVER_MAN_SUFFIX) .$(FILE_MAN_SUFFIX) .man
642
-appman_PRE = cvt.man gtf.man
643
+appman_PRE = gtf.man
644
 all: all-am
645
 
646
 .SUFFIXES:
647
--- hw/xwayland/Makefile.in.orig	2020-08-25 15:40:08 UTC
648
+++ hw/xwayland/Makefile.in
649
@@ -107,7 +107,8 @@ bin_PROGRAMS = Xwayland$(EXEEXT)
650
 @GLAMOR_EGL_FALSE@	$(top_builddir)/glx/libglxvnd.la \
651
 @GLAMOR_EGL_FALSE@	$(am__DEPENDENCIES_1) \
652
 @GLAMOR_EGL_FALSE@	$(top_builddir)/Xext/libXvidmode.la \
653
-@GLAMOR_EGL_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2)
654
+@GLAMOR_EGL_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
655
+@GLAMOR_EGL_FALSE@	$(am__DEPENDENCIES_2)
656
 @XWAYLAND_EGLSTREAM_TRUE@am__append_6 = \
657
 @XWAYLAND_EGLSTREAM_TRUE@	wayland-eglstream-client-protocol.h			\
658
 @XWAYLAND_EGLSTREAM_TRUE@	wayland-eglstream-protocol.c				\
659
@@ -397,6 +398,8 @@ LIBSHA1_LIBS = @LIBSHA1_LIBS@
660
 LIBTOOL = @LIBTOOL@
661
 LIBUNWIND_CFLAGS = @LIBUNWIND_CFLAGS@
662
 LIBUNWIND_LIBS = @LIBUNWIND_LIBS@
663
+LIBXCVT_CFLAGS = @LIBXCVT_CFLAGS@
664
+LIBXCVT_LIBS = @LIBXCVT_LIBS@
665
 LIB_MAN_DIR = @LIB_MAN_DIR@
666
 LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
667
 LIPO = @LIPO@
668
@@ -631,7 +634,8 @@ Xwayland_CFLAGS = \
669
 	$(XWAYLANDMODULES_CFLAGS)		\
670
 	$(DIX_CFLAGS)				\
671
 	$(GLAMOR_CFLAGS)			\
672
-	$(GBM_CFLAGS)
673
+	$(GBM_CFLAGS)				\
674
+	$(LIBXCVT_CFLAGS)
675
 
676
 Xwayland_SOURCES = xwayland.c xwayland-input.c xwayland-cursor.c \
677
 	xwayland-shm.c xwayland-output.c xwayland-cvt.c \
678
@@ -641,7 +645,7 @@ Xwayland_SOURCES = xwayland.c xwayland-input.c xwaylan
679
 Xwayland_LDADD = $(glamor_lib) $(XWAYLAND_LIBS) \
680
 	$(top_builddir)/glx/libglxvnd.la $(XWAYLAND_SYS_LIBS) \
681
 	$(top_builddir)/Xext/libXvidmode.la $(XSERVER_SYS_LIBS) \
682
-	$(am__append_5)
683
+	$(LIBXCVT_LIBS) $(am__append_5)
684
 Xwayland_LDFLAGS = $(LD_EXPORT_SYMBOLS_FLAG)
685
 Xwayland_built_sources = $(am__append_4) \
686
 	relative-pointer-unstable-v1-client-protocol.h \
687
--- hw/xwayland/xwayland-cvt.c.orig	2020-08-25 15:39:55 UTC
688
+++ hw/xwayland/xwayland-cvt.c
689
@@ -1,8 +1,6 @@
690
-/* Copied from hw/xfree86/modes/xf86cvt.c into xwayland DDX and
691
- * changed to generate an RRMode */
692
-
693
 /*
694
  * Copyright 2005-2006 Luc Verhaegen.
695
+ * Copyright © 2021 Red Hat, Inc.
696
  *
697
  * Permission is hereby granted, free of charge, to any person obtaining a
698
  * copy of this software and associated documentation files (the "Software"),
699
@@ -23,12 +21,6 @@
700
  * OTHER DEALINGS IN THE SOFTWARE.
701
  */
702
 
703
-/*
704
- * The reason for having this function in a file of its own is
705
- * so that ../utils/cvt/cvt can link to it, and that xf86CVTMode
706
- * code is shared directly.
707
- */
708
-
709
 #ifdef HAVE_DIX_CONFIG_H
710
 #include <dix-config.h>
711
 #endif
712
@@ -37,271 +29,32 @@
713
 #include <randrstr.h>
714
 #include "xwayland.h"
715
 
716
-/*
717
- * Generate a CVT standard mode from HDisplay, VDisplay and VRefresh.
718
- *
719
- * These calculations are stolen from the CVT calculation spreadsheet written
720
- * by Graham Loveridge. He seems to be claiming no copyright and there seems to
721
- * be no license attached to this. He apparently just wants to see his name
722
- * mentioned.
723
- *
724
- * This file can be found at http://www.vesa.org/Public/CVT/CVTd6r1.xls
725
- *
726
- * Comments and structure corresponds to the comments and structure of the xls.
727
- * This should ease importing of future changes to the standard (not very
728
- * likely though).
729
- *
730
- * About margins; i'm sure that they are to be the bit between HDisplay and
731
- * HBlankStart, HBlankEnd and HTotal, VDisplay and VBlankStart, VBlankEnd and
732
- * VTotal, where the overscan colour is shown. FB seems to call _all_ blanking
733
- * outside sync "margin" for some reason. Since we prefer seeing proper
734
- * blanking instead of the overscan colour, and since the Crtc* values will
735
- * probably get altered after us, we will disable margins altogether. With
736
- * these calculations, Margins will plainly expand H/VDisplay, and we don't
737
- * want that. -- libv
738
- *
739
- */
740
+#include <libxcvt/libxcvt.h>
741
+
742
 RRModePtr
743
-xwayland_cvt(int HDisplay, int VDisplay, float VRefresh, Bool Reduced,
744
-             Bool Interlaced)
745
+xwayland_cvt(int hdisplay, int vdisplay, float vrefresh, Bool reduced,
746
+             Bool interlaced)
747
 {
748
-    /* 1) top/bottom margin size (% of height) - default: 1.8 */
749
-#define CVT_MARGIN_PERCENTAGE 1.8
750
-
751
-    /* 2) character cell horizontal granularity (pixels) - default 8 */
752
-#define CVT_H_GRANULARITY 8
753
-
754
-    /* 4) Minimum vertical porch (lines) - default 3 */
755
-#define CVT_MIN_V_PORCH 3
756
-
757
-    /* 4) Minimum number of vertical back porch lines - default 6 */
758
-#define CVT_MIN_V_BPORCH 6
759
-
760
-    /* Pixel Clock step (kHz) */
761
-#define CVT_CLOCK_STEP 250
762
-
763
-    Bool Margins = FALSE;
764
-    float VFieldRate, HPeriod;
765
-    int HDisplayRnd, HMargin;
766
-    int VDisplayRnd, VMargin, VSync;
767
-    float Interlace;            /* Please rename this */
768
+    struct libxcvt_mode_info *libxcvt_mode_info;
769
     char name[128];
770
     xRRModeInfo modeinfo;
771
 
772
+    libxcvt_mode_info =
773
+        libxcvt_gen_mode_info(hdisplay, vdisplay, vrefresh, reduced, interlaced);
774
+
775
     memset(&modeinfo, 0, sizeof modeinfo);
776
+    modeinfo.width      = libxcvt_mode_info->hdisplay;
777
+    modeinfo.height     = libxcvt_mode_info->vdisplay;
778
+    modeinfo.dotClock   = libxcvt_mode_info->dot_clock * 1000.0;
779
+    modeinfo.hSyncStart = libxcvt_mode_info->hsync_start;
780
+    modeinfo.hSyncEnd   = libxcvt_mode_info->hsync_end;
781
+    modeinfo.hTotal     = libxcvt_mode_info->htotal;
782
+    modeinfo.vSyncStart = libxcvt_mode_info->vsync_start;
783
+    modeinfo.vSyncEnd   = libxcvt_mode_info->vsync_end;
784
+    modeinfo.vTotal     = libxcvt_mode_info->vtotal;
785
+    modeinfo.modeFlags  = libxcvt_mode_info->mode_flags;
786
 
787
-    /* CVT default is 60.0Hz */
788
-    if (!VRefresh)
789
-        VRefresh = 60.0;
790
-
791
-    /* 1. Required field rate */
792
-    if (Interlaced)
793
-        VFieldRate = VRefresh * 2;
794
-    else
795
-        VFieldRate = VRefresh;
796
-
797
-    /* 2. Horizontal pixels */
798
-    HDisplayRnd = HDisplay - (HDisplay % CVT_H_GRANULARITY);
799
-
800
-    /* 3. Determine left and right borders */
801
-    if (Margins) {
802
-        /* right margin is actually exactly the same as left */
803
-        HMargin = (((float) HDisplayRnd) * CVT_MARGIN_PERCENTAGE / 100.0);
804
-        HMargin -= HMargin % CVT_H_GRANULARITY;
805
-    }
806
-    else
807
-        HMargin = 0;
808
-
809
-    /* 4. Find total active pixels */
810
-    modeinfo.width = HDisplayRnd + 2 * HMargin;
811
-
812
-    /* 5. Find number of lines per field */
813
-    if (Interlaced)
814
-        VDisplayRnd = VDisplay / 2;
815
-    else
816
-        VDisplayRnd = VDisplay;
817
-
818
-    /* 6. Find top and bottom margins */
819
-    /* nope. */
820
-    if (Margins)
821
-        /* top and bottom margins are equal again. */
822
-        VMargin = (((float) VDisplayRnd) * CVT_MARGIN_PERCENTAGE / 100.0);
823
-    else
824
-        VMargin = 0;
825
-
826
-    modeinfo.height = VDisplay + 2 * VMargin;
827
-
828
-    /* 7. Interlace */
829
-    if (Interlaced)
830
-        Interlace = 0.5;
831
-    else
832
-        Interlace = 0.0;
833
-
834
-    /* Determine VSync Width from aspect ratio */
835
-    if (!(VDisplay % 3) && ((VDisplay * 4 / 3) == HDisplay))
836
-        VSync = 4;
837
-    else if (!(VDisplay % 9) && ((VDisplay * 16 / 9) == HDisplay))
838
-        VSync = 5;
839
-    else if (!(VDisplay % 10) && ((VDisplay * 16 / 10) == HDisplay))
840
-        VSync = 6;
841
-    else if (!(VDisplay % 4) && ((VDisplay * 5 / 4) == HDisplay))
842
-        VSync = 7;
843
-    else if (!(VDisplay % 9) && ((VDisplay * 15 / 9) == HDisplay))
844
-        VSync = 7;
845
-    else                        /* Custom */
846
-        VSync = 10;
847
-
848
-    if (!Reduced) {             /* simplified GTF calculation */
849
-
850
-        /* 4) Minimum time of vertical sync + back porch interval (µs)
851
-         * default 550.0 */
852
-#define CVT_MIN_VSYNC_BP 550.0
853
-
854
-        /* 3) Nominal HSync width (% of line period) - default 8 */
855
-#define CVT_HSYNC_PERCENTAGE 8
856
-
857
-        float HBlankPercentage;
858
-        int VSyncAndBackPorch, VBackPorch;
859
-        int HBlank;
860
-
861
-        /* 8. Estimated Horizontal period */
862
-        HPeriod = ((float) (1000000.0 / VFieldRate - CVT_MIN_VSYNC_BP)) /
863
-            (VDisplayRnd + 2 * VMargin + CVT_MIN_V_PORCH + Interlace);
864
-
865
-        /* 9. Find number of lines in sync + backporch */
866
-        if (((int) (CVT_MIN_VSYNC_BP / HPeriod) + 1) <
867
-            (VSync + CVT_MIN_V_PORCH))
868
-            VSyncAndBackPorch = VSync + CVT_MIN_V_PORCH;
869
-        else
870
-            VSyncAndBackPorch = (int) (CVT_MIN_VSYNC_BP / HPeriod) + 1;
871
-
872
-        /* 10. Find number of lines in back porch */
873
-        VBackPorch = VSyncAndBackPorch - VSync;
874
-        (void) VBackPorch;
875
-
876
-        /* 11. Find total number of lines in vertical field */
877
-        modeinfo.vTotal =
878
-            VDisplayRnd + 2 * VMargin + VSyncAndBackPorch + Interlace +
879
-            CVT_MIN_V_PORCH;
880
-
881
-        /* 5) Definition of Horizontal blanking time limitation */
882
-        /* Gradient (%/kHz) - default 600 */
883
-#define CVT_M_FACTOR 600
884
-
885
-        /* Offset (%) - default 40 */
886
-#define CVT_C_FACTOR 40
887
-
888
-        /* Blanking time scaling factor - default 128 */
889
-#define CVT_K_FACTOR 128
890
-
891
-        /* Scaling factor weighting - default 20 */
892
-#define CVT_J_FACTOR 20
893
-
894
-#define CVT_M_PRIME CVT_M_FACTOR * CVT_K_FACTOR / 256
895
-#define CVT_C_PRIME (CVT_C_FACTOR - CVT_J_FACTOR) * CVT_K_FACTOR / 256 + \
896
-        CVT_J_FACTOR
897
-
898
-        /* 12. Find ideal blanking duty cycle from formula */
899
-        HBlankPercentage = CVT_C_PRIME - CVT_M_PRIME * HPeriod / 1000.0;
900
-
901
-        /* 13. Blanking time */
902
-        if (HBlankPercentage < 20)
903
-            HBlankPercentage = 20;
904
-
905
-        HBlank = modeinfo.width * HBlankPercentage / (100.0 - HBlankPercentage);
906
-        HBlank -= HBlank % (2 * CVT_H_GRANULARITY);
907
-
908
-        /* 14. Find total number of pixels in a line. */
909
-        modeinfo.hTotal = modeinfo.width + HBlank;
910
-
911
-        /* Fill in HSync values */
912
-        modeinfo.hSyncEnd = modeinfo.width + HBlank / 2;
913
-
914
-        modeinfo.hSyncStart = modeinfo.hSyncEnd -
915
-            (modeinfo.hTotal * CVT_HSYNC_PERCENTAGE) / 100;
916
-        modeinfo.hSyncStart += CVT_H_GRANULARITY -
917
-            modeinfo.hSyncStart % CVT_H_GRANULARITY;
918
-
919
-        /* Fill in VSync values */
920
-        modeinfo.vSyncStart = modeinfo.height + CVT_MIN_V_PORCH;
921
-        modeinfo.vSyncEnd = modeinfo.vSyncStart + VSync;
922
-
923
-    }
924
-    else {                      /* Reduced blanking */
925
-        /* Minimum vertical blanking interval time (µs) - default 460 */
926
-#define CVT_RB_MIN_VBLANK 460.0
927
-
928
-        /* Fixed number of clocks for horizontal sync */
929
-#define CVT_RB_H_SYNC 32.0
930
-
931
-        /* Fixed number of clocks for horizontal blanking */
932
-#define CVT_RB_H_BLANK 160.0
933
-
934
-        /* Fixed number of lines for vertical front porch - default 3 */
935
-#define CVT_RB_VFPORCH 3
936
-
937
-        int VBILines;
938
-
939
-        /* 8. Estimate Horizontal period. */
940
-        HPeriod = ((float) (1000000.0 / VFieldRate - CVT_RB_MIN_VBLANK)) /
941
-            (VDisplayRnd + 2 * VMargin);
942
-
943
-        /* 9. Find number of lines in vertical blanking */
944
-        VBILines = ((float) CVT_RB_MIN_VBLANK) / HPeriod + 1;
945
-
946
-        /* 10. Check if vertical blanking is sufficient */
947
-        if (VBILines < (CVT_RB_VFPORCH + VSync + CVT_MIN_V_BPORCH))
948
-            VBILines = CVT_RB_VFPORCH + VSync + CVT_MIN_V_BPORCH;
949
-
950
-        /* 11. Find total number of lines in vertical field */
951
-        modeinfo.vTotal = VDisplayRnd + 2 * VMargin + Interlace + VBILines;
952
-
953
-        /* 12. Find total number of pixels in a line */
954
-        modeinfo.hTotal = modeinfo.width + CVT_RB_H_BLANK;
955
-
956
-        /* Fill in HSync values */
957
-        modeinfo.hSyncEnd = modeinfo.width + CVT_RB_H_BLANK / 2;
958
-        modeinfo.hSyncStart = modeinfo.hSyncEnd - CVT_RB_H_SYNC;
959
-
960
-        /* Fill in VSync values */
961
-        modeinfo.vSyncStart = modeinfo.height + CVT_RB_VFPORCH;
962
-        modeinfo.vSyncEnd = modeinfo.vSyncStart + VSync;
963
-    }
964
-
965
-    /* 15/13. Find pixel clock frequency (kHz for xf86) */
966
-    modeinfo.dotClock = modeinfo.hTotal * 1000.0 / HPeriod;
967
-    modeinfo.dotClock -= modeinfo.dotClock % CVT_CLOCK_STEP;
968
-    modeinfo.dotClock *= 1000.0;
969
-#if 0
970
-    /* 16/14. Find actual Horizontal Frequency (kHz) */
971
-    modeinfo.hSync = ((float) modeinfo.dotClock) / ((float) modeinfo.hTotal);
972
-#endif
973
-
974
-#if 0
975
-    /* 17/15. Find actual Field rate */
976
-    modeinfo.vRefresh = (1000.0 * ((float) modeinfo.dotClock)) /
977
-        ((float) (modeinfo.hTotal * modeinfo.vTotal));
978
-#endif
979
-
980
-    /* 18/16. Find actual vertical frame frequency */
981
-    /* ignore - just set the mode flag for interlaced */
982
-    if (Interlaced)
983
-        modeinfo.vTotal *= 2;
984
-
985
-    if (Reduced)
986
-        modeinfo.modeFlags |= RR_HSyncPositive | RR_VSyncNegative;
987
-    else
988
-        modeinfo.modeFlags |= RR_HSyncNegative | RR_VSyncPositive;
989
-
990
-    if (Interlaced)
991
-        modeinfo.modeFlags |= RR_Interlace;
992
-
993
-    /* FWXGA hack adapted from hw/xfree86/modes/xf86EdidModes.c, because you can't say 1366 */
994
-    if (HDisplay == 1366 && VDisplay == 768) {
995
-         modeinfo.width = 1366;
996
-         modeinfo.hSyncStart--;
997
-         modeinfo.hSyncEnd--;
998
-    }
999
+    free(libxcvt_mode_info);
1000
 
1001
     snprintf(name, sizeof name, "%dx%d",
1002
              modeinfo.width, modeinfo.height);
1003
--- meson.build.orig	2020-08-25 15:39:55 UTC
1004
+++ meson.build
1005
@@ -162,6 +162,7 @@ if (host_machine.system() != 'darwin' and
1006
     endif
1007
 endif
1008
 xorgsdkdir = join_paths(get_option('prefix'), get_option('includedir'), 'xorg')
1009
+libxcvt_dep = dependency('libxcvt', required: build_xorg)
1010
 
1011
 build_xwayland = false
1012
 if (host_machine.system() != 'darwin' and
1013
@@ -172,6 +173,7 @@ if (host_machine.system() != 'darwin' and
1014
         xwayland_dep = [
1015
             dependency('wayland-client', version: '>= 1.3.0', required: xwayland_required),
1016
             dependency('wayland-protocols', version: '>= 1.10', required: xwayland_required),
1017
+            dependency('libxcvt', required: xwayland_required),
1018
             dependency('libdrm', version: '>= 2.4.89', required: xwayland_required),
1019
             dependency('epoxy', required: xwayland_required),
1020
         ]
1021
--- test/Makefile.in.orig	2020-08-25 15:40:09 UTC
1022
+++ test/Makefile.in
1023
@@ -157,7 +157,8 @@ host_triplet = @host@
1024
 @ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@            $(top_builddir)/hw/xfree86/xkb/libxorgxkb.la \
1025
 @ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@            $(top_builddir)/Xext/libXvidmode.la \
1026
 @ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@            $(XSERVER_LIBS) \
1027
-@ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@            $(XORG_LIBS)
1028
+@ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@            $(XORG_LIBS) \
1029
+@ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@            $(LIBXCVT_LIBS)
1030
 
1031
 @ENABLE_UNIT_TESTS_TRUE@@SPECIAL_DTRACE_OBJECTS_FALSE@@XORG_TRUE@am__append_11 = $(top_builddir)/os/libos.la
1032
 @ENABLE_UNIT_TESTS_TRUE@@GLX_TRUE@@XORG_TRUE@am__append_12 = $(top_builddir)/glx/libglxvnd.la
1033
@@ -252,6 +253,7 @@ am__DEPENDENCIES_1 =
1034
 @ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@	$(top_builddir)/hw/xfree86/xkb/libxorgxkb.la \
1035
 @ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@	$(top_builddir)/Xext/libXvidmode.la \
1036
 @ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@	$(am__DEPENDENCIES_1) \
1037
+@ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@	$(am__DEPENDENCIES_1) \
1038
 @ENABLE_UNIT_TESTS_TRUE@@XORG_TRUE@	$(am__DEPENDENCIES_1)
1039
 @ENABLE_UNIT_TESTS_TRUE@tests_DEPENDENCIES = $(am__DEPENDENCIES_2) \
1040
 @ENABLE_UNIT_TESTS_TRUE@	$(am__append_11) $(am__append_12) \
1041
@@ -724,6 +726,8 @@ LIBSHA1_LIBS = @LIBSHA1_LIBS@
1042
 LIBTOOL = @LIBTOOL@
1043
 LIBUNWIND_CFLAGS = @LIBUNWIND_CFLAGS@
1044
 LIBUNWIND_LIBS = @LIBUNWIND_LIBS@
1045
+LIBXCVT_CFLAGS = @LIBXCVT_CFLAGS@
1046
+LIBXCVT_LIBS = @LIBXCVT_LIBS@
1047
 LIB_MAN_DIR = @LIB_MAN_DIR@
1048
 LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
1049
 LIPO = @LIPO@
1050
@@ -952,7 +956,7 @@ top_build_prefix = @top_build_prefix@
1051
 top_builddir = @top_builddir@
1052
 top_srcdir = @top_srcdir@
1053
 @ENABLE_UNIT_TESTS_TRUE@SUBDIRS = .
1054
-@ENABLE_UNIT_TESTS_TRUE@AM_CFLAGS = $(DIX_CFLAGS) @XORG_CFLAGS@
1055
+@ENABLE_UNIT_TESTS_TRUE@AM_CFLAGS = $(DIX_CFLAGS) $(LIBXCVT_CFLAGS) @XORG_CFLAGS@
1056
 @ENABLE_UNIT_TESTS_TRUE@AM_CPPFLAGS = $(XORG_INCS) $(am__append_1)
1057
 @ENABLE_UNIT_TESTS_TRUE@tests_CPPFLAGS = $(am__append_2) \
1058
 @ENABLE_UNIT_TESTS_TRUE@	$(am__append_5) $(am__append_6)
(-)b/x11-servers/xorg-server/pkg-plist (-2 lines)
Lines 1-7 Link Here
1
bin/X
1
bin/X
2
bin/Xorg
2
bin/Xorg
3
%%SUID%%@(,,4555) bin/Xorg.wrap
3
%%SUID%%@(,,4555) bin/Xorg.wrap
4
bin/cvt
5
bin/gtf
4
bin/gtf
6
include/xorg/BT.h
5
include/xorg/BT.h
7
include/xorg/IBM.h
6
include/xorg/IBM.h
Lines 182-188 libdata/pkgconfig/xorg-server.pc Link Here
182
man/man1/Xorg.1.gz
181
man/man1/Xorg.1.gz
183
%%SUID%%man/man1/Xorg.wrap.1.gz
182
%%SUID%%man/man1/Xorg.wrap.1.gz
184
man/man1/Xserver.1.gz
183
man/man1/Xserver.1.gz
185
man/man1/cvt.1.gz
186
man/man1/gtf.1.gz
184
man/man1/gtf.1.gz
187
man/man4/exa.4.gz
185
man/man4/exa.4.gz
188
man/man4/fbdevhw.4.gz
186
man/man4/fbdevhw.4.gz
(-)b/x11-servers/xwayland-devel/Makefile (-1 / +7 lines)
Lines 4-9 PORTNAME= xwayland Link Here
4
DISTVERSIONPREFIX=	xorg-server-
4
DISTVERSIONPREFIX=	xorg-server-
5
DISTVERSION=	1.20.0-877
5
DISTVERSION=	1.20.0-877
6
DISTVERSIONSUFFIX=	-g1b7dca27e
6
DISTVERSIONSUFFIX=	-g1b7dca27e
7
PORTREVISION=	1
7
CATEGORIES=	x11-servers
8
CATEGORIES=	x11-servers
8
PKGNAMESUFFIX=	-devel
9
PKGNAMESUFFIX=	-devel
9
10
Lines 11-16 PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ Link Here
11
PATCHFILES+=	231720f8b212.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/432
12
PATCHFILES+=	231720f8b212.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/432
12
PATCHFILES+=	48a7bfeb4687.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/432
13
PATCHFILES+=	48a7bfeb4687.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/432
13
PATCHFILES+=	2b3c4983f937.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/432
14
PATCHFILES+=	2b3c4983f937.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/432
15
PATCHFILES+=	1194dae3551c.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/637
16
PATCHFILES+=	7a135f8b559e.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/637
17
PATCHFILES+=	e72591ff6740.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/637
18
PATCHFILES+=	94bd7286aa3e.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/637
14
19
15
MAINTAINER=	jbeich@FreeBSD.org
20
MAINTAINER=	jbeich@FreeBSD.org
16
COMMENT=	X11 server as Wayland client (development snapshot)
21
COMMENT=	X11 server as Wayland client (development snapshot)
Lines 23-29 BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto \ Link Here
23
		wayland-protocols>=1.18:graphics/wayland-protocols
28
		wayland-protocols>=1.18:graphics/wayland-protocols
24
LIB_DEPENDS=	libdrm.so:graphics/libdrm \
29
LIB_DEPENDS=	libdrm.so:graphics/libdrm \
25
		libepoxy.so:graphics/libepoxy \
30
		libepoxy.so:graphics/libepoxy \
26
		libwayland-client.so:graphics/wayland
31
		libwayland-client.so:graphics/wayland \
32
		libxcvt.so:x11/libxcvt
27
RUN_DEPENDS=	xkbcomp:x11/xkbcomp \
33
RUN_DEPENDS=	xkbcomp:x11/xkbcomp \
28
		xkeyboard-config>0:x11/xkeyboard-config
34
		xkeyboard-config>0:x11/xkeyboard-config
29
35
(-)b/x11-servers/xwayland-devel/distinfo (+8 lines)
Lines 7-9 SHA256 (48a7bfeb4687.patch) = ae284622227b317085360f61553bae7fc21a57f4d2b6d4133a Link Here
7
SIZE (48a7bfeb4687.patch) = 17542
7
SIZE (48a7bfeb4687.patch) = 17542
8
SHA256 (2b3c4983f937.patch) = 9927abf281cff8d44694a883bd60e90337e9d635a3714de1a51f91c4f112c46e
8
SHA256 (2b3c4983f937.patch) = 9927abf281cff8d44694a883bd60e90337e9d635a3714de1a51f91c4f112c46e
9
SIZE (2b3c4983f937.patch) = 2567
9
SIZE (2b3c4983f937.patch) = 2567
10
SHA256 (1194dae3551c.patch) = 512cdfd156584d2b33fbc356c962faa2a3e451406cdd8df940cd6dd3e2c720d2
11
SIZE (1194dae3551c.patch) = 3003
12
SHA256 (7a135f8b559e.patch) = d13784ad5c397930df03d88a1648212e144eeb9bc502d1cc98cbc66067a73ac0
13
SIZE (7a135f8b559e.patch) = 12505
14
SHA256 (e72591ff6740.patch) = 6d57ace6c46243c5f1676505fa549e1410dd104c638925288b187ba8f00ff249
15
SIZE (e72591ff6740.patch) = 13783
16
SHA256 (94bd7286aa3e.patch) = 70198a446056fa78dbf89c5edea96e49f7601c6acfff8a2c1314054b1240471c
17
SIZE (94bd7286aa3e.patch) = 15227
(-)b/x11-servers/xwayland/Makefile (-1 / +1 lines)
Lines 1-7 Link Here
1
# $FreeBSD$
1
# $FreeBSD$
2
2
3
PORTNAME=	xwayland
3
PORTNAME=	xwayland
4
PORTREVISION=	2
4
PORTREVISION=	3
5
5
6
COMMENT=	X Clients under Wayland
6
COMMENT=	X Clients under Wayland
7
7
(-)b/x11/libxcvt/Makefile (+1 lines)
Lines 2-7 Link Here
2
2
3
PORTNAME=	libxcvt
3
PORTNAME=	libxcvt
4
PORTVERSION=	s20210325
4
PORTVERSION=	s20210325
5
PORTREVISION=	1
5
CATEGORIES=	x11
6
CATEGORIES=	x11
6
7
7
MAINTAINER=	jbeich@FreeBSD.org
8
MAINTAINER=	jbeich@FreeBSD.org
(-)b/x11/libxcvt/pkg-plist (-2 / +2 lines)
Lines 1-6 Link Here
1
@comment bin/cvt
1
bin/cvt
2
include/libxcvt/libxcvt.h
2
include/libxcvt/libxcvt.h
3
include/libxcvt/libxcvt_mode.h
3
include/libxcvt/libxcvt_mode.h
4
lib/libxcvt.so
4
lib/libxcvt.so
5
libdata/pkgconfig/libxcvt.pc
5
libdata/pkgconfig/libxcvt.pc
6
@comment man/man1/cvt.1.gz
6
man/man1/cvt.1.gz

Return to bug 254557