Compare commits

...

116 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
3c6deb7df5 gitlab CI: add libdrm with freedreno, nouveau, omap
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-07 17:14:19 +02:00
Enrico Weigelt, metux IT consult
81d7edd384 gitlab CI: add debian-i386 build
Add CI jobs for building on debian-i386 (just had amd64 yet), so we can
also test 32bit targets.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-07 10:27:46 +02:00
Enrico Weigelt, metux IT consult
6bdea80acc gitlab CI: add pipeline for building against various Xserver releases
Adding a gitlab pipeline building this driver against Xserver major releases
since 1.18, including current master branch, on FreeBSD and Debian.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-06 17:28:02 +02:00
Enrico Weigelt, metux IT consult
0f89fbffcb gitlab CI: common scripts for driver builds
Adding a bunch of common scripts for building xorg drivers on different
platforms (for now Debian and FreeBSD) against different server versions.

Also designed to be executed locally (eg. within a VM), so one doesn't
always have to employ f.d.o gitlab.

For now, these are synced manually across various driver repos, until we've
found a viable solution for a central place.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-06 17:27:45 +02:00
Enrico Weigelt, metux IT consult
c8d9f3be7e drop compat with ancient xservers
We're relying on >= 1.18 now, so no compat with older ones needed.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/driver/xf86-video-fbdev/-/merge_requests/8>
2024-05-28 14:38:46 +02:00
Alan Coopersmith
ae894fe112 Raise minimum supported Xserver version to 1.18 (ABI_VIDEODRV_VERSION 20.0)
Already effectively required by use of XNFcallocarray() introduced in
xorg/xserver@b96dc999 - xserver-1.18.0, released in Nov. 2015.

Allows dropping remnants of code for ISA and pre-pciaccess X servers

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/driver/xf86-video-fbdev/-/merge_requests/7>
2024-05-14 11:16:37 -07:00
Enrico Weigelt, metux IT consult
dc48c20ceb use XNFcallocarray() instead of xnfcalloc macro
xnfcalloc is just an alias for XNFcallocarray() that doesn't seem to serve
any practical purpose, so it can go away once all drivers stopped using it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/driver/xf86-video-fbdev/-/merge_requests/5>
2024-05-08 15:46:23 +02:00
Alan Coopersmith
7bccdf4373 Fix warning: unused variable ‘scrnIdx’ [-Wunused-variable]
fbdev.c: In function ‘FBDevDGASetMode’:
fbdev.c:1145:9: warning: unused variable ‘scrnIdx’ [-Wunused-variable]
 1145 |     int scrnIdx = pScrn->pScreen->myNum;
      |         ^~~~~~~

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2024-01-15 10:08:31 -08:00
Alan Coopersmith
112b6c1153 Fix warning: statement with no effect [-Wunused-value]
fbdev.c: In function ‘FBDevProbe’:
fbdev.c:355:21: warning: statement with no effect [-Wunused-value]
  355 |                     0;
      |                     ^

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2024-01-15 10:08:23 -08:00
Alan Coopersmith
89728ce1d6 Add X.Org's standard C warning flags to AM_CFLAGS
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2024-01-07 09:19:53 -08:00
Alan Coopersmith
554d6fda21 configure: Use LT_INIT from libtool 2 instead of deprecated AC_PROG_LIBTOOL
AC_PROG_LIBTOOL was replaced by LT_INIT in libtool 2 in 2008,
so it's time to rely on it.

Clears autoconf warnings:

configure.ac:44: warning: The macro 'AC_PROG_LIBTOOL' is obsolete.
configure.ac:44: You should run autoupdate.
aclocal.m4:3515: AC_PROG_LIBTOOL is expanded from...
configure.ac:44: the top level

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2024-01-07 09:17:53 -08:00
Alan Coopersmith
7f445dbd5a gitlab CI: ensure libtool is installed in build container
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-10-01 13:10:19 -07:00
Alan Coopersmith
a8aa1c97f9 gitlab CI: stop requiring Signed-off-by in commits
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-02-09 12:06:56 -08:00
Alan Coopersmith
6ef9644156 gitlab CI: add a basic build test
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-01-22 10:26:32 -08:00
Alan Coopersmith
cf1875209c Fix spelling/wording issues
Found by using:
    codespell --builtin clear,rare,usage,informal,code,names

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-01-22 10:25:44 -08:00
Alan Coopersmith
2850cd86d1 Build xz tarballs instead of bzip2
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-01-22 10:25:12 -08:00
Tuomo Rinne
4730f13b92 Fix build error when building with xserver built using meson 2019-01-14 22:33:42 +00:00
Alan Coopersmith
4865f92f74 Update configure.ac bug URL for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-11-25 13:57:38 -08:00
Alan Coopersmith
f676c9def1 Update README for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-11-18 12:35:19 -08:00
Adam Jackson
82aa13d013 fbdev 0.5.0
Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-05-30 12:31:25 -04:00
Adam Jackson
67525c485f Update for 1.20 ABI
Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-05-30 12:31:25 -04:00
Alan Coopersmith
9af7f81534 Use #ifdef instead of #if to avoid build error
fbdev.c:491:21: error: #if with no expression
 #if HAVE_SHADOW_3224
                     ^

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-03-05 11:42:22 -05:00
Adam Jackson
e0bce0d017 Use shadowUpdate32to24 at 24bpp
Signed-off-by: Adam Jackson <ajax@redhat.com>
2017-02-16 12:22:09 -05:00
Adam Jackson
3cf9923119 Remove dead pix24bpp variable
Signed-off-by: Adam Jackson <ajax@redhat.com>
2017-02-16 12:22:09 -05:00
Mihail Konev
8c03e3474e autogen: add default patch prefix
Signed-off-by: Mihail Konev <k.mvc@ya.ru>
2017-01-26 14:00:22 +10:00
Emil Velikov
39f668420f autogen.sh: use quoted string variables
Place quotes around the $srcdir, $ORIGDIR and $0 variables to prevent
fall-outs, when they contain space.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-01-26 11:26:28 +10:00
Peter Hutterer
303f902c76 autogen.sh: use exec instead of waiting for configure to finish
Syncs the invocation of configure with the one from the server.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-01-26 11:23:46 +10:00
Alan Coopersmith
f627319599 autogen.sh: Honor NOCONFIGURE=1
See http://people.gnome.org/~walters/docs/build-api.txt

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2017-01-26 11:16:37 +10:00
Alan Coopersmith
22f288b4e4 configure: Drop AM_MAINTAINER_MODE
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2017-01-26 11:16:37 +10:00
Adam Jackson
2c5eba8574 Fix shadow fb allocation size (v2)
->bitsPerPixel is rather obviously eight times too large.

v2: Use ->displayWidth - the pitch - not ->virtualX (Keith Packard)

Signed-off-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2017-01-05 11:15:27 -05:00
Pascal Terjan
66e7909bfe Initialize pci_dev
Else it is read before initialization if XSERVER_LIBPCIACCESS is not
defined or location.type is not BUS_PCI.

