git: c74ba8ed230c - main - devel/csfml: New port: C bindings to the Simple and Fast Multimedia Library (SFML)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 21 Oct 2023 20:35:31 UTC
The branch main has been updated by diizzy:
URL: https://cgit.FreeBSD.org/ports/commit/?id=c74ba8ed230cfc302053dfd7c685577a81965c2e
commit c74ba8ed230cfc302053dfd7c685577a81965c2e
Author: Alastair Hogge <agh@riseup.net>
AuthorDate: 2023-10-21 15:53:12 +0000
Commit: Daniel Engberg <diizzy@FreeBSD.org>
CommitDate: 2023-10-21 20:35:00 +0000
devel/csfml: New port: C bindings to the Simple and Fast Multimedia Library (SFML)
The Simple and Fast Multimedia Library (SFML) exists in devel/sfml.
SFML is a C++ library, and as such, may introduce complexity for other
languages to use the library. CSFML is an official SFML project to
provide C bindings to SFML, with the aim of reducing language binding
complexity, to enable other languages to use C over C++.
Website: https://github.com/SFML/CSFML
Differential Revision: https://reviews.freebsd.org/D41519
---
devel/Makefile | 1 +
devel/csfml/Makefile | 24 +++++++++
devel/csfml/distinfo | 3 ++
devel/csfml/files/patch-CMakeLists.txt | 10 ++++
devel/csfml/pkg-descr | 12 +++++
devel/csfml/pkg-plist | 97 ++++++++++++++++++++++++++++++++++
6 files changed, 147 insertions(+)
diff --git a/devel/Makefile b/devel/Makefile
index a006258149b6..836defe5a520 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -475,6 +475,7 @@
SUBDIR += criterion
SUBDIR += cscope
SUBDIR += cscout
+ SUBDIR += csfml
SUBDIR += csmith
SUBDIR += csoap
SUBDIR += cssc
diff --git a/devel/csfml/Makefile b/devel/csfml/Makefile
new file mode 100644
index 000000000000..7c616cd2eb23
--- /dev/null
+++ b/devel/csfml/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= csfml
+DISTVERSION= 2.5.2
+CATEGORIES= devel games graphics multimedia
+
+MAINTAINER= agh@riseup.net
+COMMENT= C bindings to the Simple and Fast Multimedia Library (SFML)
+WWW= https://www.sfml-dev.org/download/csfml/
+
+LICENSE= ZLIB
+LICENSE_FILE= ${WRKSRC}/license.md
+
+BUILD_DEPENDS= sfml>0:devel/sfml
+LIB_DEPENDS= libsfml-audio.so:devel/sfml \
+ libsfml-graphics.so:devel/sfml \
+ libsfml-network.so:devel/sfml \
+ libsfml-system.so:devel/sfml \
+ libsfml-window.so:devel/sfml
+
+USES= cmake
+USE_GITHUB= yes
+GH_ACCOUNT= SFML
+GH_PROJECT= ${PORTNAME:tu}
+
+.include <bsd.port.mk>
diff --git a/devel/csfml/distinfo b/devel/csfml/distinfo
new file mode 100644
index 000000000000..edd4c396ce41
--- /dev/null
+++ b/devel/csfml/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1692583729
+SHA256 (SFML-CSFML-2.5.2_GH0.tar.gz) = 2671f1cd2a4e54e86f7483c4683132466c01a6ca90fa010bc4964a8820c36f06
+SIZE (SFML-CSFML-2.5.2_GH0.tar.gz) = 166888
diff --git a/devel/csfml/files/patch-CMakeLists.txt b/devel/csfml/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..b64e645e5732
--- /dev/null
+++ b/devel/csfml/files/patch-CMakeLists.txt
@@ -0,0 +1,10 @@
+--- CMakeLists.txt.orig 2023-10-04 04:59:37 UTC
++++ CMakeLists.txt
+@@ -63,5 +63,5 @@ install(DIRECTORY include
+ DESTINATION .
+ COMPONENT devel
+ PATTERN ".svn" EXCLUDE)
+-install(FILES license.md DESTINATION ${INSTALL_MISC_DIR})
+-install(FILES readme.md DESTINATION ${INSTALL_MISC_DIR})
++#install(FILES license.md DESTINATION ${INSTALL_MISC_DIR})
++#install(FILES readme.md DESTINATION ${INSTALL_MISC_DIR})
diff --git a/devel/csfml/pkg-descr b/devel/csfml/pkg-descr
new file mode 100644
index 000000000000..465c9381c2d9
--- /dev/null
+++ b/devel/csfml/pkg-descr
@@ -0,0 +1,12 @@
+CSFML is the official C bindings for the Simple and Fast Multimedia Library
+(SFML). SFML is a simple, fast, cross-platform, C++ object-oriented multimedia
+API. It abstracts windowing, graphics, audio, and networking.
+
+The CSFML API aims to create C style abstractions as close as possible, to the
+SFML C++ API. The follow-on effect of this enables building SFML bindings for
+other languages, either via the language's Foreign Function Interface
+mechanism, or by directly supporting C instead of C++.
+
+Due to the similarities between the two APIs, no tutorial is provided, however,
+users can follow the C++ tutorials available via the SFML website. Adapting
+those tutorials to the C API should take little effort.
diff --git a/devel/csfml/pkg-plist b/devel/csfml/pkg-plist
new file mode 100644
index 000000000000..6b52e5d76eba
--- /dev/null
+++ b/devel/csfml/pkg-plist
@@ -0,0 +1,97 @@
+include/SFML/Audio.h
+include/SFML/Audio/Export.h
+include/SFML/Audio/Listener.h
+include/SFML/Audio/Music.h
+include/SFML/Audio/Sound.h
+include/SFML/Audio/SoundBuffer.h
+include/SFML/Audio/SoundBufferRecorder.h
+include/SFML/Audio/SoundRecorder.h
+include/SFML/Audio/SoundStatus.h
+include/SFML/Audio/SoundStream.h
+include/SFML/Audio/Types.h
+include/SFML/Config.h
+include/SFML/GPUPreference.h
+include/SFML/Graphics.h
+include/SFML/Graphics/BlendMode.h
+include/SFML/Graphics/CircleShape.h
+include/SFML/Graphics/Color.h
+include/SFML/Graphics/ConvexShape.h
+include/SFML/Graphics/Export.h
+include/SFML/Graphics/Font.h
+include/SFML/Graphics/FontInfo.h
+include/SFML/Graphics/Glsl.h
+include/SFML/Graphics/Glyph.h
+include/SFML/Graphics/Image.h
+include/SFML/Graphics/PrimitiveType.h
+include/SFML/Graphics/Rect.h
+include/SFML/Graphics/RectangleShape.h
+include/SFML/Graphics/RenderStates.h
+include/SFML/Graphics/RenderTexture.h
+include/SFML/Graphics/RenderWindow.h
+include/SFML/Graphics/Shader.h
+include/SFML/Graphics/Shape.h
+include/SFML/Graphics/Sprite.h
+include/SFML/Graphics/Text.h
+include/SFML/Graphics/Texture.h
+include/SFML/Graphics/Transform.h
+include/SFML/Graphics/Transformable.h
+include/SFML/Graphics/Types.h
+include/SFML/Graphics/Vertex.h
+include/SFML/Graphics/VertexArray.h
+include/SFML/Graphics/VertexBuffer.h
+include/SFML/Graphics/View.h
+include/SFML/Network.h
+include/SFML/Network/Export.h
+include/SFML/Network/Ftp.h
+include/SFML/Network/Http.h
+include/SFML/Network/IpAddress.h
+include/SFML/Network/Packet.h
+include/SFML/Network/SocketSelector.h
+include/SFML/Network/SocketStatus.h
+include/SFML/Network/TcpListener.h
+include/SFML/Network/TcpSocket.h
+include/SFML/Network/Types.h
+include/SFML/Network/UdpSocket.h
+include/SFML/OpenGL.h
+include/SFML/System.h
+include/SFML/System/Clock.h
+include/SFML/System/Export.h
+include/SFML/System/InputStream.h
+include/SFML/System/Mutex.h
+include/SFML/System/Sleep.h
+include/SFML/System/Thread.h
+include/SFML/System/Time.h
+include/SFML/System/Types.h
+include/SFML/System/Vector2.h
+include/SFML/System/Vector3.h
+include/SFML/Window.h
+include/SFML/Window/Clipboard.h
+include/SFML/Window/Context.h
+include/SFML/Window/Cursor.h
+include/SFML/Window/Event.h
+include/SFML/Window/Export.h
+include/SFML/Window/Joystick.h
+include/SFML/Window/JoystickIdentification.h
+include/SFML/Window/Keyboard.h
+include/SFML/Window/Mouse.h
+include/SFML/Window/Sensor.h
+include/SFML/Window/Touch.h
+include/SFML/Window/Types.h
+include/SFML/Window/VideoMode.h
+include/SFML/Window/Window.h
+include/SFML/Window/WindowHandle.h
+lib/libcsfml-audio.so
+lib/libcsfml-audio.so.2.5
+lib/libcsfml-audio.so.2.5.2
+lib/libcsfml-graphics.so
+lib/libcsfml-graphics.so.2.5
+lib/libcsfml-graphics.so.2.5.2
+lib/libcsfml-network.so
+lib/libcsfml-network.so.2.5
+lib/libcsfml-network.so.2.5.2
+lib/libcsfml-system.so
+lib/libcsfml-system.so.2.5
+lib/libcsfml-system.so.2.5.2
+lib/libcsfml-window.so
+lib/libcsfml-window.so.2.5
+lib/libcsfml-window.so.2.5.2