Michel Hermier
3a177b9209
AK: Add DisjointChunkc::ensure_capacity
2021-12-24 05:55:34 -08:00
Nihal Jere
4574a58f6f
Spider: Add animation when drawing cards
2021-12-24 05:49:52 -08:00
Daniel Bertalan
d70595c09e
Ports/tr: Remove obsolete getopt.h patch
2021-12-24 17:02:40 +03:30
Daniel Bertalan
05ce5d82fe
Ports/stress-ng: Remove obsolete patches
...
The following features are now available in the system, making these
patches unnecessary:
- isblank() function
- SIGSTKSZ constant
- MS_SYNC and MS_ASYNC msync() flags
- EDQUOT errno constant
2021-12-24 17:02:40 +03:30
Daniel Bertalan
1c054ac56e
Ports/mrsh: Remove obsolete PIPE_BUF patch
...
We now have this macro in LibC.
2021-12-24 17:02:40 +03:30
Daniel Bertalan
7893ae4233
Ports/mandoc: Remove obsolete patches
...
Since the creation of the port, we gained support for nanosleep(),
WSTOPSIG(), and the getopt family of functions is now available in
unistd.h.
2021-12-24 17:02:40 +03:30
Daniel Bertalan
29960faf20
Ports/m4: Remove obsolete wint_t patch
2021-12-24 17:02:40 +03:30
Daniel Bertalan
de5937b45e
Ports/m4: Fix build error
...
The addition of the siginfo() function to LibC caused this port to
enable its stack overflow detection feature which, however, depends on
more features that we don't have.
2021-12-24 17:02:40 +03:30
Daniel Bertalan
5b8098497e
Ports/libxml2: Remove obsolete ESHUTDOWN errno patch
2021-12-24 17:02:40 +03:30
Daniel Bertalan
43c27e891b
Ports/libuv: Remove obsolete statfs/pwrite patch
2021-12-24 17:02:40 +03:30
Daniel Bertalan
a28ad600f2
Ports/libicu: Remove obsolete <cmath> header patch
...
All issues with `cmath` have been resolved quite some time ago, and
ICU seems to build without issues.
2021-12-24 17:02:40 +03:30
Daniel Bertalan
f35b6ee3fc
Ports/emu2: Remove obsolete scandir patch
2021-12-24 17:02:40 +03:30
Daniel Bertalan
ff4787ad2d
Ports/chester: Enable -Werror
...
We no longer emit compiler warnings on deprecated/unsafe functions like
strcpy, so building more ports with -Werror is possible.
2021-12-24 17:02:40 +03:30
Daniel Bertalan
9418d4bf25
Ports/byacc: Remove obsolete getopt.h patch
...
We (correctly) declare getopt() and the related variables in unistd.h,
so this patch is unnecessary.
2021-12-24 17:02:40 +03:30
Daniel Bertalan
55a42906a7
Ports: Remove obsolete /dev/tty patches
2021-12-24 17:02:40 +03:30
Ali Mohammad Pur
39b5bb4162
Ports: Upgrade CMake to 3.22.1
...
That's the latest release, and includes one of the patches we had - so
we can drop that patch :^)
2021-12-24 17:01:10 +03:30
Daniel Bertalan
e539a1d077
Ports/cmake: Remove obsolete conflicting declaration patches
...
I'm not quite sure why, but CMake compiles fine without these.
2021-12-24 17:01:10 +03:30
Ali Mohammad Pur
f7b399da44
Ports: Fix the conflicting types issue in the cmake port
...
This patch is pending upstream, but until then, let's keep it locally to
make the port work :^)
2021-12-24 17:01:10 +03:30
Brian Gianforcaro
49749e279a
LibC: Implement _setjmp and _longjmp
...
These are aliases to `setjmp()` and `longjmp()` on our system,
as our implementations don't modify the signal mask.
This is required for the syzkaller executor process.
2021-12-24 05:26:21 -08:00
Sam Atkins
eefe471dce
SystemMonitor: Remove unused SortingProxyModel include
2021-12-24 05:11:52 -08:00
Sam Atkins
f6633a1026
LibGUI+Userland: Make SortingProxyModel::create() return ErrorOr
...
Unfortunately, most of the users are inside constructors, (and two
others are inside callback lambdas) so the error can't propagate, but
that can be improved later.
2021-12-24 05:11:52 -08:00
Stephan Unverwerth
c72a996542
LibSoftGPU: Add method to copy texels between images
...
Adds a method `copy_texels()` to class `Image` that copies a rect of
texels from source image to destination.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
5e9d99474d
LibGL: Remove image storage from MipMap
...
Images are stored on the device side. Texture2D and MipMap are now only
used to store imformation about the texture and reference to the device
image.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
4c944eaa41
LibGL: Remove sampling code from Sampler2D
...
Texture sampling now happens entirely in SoftGPU thus this class will
now only be used to hold the sampler configuration.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
39995548e4
LibGL+LibSoftGPU: Add method to query device info
...
This adds a method `info()` to SoftGPU that returns the name of the
hardware vendor and device name, as well as the number of texture untis.
LibGL uses the returned texture unit count to initialize its internal
texture unit array.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
1a758d7bf2
LibSoftGPU: Move enums into separate file
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
f7c40b25ac
LibSoftGPU: Remove GLenum used for selecting rendered primitive type
...
This removes the last reference to LibGL from LibSoftGPU. The GLenum
has been replaced by our own enum.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
de0069188f
LibSoftGPU: Remove OpenGL type for polygon mode
...
Replaces the GLenum used to setup polygon mode in RasterizerOptions with
our own enum.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
f4d29bf665
LibSoftGPU: Remove OpenGL type for fog mode
...
Replaces the GLenum used to set up the fog mode in RasterizerOptions
with out own enum.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
74ed7713fa
LibSoftGPU: Remove OpenGL type for depth test func
...
Replaces the GLenum used in the RasterizerConfig for selecting the depth
test function with out own enum.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
33e601800c
LibSoftGPU: Remove OpenGL type for draw buffer selection
...
Replaces the GLenum used in RasterizerConfig to select the draw buffer
with a simple boolean that disabled color output when the draw buffer
is set to GL_NONE on the OpenGL side.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
1904be0370
LibSoftGPU: Remove OpenGL type for culled side selection
...
Replaces the GLenum in RasterizerConfig, that selects the triangle sides
to be culled, with two booleans.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
24c76741e8
LibSoftGPU: Remove OpenGL type for front face selection
...
Replaces the GLenum used for selecting the frontface in the rasterizer
config with out own enum.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
c720cd00db
LibSoftGPU: Remove OpenGL type for alpha blend factors
...
Replaces the GLenum used for configuring alpha blend factors in the
SoftGPU device with out own enum.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
40bd73bdef
LibSoftGPU: Remove OpenGL type for alpha test func
...
Replaces the OpenGL enum used for setting the alpha test func in
RasterizerOptions with out own enum.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
7d49015403
LibSoftGPU: Remove simple OpenGL types from RasterizerConfig
...
Replace GLfloat and GLboolean types in RasterizerConfig with their c++
native equivalent.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
d8c17c8838
LibGL+LibSoftGPU: Use device samplers for rendering
...
We now sample textures from the device owned image samplers.
Passing of enabled texture units has been simplified by only passing a
list of texture unit indices.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
f69de5e850
LibGL: Synchronize device config before rendering if anything changed
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
39545d4b49
LibGL: Attach device image to texture object and upload image data
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
908a6339ec
LibSoftGPU: Add legacy texture env mode to sampler config
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
b41ad28654
LibSoftGPU: Add methods to read and write image data
...
This adds two methods, write_texels and read_texels, to the Image class.
Conversion between image formats happens automatically. The layout of
the client image data is passed in via ImageDataLayout struct.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
2a72d14336
LibSoftGPU: Make samplers part of device
...
This adds a sampler array to the device implementation and adds a method
`set_sampler_config` to configure samplers.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
b8bb72abbe
LibSoftGPU: Add device method for creating images
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
91ccf9958f
LibSoftGPU: Add Image class
...
This serves as the storage for all image types. 1D, 2D, 3D, Cube and
image arrays.
Upon construction a full mipmap chain is generated and the image is
immutable afterwards with respect to its layout.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
a9e27b9a0f
LibSoftGPU: Rename class SoftwareRasterizer to Device
...
This class does everything related to rendering now. It is the software
implementation of a full GPU device.
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
178b28b469
LibGL: Remove unused GLStruct.h
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
251f3c007f
LibGL+LibSoftGPU: Move Vertex and Triangle structs to LibSoftGPU
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
73ba208ee7
LibGL+LibSoftGPU: Move primitive assembly and clipping into LibSoftGPU
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
2f35135743
LibGL+LibSoftGPU: Add face culling state to rasterizer options
2021-12-24 05:10:28 -08:00
Stephan Unverwerth
ad3d5d43bd
LibGL+LibSoftGPU: Move rendering related code to LibSoftGPU library
...
This introduces a new library, LibSoftGPU, that incorporates all
rendering related features that formerly resided within LibGL itself.
Going forward we will make both libraries completely independent from
each other allowing LibGL to load different, possibly accelerated,
rendering backends.
2021-12-24 05:10:28 -08:00