Noticed when I got a segfault where it was 0x1 while doing some tests on
arm.

Signed-off-by: Pascal Terjan <pterjan@google.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2016-01-27 11:33:24 -05:00
Adam Jackson
ae0aeffae6 Pass the pci device (if any) through to fbdevhw in probe and preinit
Signed-off-by: Adam Jackson <ajax@redhat.com>
2014-08-11 12:13:20 -04:00
Adam Jackson
2673e72706 Use own thunk functions instead of fbdevHW*Weak
I plan to remove the Weak functions from a future server.

Signed-off-by: Adam Jackson <ajax@redhat.com>
2014-05-21 09:49:56 -04:00
Adam Jackson
dd1cf1028c Default to 32bpp if the console is 8bpp (and we weren't told otherwise)
You can still override this on the command line or in the config file.
Without this we'll come up at 8bpp on matroxfb (and probably others),
which among other things breaks the default desktop since gnome-shell
wants GLX and GLX doesn't support pseudocolor anymore.

Signed-off-by: Adam Jackson <ajax@redhat.com>
2014-03-21 12:41:55 -04:00
Julien Cristau
679ed9a4e6 Bump to 0.4.4 2013-09-23 20:02:47 +02:00
Adam Jackson
ac293412a0 Remove mibstore.h
Signed-off-by: Adam Jackson <ajax@redhat.com>
2012-09-25 08:54:37 -04:00
Dave Airlie
2edaad4ab2 fbdev: bump to 0.4.3
Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-07-02 12:47:08 +01:00
Dave Airlie
8a65ca2fdc fbdev: port to new server API.
Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-05 11:29:31 +01:00
Dave Airlie
91e8b295f8 fbdev: convert to new screen conversion APIs.
Generated using util/modular/x-driver-screen-scrn-conv.sh

Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-05 11:21:08 +01:00
Dave Airlie
6e29cf8c29 fbdev: add compat-api + makefile 2012-06-05 11:21:03 +01:00
Paulo Zanoni
a87213930e Add MOD_CLASS_VIDEODRV to FBDevVersRec
fbdev seems to be the only video driver without MOD_CLASS_VIDEODRV

Signed-off-by: Paulo Zanoni <pzanoni@mandriva.com>
Reviewed-by: Jesse Adkins <jesserayadkins@gmail.com>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2010-12-17 13:09:24 +01:00
Cyril Brulebois
be003f2568 Perform XV initialization only if the server supports it.
Use XV from server's xorg-server.h to determine whether to perform XV
initialization.

Signed-off-by: Cyril Brulebois <kibi@debian.org>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2010-11-10 14:07:24 +01:00
Cyril Brulebois
20909cd806 Avoid unused variables when XSERVER_LIBPCIACCESS is defined.
Signed-off-by: Cyril Brulebois <kibi@debian.org>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2010-11-10 14:07:04 +01:00
Cyril Brulebois
90524a26d3 man: Stop mentioning server's -scanpci option.
It got removed in server's 9727db88d57089be6483104de435626cdbad883a
(long time ago).

Signed-off-by: Cyril Brulebois <kibi@debian.org>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2010-11-10 14:06:11 +01:00
Cyril Brulebois
0d45d8f3ad Convert x{re,c,}alloc and xfree.
Signed-off-by: Cyril Brulebois <kibi@debian.org>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2010-11-10 14:05:48 +01:00
Jesse Adkins
049cdddd14 Purge cvs tags.
Signed-off-by: Jesse Adkins <jesserayadkins@gmail.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2010-10-06 20:42:48 -07:00
Gaetan Nadon
d3a2fe1b76 config: add comments for main statements 2010-07-21 20:12:43 -04:00
Gaetan Nadon
f7e68d16dc config: replace deprecated use of AC_OUTPUT with AC_CONFIG_FILES
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-07-21 16:07:00 -04:00
Gaetan Nadon
0ddf357522 config: replace deprecated AC_HELP_STRING with AS_HELP_STRING
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-07-21 14:37:41 -04:00
Gaetan Nadon
55e0de6cb1 config: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-07-21 14:05:22 -04:00
Gaetan Nadon
a05560b1d3 config: complete AC_INIT m4 quoting
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-07-21 09:27:42 -04:00
Gaetan Nadon
8f7d8a7ba3 config: remove unrequired AC_SUBST([XORG_CFLAGS])
This macro is called by PKG_CHECK_MODULES

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-07-20 21:44:57 -04:00
Gaetan Nadon
9b3ef42fdd config: remove unrequired AC_HEADER_STDC
Autoconf says:
"This macro is obsolescent, as current systems have conforming
header files. New programs need not use this macro".

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-07-20 20:24:42 -04:00
Gaetan Nadon
b768d66b87 config: remove AC_PROG_CC as it overrides AC_PROG_C_C99
XORG_STRICT_OPTION from XORG_DEFAULT_OPTIONS calls
AC_PROG_C_C99. This sets gcc with -std=gnu99.
If AC_PROG_CC macro is called afterwards, it resets CC to gcc.

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-07-20 19:41:30 -04:00
Gaetan Nadon
fa588a1ddc config: update AC_PREREQ statement to 2.60
Unrelated to the previous patches, the new value simply reflects
the reality that the minimum level for autoconf to configure
all x.org modules is 2.60 dated June 2006.

ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-07-20 18:45:19 -04:00
Gaetan Nadon
6977b3490a config: upgrade to util-macros 1.8 for additional man page support
Use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS
The value of MAN_SUBST is the same for all X.Org packages.
2010-07-20 17:38:00 -04:00
Julien Cristau
7ec9d466e5 Bump to 0.4.2 2010-04-03 18:05:21 +02:00
Julien Cristau
b3220bf63e configure: require xorg-macros 1.4 for XORG_INSTALL
Signed-off-by: Julien Cristau <jcristau@debian.org>
2010-02-10 02:11:44 +01:00
Julien Cristau
a9df47d6d0 fbdev: add missing shadowRemove in CloseScreen()
Fixes crash in CloseScreen().

Signed-off-by: Julien Cristau <jcristau@debian.org>
Tested-by: Cyril Brulebois <kibi@debian.org>
2010-02-08 19:20:00 +01:00
Alan Coopersmith
a5b035414d Update Sun license notices to current X.Org standard form
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2010-01-15 15:44:54 -08:00
Gaetan Nadon
5ec41a8b2e configure.ac: remove unused sdkdir=$(pkg-config...) statement
The sdkdir variable isn't use, so remove the statement.

Acked-by: Dan Nicholson <dbn.lists@gmail.com>

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2009-12-30 15:13:00 -05:00
Adam Jackson
69f82077fd Remove afb support
Signed-off-by: Adam Jackson <ajax@redhat.com>
2009-12-14 13:40:32 -05:00
Gaetan Nadon
4e8a6ac78d Makefile.am: add ChangeLog and INSTALL on MAINTAINERCLEANFILES
Now that the INSTALL file is generated.
Allows running make maintainer-clean.
2009-11-23 09:25:05 -05:00
Gaetan Nadon
d868015c9c INSTALL, NEWS, README or AUTHORS files are missing/incorrect #24206
Automake 'foreign' option is specified in configure.ac.
Remove from Makefile.am
2009-10-28 14:41:41 -04:00
Gaetan Nadon
a9e65feebd INSTALL, NEWS, README or AUTHORS files are missing/incorrect #24206
Add missing INSTALL file. Use standard GNU file on building tarball
README may have been updated
Remove AUTHORS file as it is empty and no content available yet.
Remove NEWS file as it is empty and no content available yet.
2009-10-28 14:09:09 -04:00
Gaetan Nadon
7b583191fa Several driver modules do not have a ChangeLog target in Makefile.am #23814
The git generated ChangeLog replaces the hand written one.
Update configure.ac to xorg-macros level 1.3.
Use XORG_DEFAULT_OPTIONS which replaces four XORG_* macros
Update Makefile.am to add ChangeLog target if missing
Remove ChangeLog from EXTRA_DIST or *CLEAN variables
This is a pre-req for the INSTALL_CMD
2009-10-26 12:54:21 -04:00
Gaetan Nadon
6b5e30a2df .gitignore: use common defaults with custom section # 24239
Using common defaults will reduce errors and maintenance.
Only the very small or inexistent custom section need periodic maintenance
when the structure of the component changes. Do not edit defaults.
2009-10-22 12:34:16 -04:00
Dave Airlie
e233c12c97 fbdev: bump for release 0.4.1 2009-07-30 12:04:27 +10:00
Dave Airlie
dfe51de992 fbdev: change to using ABI version check 2009-07-28 15:22:40 +10:00
Dave Airlie
fe00991326 fbdev: update for resources/RAC API removal 2009-07-28 13:32:29 +10:00
Adam Jackson
16ea2bb46c Remove useless loader symbol lists. 2009-05-28 14:55:08 -04:00
Adam Jackson
c3434c8625 Allow building against a non-DGA server. 2009-03-04 10:09:47 -05:00
Alan Coopersmith
db33e337a8 Add README with pointers to mailing list, bugzilla & git repos 2009-01-30 20:38:47 -08:00
Alan Coopersmith
f9b88908fc Remove xorgconfig & xorgcfg from See Also list in man page 2009-01-09 16:27:44 -08:00
Adam Jackson
092f0f10cb Make ISA optional 2008-11-23 20:04:30 -05:00
Adam Jackson
73ff2d0cd7 fbdev 0.4.0 2008-03-19 13:51:44 -04:00
Matthias Hopf
6bae3476b0 Fixed leftover PCIACCESS -> XSERVER_LIBPCIACCESS. 2007-10-12 15:58:34 +02:00
Brice Goglin
a9a7763ce0 Replace a non-ascii char with the corresponding groff escape in fbdev.man 2007-09-12 01:49:33 +02:00
Ian Romanick
31707aeccd Add conditional support for pci-rework branch.
To build VESA driver for use with pci-rework Xserver, add --enable-pciacces
to the configure command line.  Otherwise, the "traditional" VESA driver will
be built.
2007-01-22 08:52:43 -08:00
Michel Dänzer
b17f9256d5 Only determine pitch after setting initial mode.
We were determining it from the mode which is current at X server startup,
which may have a completely different pitch.
2006-12-31 17:43:52 +01:00
Michel Dänzer
436a2c094a Bump to 0.3.1 for release. 2006-12-29 12:57:44 +01:00
Michel Dänzer
5b54cbd70e Use package version definitions from XORG_RELEASE_VERSION macros. 2006-12-29 12:57:23 +01:00
Michel Dänzer
b6fd370824 Don't prefer 24bpp for depth 24. 2006-12-29 12:29:31 +01:00
Michel Dänzer
43236f5bfc Fix shadow framebuffer, and by extension rotation.
Based on Adam Jackson's shadow framebuffer fixes in xf86-video-vesa.
2006-12-27 13:08:02 +01:00
Michel Dänzer
643573a51f Add missing argument to xf86DrvMsg(). 2006-12-27 13:08:02 +01:00
Michel Dänzer
b5b1b7d731 Update my e-mail address. 2006-12-27 13:08:01 +01:00
Michel Dänzer
abfc75fbcd Convert .cvsignore to .gitignore.
Add a couple of items while we're at it.
2006-12-27 13:08:01 +01:00
Adam Jackson
a12d1ce572 Make debug output a run-time option instead of compile-time. 2006-11-08 12:22:53 -05:00
Jeremy C. Reed
6ed2e61542 Replace stub file with real license.
"XFree86 code without an explicit copyright is covered by the
following copyright/license" ....

Discussed on xorg list.
2006-10-18 14:56:01 -05:00
Adam Jackson
24177f7218 Bump to 0.3.0 2006-05-19 19:17:46 +00:00
Kevin E Martin
c7b9e1a327 Fix ShadowFB support to work with recent miext/shadow changes from bug
#5460 (Kevin Martin), and apply fix for miext/shadow crasher
    https://bugs.freedesktop.org/show_bug.cgi?id=6940 (Kristian Hoegsberg).
2006-05-18 21:15:32 +00:00
Adam Jackson
fe1fa4c016 Unlibcwrap. Bump server version requirement. Bump to 0.2.0. 2006-04-07 19:02:07 +00:00
gravity
41a763816d Convert manpage to utf-8 2006-01-10 03:22:11 +00:00
Kevin E Martin
332464c43f Update package version for X11R7 release. 2005-12-21 02:30:00 +00:00
Adam Jackson
cf1b33cb4d Stub COPYING files 2005-12-19 16:25:53 +00:00
Kevin E Martin
35c09ae4c4 Update package version number for final X11R7 release candidate. 2005-12-15 00:24:17 +00:00
Kevin E Martin
2e4f3e6a0a Change *man_SOURCES ==> *man_PRE to fix autotools warnings. 2005-12-06 22:48:34 +00:00
Kevin E Martin
8521127ff1 Update package version number for X11R7 RC3 release. 2005-12-03 05:49:33 +00:00
Kevin E Martin
7a37e5db75 Remove extraneous AC_MSG_RESULT. 2005-12-02 02:16:08 +00:00
Adam Jackson
4635b198fb Only build dlloader modules by default. 2005-11-29 23:29:58 +00:00
Alan Coopersmith
91b40b9c63 Change *mandir targets to use new *_MAN_DIR variables set by xorg-macros.m4
update to fix bug #5167 (Linux prefers *.1x man pages in man1 subdir)
2005-11-28 22:04:09 +00:00
Eric Anholt
ff70627427 Add .cvsignores for drivers. 2005-11-21 10:49:12 +00:00
Kevin E Martin
d57ddc84c3 Update package version number for X11R7 RC2 release. 2005-11-09 21:15:15 +00:00
Kevin E Martin
493a1b8b11 Update pkgcheck depedencies to work with separate build roots. 2005-11-01 15:08:52 +00:00
Kevin E Martin
3f11faf88c Update package version number for RC1 release. 2005-10-19 02:48:02 +00:00
Alan Coopersmith
e87f2ee9b1 Use @DRIVER_MAN_SUFFIX@ instead of $(DRIVER_MAN_SUFFIX) in macro
substitutions to work better with BSD make
2005-10-18 00:01:53 +00:00
Adam Jackson
5f77732d9a More 1.7 braindamage: define EXTRA_DIST in terms of @DRIVER_NAME@ instead
of indirectly
2005-10-17 22:57:33 +00:00
Alan Coopersmith
52518e4511 Use sed & cpp to substitute variables in driver man pages 2005-10-17 00:09:02 +00:00
Daniel Stone
a2a75f4dba Numerous spelling and grammar fixes. (Branden Robinson, Debian #099n) 2005-08-26 06:32:45 +00:00
Daniel Stone
28171378a1 Update autogen.sh to one that does objdir != srcdir. 2005-08-18 09:03:46 +00:00
Kevin E Martin
f060ccc1f1 Various changes preparing packages for RC0:
- Verify and update package version numbers as needed
- Implement versioning scheme
- Change bug address to point to bugzilla bug entry form
- Disable loadable i18n in libX11 by default (use --enable-loadable-i18n to
    reenable it)
- Fix makedepend to use pkgconfig and pass distcheck
- Update build script to build macros first
- Update modular Xorg version
2005-07-29 21:22:43 +00:00
Søren Sandmann Pedersen
d0517a40a9 Build system for fbdev driver 2005-07-25 23:50:23 +00:00
Adam Jackson
44d4790006 Prep for modular builds by adding guarded #include "config.h" everywhere. 2005-07-11 02:29:47 +00:00
Adam Jackson
4d18c5309c Bug #3626: _X_EXPORT tags for video and input drivers. 2005-06-25 21:16:54 +00:00
Egbert Eich
82ab7895da Modifying X.Org Xserver DDX to allow to run X with ordinary user
permissions when no access to HW registers is required. For API changes
    which mostly involve the modifications to make the RRFunc (introduced
    with 6.8) more flexible please check Bugzilla #2407. NOTE: This patch
    applies changes to OS specific files for other OSes which I cannot
    test.
2005-01-28 16:12:59 +00:00
Markus Kuhn
077e3dbcf4 Encoding of numerous files changed to UTF-8 2004-12-04 00:43:05 +00:00
19 changed files with 1426 additions and 312 deletions

78
.gitignore vendored Normal file
View File

@@ -0,0 +1,78 @@
#
# X.Org module default exclusion patterns
# The next section if for module specific patterns
#
# Do not edit the following section
# GNU Build System (Autotools)
aclocal.m4
autom4te.cache/
autoscan.log
ChangeLog
compile
config.guess
config.h
config.h.in
config.log
config-ml.in
config.py
config.status
config.status.lineno
config.sub
configure
configure.scan
depcomp
.deps/
INSTALL
install-sh
.libs/
libtool
libtool.m4
ltmain.sh
lt~obsolete.m4
ltoptions.m4
ltsugar.m4
ltversion.m4
Makefile
Makefile.in
mdate-sh
missing
mkinstalldirs
*.pc
py-compile
stamp-h?
symlink-tree
texinfo.tex
ylwrap
# Do not edit the following section
# Edit Compile Debug Document Distribute
*~
*.[0-9]
*.[0-9]x
*.bak
*.bin
core
*.dll
*.exe
*-ISO*.bdf
*-JIS*.bdf
*-KOI8*.bdf
*.kld
*.ko
*.ko.cmd
*.lai
*.l[oa]
*.[oa]
*.obj
*.patch
*.so
*.pcf.gz
*.pdb
*.tar.bz2
*.tar.gz
#
# Add & Override patterns for xf86-video-fbdev
#
# Edit the following section as needed
# For example, !report.pc overrides *.pc. See 'man gitignore'
#

5
.gitlab-ci.yml Normal file
View File

@@ -0,0 +1,5 @@
variables:
FDO_UPSTREAM_REPO: 'xorg/driver/xf86-video-fbdev'
include:
- local: '.gitlab-ci/common/xorg-driver.yml'

View File

@@ -0,0 +1,20 @@
common CI stuff - supposed to be synced across all drivers
moving this to a dedicated CI component is left for a later exercise.
Some scripts can also be used locally, eg. in a VM:
Prepare the image:
.gitlab-ci/common/debian/image-install.sh
.gitlab-ci/common/freebsd/image-install.sh
Build the xserver + driver:
.gitlab-ci/common/build-driver.sh debian <xserver git ref>
.gitlab-ci/common/build-driver.sh freebsd <xserver git ref>
Build just the xserver:
.gitlab-ci/common/build-xserver.sh debian <xserver git ref>
.gitlab-ci/common/build-xserver.sh freebsd <xserver git ref>

View File

@@ -0,0 +1,61 @@
#!/usr/bin/env bash
set -e
PLATFORM="$1"
XSERVER_REF="$2"
if [ ! "$PLATFORM" ]; then
echo "missing PLATFORM" >&2
exit 1
fi
if [ ! "$XSERVER_REF" ]; then
echo "missing XSERVER_REF" >&2
exit 1
fi
.gitlab-ci/common/build-xserver.sh "$PLATFORM" "$XSERVER_REF"
MACH=`gcc -dumpmachine`
echo "Building on machine $MACH"
case "$PLATFORM" in
freebsd)
export PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/libdata/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/libdata/pkgconfig"
export ACLOCAL_PATH="/usr/share/aclocal:/usr/local/share/aclocal"
export CFLAGS="$CFLAGS -I/usr/local/include"
export UDEV_CFLAGS=" "
export UDEV_LIBS=" "
;;
debian)
export PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/share/pkgconfig"
;;
*)
echo "unknown platform $PLATFORM" >&2
;;
esac
if [ -f autogen.sh ]; then
(
echo "building driver via autotools"
rm -Rf _builddir
mkdir -p _builddir
cd _builddir
../autogen.sh --disable-silent-rules
make
make check
make distcheck
)
elif [ -f meson.build ]; then
(
echo "building driver via meson"
meson setup _build
cd _build
meson compile
meson install
)
else
echo "failed detecting build system"
exit 1
fi

View File

@@ -0,0 +1,71 @@
#!/usr/bin/env bash
set -e
set -x
PLATFORM="$1"
XSERVER_REF="$2"
if [ ! "$XSERVER_REF" ]; then
echo "missing XSERVER_REF variable" >&2
exit 1
fi
XSERVER_CLONE=/tmp/xserver
XSERVER_BUILD=$XSERVER_CLONE/_builddir
XSERVER_REPO=https://gitlab.freedesktop.org/xorg/xserver.git
MACH=`gcc -dumpmachine`
export PKG_CONFIG_PATH="/usr/lib/$MACH/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"
export PKG_CONFIG_PATH="/usr/local/lib/$MACH/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:$PKG_CONFIG_PATH"
echo "cloning xserver"
rm -Rf $XSERVER_CLONE
git clone --depth=1 -b $XSERVER_REF $XSERVER_REPO $XSERVER_CLONE
echo "checking platform: $PLATFORM"
case "$PLATFORM" in
freebsd)
echo "Building on FreeBSD"
XSERVER_OS_AUTOCONF_FLAGS="--without-dtrace"
XSERVER_MESON_DISABLE="glx udev udev_kms"
;;
debian)
echo "Building on Debian"
;;
*)
echo "unknown platform $PLATFORM" >&2
exit 1
;;
esac
if [ -f $XSERVER_CLONE/meson.build ]; then
(
echo "Building Xserver via meson"
for opt in $XSERVER_MESON_DISABLE ; do
if grep "'$opt'" $XSERVER_CLONE/meson_options.txt ; then
echo "disable $opt"
XSERVER_MESON_FLAGS="$XSERVER_MESON_FLAGS -D$opt=false"
else
echo "no option $opt"
fi
done
mkdir -p $XSERVER_BUILD
cd $XSERVER_BUILD
meson setup --prefix=/usr $XSERVER_MESON_FLAGS
meson compile
meson install
)
else
(
echo "Building Xserver via autotools"
cd $XSERVER_CLONE
# Workaround glvnd having reset the version in gl.pc from what Mesa used
# similar to xserver commit e6ef2b12404dfec7f23592a3524d2a63d9d25802
sed -i -e 's/gl >= [79].[12].0/gl >= 1.2/' configure.ac
./autogen.sh --prefix=/usr $XSERVER_AUTOCONF_FLAGS $XSERVER_OS_AUTOCONF_FLAGS
make -j`nproc`
make -j`nproc` install
)
fi

View File

@@ -0,0 +1,88 @@
#!/bin/bash
set -e
set -o xtrace
echo 'deb-src https://deb.debian.org/debian bullseye main' >>/etc/apt/sources.list.d/deb-src.list
echo 'deb-src https://deb.debian.org/debian bullseye-updates main' >>/etc/apt/sources.list.d/deb-src.list
apt-get update
apt-get autoremove -y --purge
apt-get install -y --no-remove \
autoconf \
automake \
build-essential \
libtool \
pkg-config \
ca-certificates \
git \
debian-archive-keyring \
python3 python3-setuptools libxshmfence-dev \
clang \
libxvmc-dev libxcb1-dev libx11-xcb-dev libxcb-dri2-0-dev libxcb-util-dev \
libxfixes-dev libxcb-xfixes0-dev libxrender-dev libxdamage-dev libxrandr-dev \
libxcursor-dev libxss-dev libxinerama-dev libxtst-dev libpng-dev libssl-dev \
libxcb-dri3-dev libxxf86vm-dev libxfont-dev libxkbfile-dev libdrm-dev \
libgbm-dev libgl1-mesa-dev libpciaccess-dev libpixman-1-dev libudev-dev \
libgcrypt-dev libepoxy-dev libevdev-dev libmtdev-dev libinput-dev \
mesa-common-dev libspice-protocol-dev libspice-server-dev \
meson \
nettle-dev \
pkg-config \
valgrind \
x11-xkb-utils xfonts-utils xutils-dev x11proto-dev
build_autoconf() {
local subdir="$1"
shift
(
cd $subdir
./autogen.sh "$@"
make -j${FDO_CI_CONCURRENT:-4}
make -j${FDO_CI_CONCURRENT:-4} install
)
}
build_meson() {
local subdir="$1"
shift
(
cd $subdir
meson _build -Dprefix=/usr "$@"
ninja -C _build -j${FDO_CI_CONCURRENT:-4} install
)
}
do_clone() {
git clone "$1" --depth 1 --branch="$2"
}
mkdir -p /tmp/build-deps
cd /tmp/build-deps
# xserver 1.18 and older branches require libXfont 1.5 instead of 2.0
echo "Installing libXfont 1.5"
do_clone https://gitlab.freedesktop.org/xorg/lib/libXfont.git libXfont-1.5-branch
build_autoconf libXfont
echo "Installing font-util"
do_clone https://gitlab.freedesktop.org/xorg/font/util.git font-util-1.4.1
build_autoconf util --prefix=/usr
echo "Installing libxcvt"
do_clone https://gitlab.freedesktop.org/xorg/lib/libxcvt.git libxcvt-0.1.0
build_meson libxcvt
# xserver requires xorgproto >= 2024.1 for XWAYLAND
echo "Installing xorgproto"
do_clone https://gitlab.freedesktop.org/xorg/proto/xorgproto.git xorgproto-2024.1
build_autoconf xorgproto
# Xwayland requires drm 2.4.116 for drmSyncobjEventfd
# xf86-video-freedreno and xf86-video-omap need extra features
echo "Installing libdrm"
do_clone https://gitlab.freedesktop.org/mesa/drm libdrm-2.4.116
build_meson drm -Dfreedreno=enabled -Dnouveau=enabled -Domap=enabled
rm -Rf /tmp/build-deps

View File

@@ -0,0 +1,8 @@
# using the latest branch
FreeBSD: {
url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
mirror_type: "srv",
signature_type: "fingerprints",
fingerprints: "/usr/share/keys/pkg",
enabled: yes
}

View File

@@ -0,0 +1,59 @@
#!/usr/bin/env bash
set -e
# note: really wanna install to /usr/local, since that's explicitly searched first,
# so we always catch the locally installed before any system/ports provided one
# otherwise we might run into trouble like trying to use outdated xorgproto
build_autoconf() {
local subdir="$1"
shift
(
cd $subdir
./autogen.sh --prefix=/usr/local "$@"
make -j${FDO_CI_CONCURRENT:-4}
make -j${FDO_CI_CONCURRENT:-4} install
)
}
build_meson() {
local subdir="$1"
shift
(
cd $subdir
meson _build -Dprefix=/usr/local "$@"
ninja -C _build -j${FDO_CI_CONCURRENT:-4} install
)
}
do_clone() {
git clone "$1" --depth 1 --branch="$2"
}
cp .gitlab-ci/common/freebsd/FreeBSD.conf /etc/pkg
pkg upgrade -f -y
pkg install -y \
git gcc pkgconf autoconf automake libtool xorg-macros xorgproto meson \
ninja pixman xtrans libXau libXdmcp libXfont libXfont2 libxkbfile libxcvt \
libpciaccess font-util libepoll-shim libdrm mesa-libs libdrm libglu mesa-dri \
libepoxy nettle xkbcomp libXvMC xcb-util valgrind libXcursor libXScrnSaver \
libXinerama libXtst evdev-proto libevdev libmtdev libinput spice-protocol \
libspice-server
[ -f /bin/bash ] || ln -sf /usr/local/bin/bash /bin/bash
# Xwayland requires drm 2.4.116 for drmSyncobjEventfd
# xf86-video-freedreno and xf86-video-omap need extra features
echo "Installing libdrm"
do_clone https://gitlab.freedesktop.org/mesa/drm libdrm-2.4.116
(
cd drm
git config user.email "buildbot@freebsd"
git config user.name "FreeBSD build bot"
git am ../.gitlab-ci/common/freebsd/libdrm-2.4.116.patch
)
build_meson drm -Dfreedreno=enabled -Dnouveau=enabled -Domap=enabled
echo "=== post-install script END"

View File

@@ -0,0 +1,109 @@
From a87432dbb281ddf1c50a5e78091d38f0dac79416 Mon Sep 17 00:00:00 2001
From: "Enrico Weigelt, metux IT consult" <info@metux.net>
Date: Fri, 7 Jun 2024 15:18:47 +0200
Subject: [PATCH 1/2] fix FTBS on FreeBSD (or non-Linux in general)
Several drivers still including <linux/stddef.h>, but not using anything
from it, thus breaking build on non-Linux platforms (eg. FreeBSD).
Since not needed at all, just stop including it.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
---
etnaviv/etnaviv_device.c | 1 -
exynos/exynos_drm.c | 1 -
exynos/exynos_fimg2d.c | 1 -
omap/omap_drm.c | 1 -
tests/exynos/exynos_fimg2d_test.c | 1 -
5 files changed, 5 deletions(-)
diff --git a/etnaviv/etnaviv_device.c b/etnaviv/etnaviv_device.c
index 699df256..a63bd15d 100644
--- a/etnaviv/etnaviv_device.c
+++ b/etnaviv/etnaviv_device.c
@@ -25,7 +25,6 @@
*/
#include <stdlib.h>
-#include <linux/stddef.h>
#include <linux/types.h>
#include <errno.h>
#include <sys/mman.h>
diff --git a/exynos/exynos_drm.c b/exynos/exynos_drm.c
index 3e322a17..fb4cd8de 100644
--- a/exynos/exynos_drm.c
+++ b/exynos/exynos_drm.c
@@ -31,7 +31,6 @@
#include <unistd.h>
#include <sys/mman.h>
-#include <linux/stddef.h>
#include <xf86drm.h>
diff --git a/exynos/exynos_fimg2d.c b/exynos/exynos_fimg2d.c
index ac6fa687..f0aee962 100644
--- a/exynos/exynos_fimg2d.c
+++ b/exynos/exynos_fimg2d.c
@@ -30,7 +30,6 @@
#include <assert.h>
#include <sys/mman.h>
-#include <linux/stddef.h>
#include <xf86drm.h>
diff --git a/omap/omap_drm.c b/omap/omap_drm.c
index aa273660..42d35ef7 100644
--- a/omap/omap_drm.c
+++ b/omap/omap_drm.c
@@ -27,7 +27,6 @@
*/
#include <stdlib.h>
-#include <linux/stddef.h>
#include <linux/types.h>
#include <errno.h>
#include <sys/mman.h>
diff --git a/tests/exynos/exynos_fimg2d_test.c b/tests/exynos/exynos_fimg2d_test.c
index d85e2f6b..b1baa503 100644
--- a/tests/exynos/exynos_fimg2d_test.c
+++ b/tests/exynos/exynos_fimg2d_test.c
@@ -31,7 +31,6 @@
#include <unistd.h>
#include <sys/mman.h>
-#include <linux/stddef.h>
#include <xf86drm.h>
#include <xf86drmMode.h>
--
2.39.2
From 79123db12c6c5f42747fae02068b482055e8c376 Mon Sep 17 00:00:00 2001
From: "Enrico Weigelt, metux IT consult" <info@metux.net>
Date: Fri, 7 Jun 2024 15:43:13 +0200
Subject: [PATCH 2/2] omap: fix FTBS on FreeBSD and drop unneeded include
No need to explicitly include <linux/types.h>, since drm.h already does that,
but conditionally only Linux only.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
---
omap/omap_drm.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/omap/omap_drm.c b/omap/omap_drm.c
index 42d35ef7..93d2207f 100644
--- a/omap/omap_drm.c
+++ b/omap/omap_drm.c
@@ -27,7 +27,6 @@
*/
#include <stdlib.h>
-#include <linux/types.h>
#include <errno.h>
#include <sys/mman.h>
#include <fcntl.h>
--
2.39.2

View File

@@ -0,0 +1,216 @@
# version 0.1.19
variables:
DEBIAN_VERSION: 'bullseye-slim'
DEBIAN_TAG: "2024-06-06.09"
DEBIAN_EXEC: 'bash .gitlab-ci/common/debian/image-install.sh'
DEBIAN_SKIP: "false" # to enable, it has to be litterally "true"
FREEBSD_TAG: '2024-06-06.06'
FREEBSD_VERSION: '14.0'
# image is yet too small for that - need a more complicated way :(
# FREEBSD_EXEC: "bash .gitlab-ci/common/freebsd/image-install.sh"
FREEBSD_SKIP: "false" # to enable, it has to be litterally "true"
.templates_sha: &template_sha bc70242ffb8402243e934659ecc1a2d1c89eca2b # see https://docs.gitlab.com/ee/ci/yaml/#includefile
include:
- project: 'freedesktop/ci-templates'
ref: *template_sha
file: '/templates/debian.yml'
- project: 'freedesktop/ci-templates'
ref: *template_sha
file: '/templates/freebsd.yml'
- project: 'freedesktop/ci-templates'
ref: *template_sha
file: '/templates/ci-fairy.yml'
- template: Security/SAST.gitlab-ci.yml
stages:
- images
- build
- test
# standard commits quality check
check-commits:
extends:
- .fdo.ci-fairy
stage: test
script:
- ci-fairy check-commits --junit-xml=results.xml
except:
- master@$FDO_UPSTREAM_REPO
variables:
GIT_DEPTH: 100
artifacts:
reports:
junit: results.xml
allow_failure: true
needs:
# standard merge request quality checks
check-merge-request:
extends:
- .fdo.ci-fairy
stage: test
script:
- ci-fairy check-merge-request --require-allow-collaboration --junit-xml=results.xml
artifacts:
when: on_failure
reports:
junit: results.xml
allow_failure: true
needs:
# create debian build image
image@debian@amd64:
extends:
- .xorg.distro@debian@amd64
- .fdo.container-build@debian
stage: images
variables:
GIT_STRATEGY: none
rules:
- if: $DEBIAN_SKIP != "true"
when: always
needs:
image@debian@i386:
extends:
- .xorg.distro@debian@i386
- .fdo.container-build@debian
stage: images
variables:
GIT_STRATEGY: none
rules:
- if: $DEBIAN_SKIP != "true"
when: always
needs:
# inherit this to define FDO_DISTRIBUTION_* variables for Debian
.xorg.distro@debian@amd64:
variables:
FDO_DISTRIBUTION_VERSION: "$DEBIAN_VERSION"
FDO_DISTRIBUTION_EXEC: "$DEBIAN_EXEC"
FDO_DISTRIBUTION_TAG: "amd64-$DEBIAN_TAG"
FDO_BASE_IMAGE: "amd64/debian:$DEBIAN_VERSION"
.xorg.distro@debian@i386:
variables:
FDO_DISTRIBUTION_VERSION: "$DEBIAN_VERSION"
FDO_DISTRIBUTION_EXEC: "$DEBIAN_EXEC"
FDO_DISTRIBUTION_TAG: "i386-$DEBIAN_TAG"
FDO_BASE_IMAGE: "i386/debian:$DEBIAN_VERSION"
# overwrite this one if another matrix is needed
.xorg.driver_matrix@debian:
parallel:
matrix:
- CC: [ "gcc", "clang" ]
XSERVER_REF: [
# these break on Debian
# "xorg-server-1.18.4",
# "xorg-server-1.19.7",
"xorg-server-1.20.14",
"xorg-server-21.1.13",
"master"
]
# default build with meson on Debian
.xorg.driver_common@debian:
needs:
- image@debian@i386
- image@debian@amd64
extends:
- .fdo.distribution-image@debian
stage: build
script:
- .gitlab-ci/common/build-driver.sh "debian" "$XSERVER_REF"
variables:
CFLAGS: "-pipe -g -O2"
rules:
- if: $DEBIAN_SKIP != "true"
when: always
# overwrite this when you need some special Debian build
build@debian@amd64:
extends:
- .xorg.driver_matrix@debian
- .xorg.driver_common@debian
- .xorg.distro@debian@amd64
build@debian@i386:
extends:
- .xorg.driver_matrix@debian
- .xorg.driver_common@debian
- .xorg.distro@debian@i386
# inherit this to define FDO_DISTRIBUTION_* variables for FreeBSD
.xorg.distro@freebsd:
variables:
FDO_DISTRIBUTION_VERSION: "$FREEBSD_VERSION"
FDO_DISTRIBUTION_EXEC: "$FREEBSD_EXEC"
FDO_DISTRIBUTION_TAG: "$FREEBSD_TAG"
# create base image for FreeBSD
image@freebsd:
extends:
- .xorg.distro@freebsd
- .fdo.qemu-build@freebsd@x86_64
stage: images
variables:
GIT_STRATEGY: none
rules:
- if: $FREEBSD_SKIP != "true"
when: always
# inherit this to get the default build matrix
.xorg.driver_matrix@freebsd:
parallel:
matrix:
- CC: [ "gcc", "clang" ]
XSERVER_REF: [
# "xorg-server-1.18.4", # this breaks due name clash on "bool"
# "xorg-server-1.19.7",
# "xorg-server-1.20.14", # breaks meson ... see: 331850ce6f0c48a1cfc489da2a27ca0220997a2f -- server-1.20-branch
"xorg-server-21.0.99.1",
"xorg-server-21.1.13",
"master"
]
# common build for driver on FreeBSD. meson and autoconf are both handled by this
.xorg.driver_common@freebsd:
needs:
- image@freebsd
stage: build
extends:
- .fdo.distribution-image@freebsd
- .xorg.distro@freebsd
script:
# FIXME: increasing image and running image-install.sh should be done
# at container image build time, but would have to replicate too much
# of the cbuild script here. better wait until CI folks have increased
# the image size or provide hooks for that
- xz -d -T0 /app/image.raw.xz
- rm -f /app/image.raw.xz
- truncate -s +5G /app/image.raw
- /app/vmctl start
- set +e
- /app/vmctl exec "service growfs onestart"
- scp -r $PWD "vm:"
- /app/vmctl exec "cd $CI_PROJECT_NAME && .gitlab-ci/common/freebsd/image-install.sh"
- /app/vmctl exec "cd $CI_PROJECT_NAME && .gitlab-ci/common/build-driver.sh freebsd $XSERVER_REF" && touch .success
# copy any test results from the VM to our container so we can
# save them as artifacts
- scp -r vm:$CI_PROJECT_NAME/test-results.xml . || true # this is allowed to fail
- /app/vmctl stop
- set -e
- test -e .success || exit 1
rules:
- if: $FREEBSD_SKIP != "true"
when: always
# overwrite this if you need some special FreeBSD build
build@freebsd:
extends:
- .xorg.driver_matrix@freebsd
- .xorg.driver_common@freebsd

23
COPYING Normal file
View File

@@ -0,0 +1,23 @@
Copyright (C) 1994-2003 The XFree86 Project, Inc. All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is fur-
nished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FIT-
NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CON-
NECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of the XFree86 Project shall not
be used in advertising or otherwise to promote the sale, use or other deal-
ings in this Software without prior written authorization from the XFree86
Project.

34
Makefile.am Normal file
View File

@@ -0,0 +1,34 @@
# Copyright 2005 Adam Jackson.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# on the rights to use, copy, modify, merge, publish, distribute, sub
# license, and/or sell copies of the Software, and to permit persons to whom
# the Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
# ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
SUBDIRS = src man
MAINTAINERCLEANFILES = ChangeLog INSTALL
.PHONY: ChangeLog INSTALL
INSTALL:
$(INSTALL_CMD)
ChangeLog:
$(CHANGELOG_CMD)
dist-hook: ChangeLog INSTALL
EXTRA_DIST = README.md

18
README.md Normal file
View File

@@ -0,0 +1,18 @@
xf86-video-fbdev - video driver for framebuffer device
------------------------------------------------------
All questions regarding this software should be directed at the
Xorg mailing list:
https://lists.x.org/mailman/listinfo/xorg
The primary development code repository can be found at:
https://gitlab.freedesktop.org/xorg/driver/xf86-video-fbdev
Please submit bug reports and requests to merge patches there.
For patch submission instructions, see:
https://www.x.org/wiki/Development/Documentation/SubmittingPatches

17
autogen.sh Executable file
View File

@@ -0,0 +1,17 @@
#! /bin/sh
srcdir=`dirname "$0"`
test -z "$srcdir" && srcdir=.
ORIGDIR=`pwd`
cd "$srcdir"
autoreconf -v --install || exit 1
cd "$ORIGDIR" || exit $?
git config --local --get format.subjectPrefix >/dev/null 2>&1 ||
git config --local format.subjectPrefix "PATCH xf86-video-fbdev"
if test -z "$NOCONFIGURE"; then
exec "$srcdir"/configure "$@"
fi

85
configure.ac Normal file
View File

@@ -0,0 +1,85 @@
# Copyright 2005 Adam Jackson.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# on the rights to use, copy, modify, merge, publish, distribute, sub
# license, and/or sell copies of the Software, and to permit persons to whom
# the Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
# ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Process this file with autoconf to produce a configure script
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xf86-video-fbdev],
[0.5.0],
[https://gitlab.freedesktop.org/xorg/driver/xf86-video-fbdev/issues],
[xf86-video-fbdev])
AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_AUX_DIR(.)
# Initialize Automake
AM_INIT_AUTOMAKE([foreign dist-xz])
# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
m4_ifndef([XORG_MACROS_VERSION],
[m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])])
XORG_MACROS_VERSION(1.8)
XORG_DEFAULT_OPTIONS
# Initialize libtool
LT_INIT([disable-static])
AH_TOP([#include "xorg-server.h"])
# Define a configure option for an alternate module directory
AC_ARG_WITH(xorg-module-dir,
AS_HELP_STRING([--with-xorg-module-dir=DIR],
[Default xorg module directory [[default=$libdir/xorg/modules]]]),
[moduledir="$withval"],
[moduledir="$libdir/xorg/modules"])
AC_ARG_ENABLE(pciaccess, AS_HELP_STRING([--enable-pciaccess],
[Enable use of libpciaccess (default: disabled)]),
[PCIACCESS=$enableval], [PCIACCESS=no])
# Store the list of server defined optional extensions in REQUIRED_MODULES
XORG_DRIVER_CHECK_EXT(RANDR, randrproto)
XORG_DRIVER_CHECK_EXT(RENDER, renderproto)
XORG_DRIVER_CHECK_EXT(XV, videoproto)
# Obtain compiler/linker options for the driver dependencies
PKG_CHECK_MODULES(XORG, [xorg-server >= 1.18 xproto fontsproto $REQUIRED_MODULES])
AM_CONDITIONAL(PCIACCESS, [test "x$PCIACCESS" = xyes])
if test "x$PCIACCESS" = xyes; then
AC_DEFINE(PCIACCESS, 1, [Use libpciaccess])
PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.8.0])
XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS"
fi
# Checks for libraries.
AC_SUBST([moduledir])
DRIVER_NAME=fbdev
AC_SUBST([DRIVER_NAME])
AC_CONFIG_FILES([
Makefile
src/Makefile
man/Makefile
])
AC_OUTPUT

42
man/Makefile.am Normal file
View File

@@ -0,0 +1,42 @@
# $Id$
#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
#
drivermandir = $(DRIVER_MAN_DIR)
driverman_PRE = @DRIVER_NAME@.man
driverman_DATA = $(driverman_PRE:man=@DRIVER_MAN_SUFFIX@)
EXTRA_DIST = @DRIVER_NAME@.man
CLEANFILES = $(driverman_DATA)
# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure
SUFFIXES = .$(DRIVER_MAN_SUFFIX) .man
.man.$(DRIVER_MAN_SUFFIX):
$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@

View File

@@ -1,4 +1,3 @@
.\" $XFree86: xc/programs/Xserver/hw/xfree86/drivers/fbdev/fbdev.man,v 1.3 2001/10/02 15:57:32 alanh Exp $
.\" shorthand for double quote that works everywhere.
.ds q \N'34'
.TH FBDEV __drivermansuffix__ __vendorversion__
@@ -15,7 +14,7 @@ fbdev \- video driver for framebuffer device
.fi
.SH DESCRIPTION
.B fbdev
is an XFree86 driver for framebuffer devices. This is a non-accelerated
is an __xservername__ driver for framebuffer devices. This is a non-accelerated
driver, the following framebuffer depths are supported: 8, 15, 16, 24.
All visual types are supported for depth 8, and TrueColor visual is
supported for the other depths. Multi-head configurations are supported.
@@ -27,7 +26,7 @@ fbdev uses the os-specific submodule fbdevhw(__drivermansuffix__) to talk
to the kernel
device driver. Currently a fbdevhw module is available for linux.
.SH CONFIGURATION DETAILS
Please refer to XF86Config(__filemansuffix__) for general configuration
Please refer to __xconfigfile__(__filemansuffix__) for general configuration
details. This section only covers configuration details specific to
this driver.
.PP
@@ -38,8 +37,7 @@ driver can pick up the currently used video mode from the framebuffer
driver and will use it if there are no video modes configured.
.PP
For PCI boards you might have to add a BusID line to the Device
section. See above for a sample line. You can use "XFree86 -scanpci"
to figure out the correct values.
section. See above for a sample line.
.PP
The following driver
.B Options
@@ -49,14 +47,16 @@ are supported:
The framebuffer device to use. Default: /dev/fb0.
.TP
.BI "Option \*qShadowFB\*q \*q" boolean \*q
Enable or disable use of the shadow framebuffer layer. Default: on.
Enable or disable use of the shadow framebuffer layer. Mandatory for 24bpp
framebuffers on newer servers. Default: on.
.TP
.BI "Option \*qRotate\*q \*q" string \*q
Enable rotation of the display. The supported values are "CW" (clockwise,
90 degrees), "UD" (upside down, 180 degrees) and "CCW" (counter clockwise,
270 degrees). Implies use of the shadow framebuffer layer. Default: off.
270 degrees). Implies use of the shadow framebuffer layer. Disabled for 24bpp
framebuffers. Default: off.
.SH "SEE ALSO"
XFree86(1), XF86Config(__filemansuffix__), xf86config(1), Xserver(1),
__xservername__(__appmansuffix__), __xconfigfile__(__filemansuffix__), Xserver(__appmansuffix__),
X(__miscmansuffix__), fbdevhw(__drivermansuffix__)
.SH AUTHORS
Authors include: Gerd Knorr, Michel Dänzer, Geert Uytterhoeven
Authors include: Gerd Knorr, Michel D\(:anzer, Geert Uytterhoeven

32
src/Makefile.am Normal file
View File

@@ -0,0 +1,32 @@
# Copyright 2005 Adam Jackson.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# on the rights to use, copy, modify, merge, publish, distribute, sub
# license, and/or sell copies of the Software, and to permit persons to whom
# the Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
# ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
# this is obnoxious:
# -module lets us name the module exactly how we want
# -avoid-version prevents gratuitous .0.0.0 version numbers on the end
# _ladir passes a dummy rpath to libtool so the thing will actually link
# TODO: -nostdlib/-Bstatic/-lgcc platform magic, not installing the .a, etc.
AM_CFLAGS = $(BASE_CFLAGS) $(XORG_CFLAGS)
fbdev_drv_la_LTLIBRARIES = fbdev_drv.la
fbdev_drv_la_LDFLAGS = -module -avoid-version
fbdev_drv_ladir = @moduledir@/drivers
fbdev_drv_la_SOURCES = \
fbdev.c

File diff suppressed because it is too large Load Diff