summaryrefslogtreecommitdiff
path: root/libglfw3-dev.spec
blob: c6531edad4089987fb91297617d1f7f8f1d59d6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# topdir: libglfw3-dev-%{version}
Name:           libglfw3-dev
Version:        3.6.0
Release:        2%{?dist}
Summary:        A multi-platform library for OpenGL, window and input

License:        Zlib
URL:            https://www.glfw.org/
Source0:        https://github.com/glfw/glfw/archive/master.tar.gz#/libglfw3-dev-%{version}.tar.gz

Group:          Development/Libraries
Packager:       openEuler Builder <builder@openeuler.org>

BuildRequires:  cmake
BuildRequires:  gcc
BuildRequires:  make
BuildRequires:  gcc-c++
BuildRequires:  libX11-devel
BuildRequires:  libXrandr-devel
BuildRequires:  libXinerama-devel
BuildRequires:  libXcursor-devel
BuildRequires:  libXi-devel
BuildRequires:  libXext-devel
BuildRequires:  wayland-devel
BuildRequires:  libxkbcommon-devel

%description
GLFW is an Open Source, multi-platform library for OpenGL, OpenGL ES and
Vulkan application development.  It provides a simple, platform-independent
API for creating windows, contexts and surfaces, reading input, handling
events, etc.

GLFW is written in C99 and supports Windows, macOS and Linux (Wayland and X11).

This package provides the shared library, headers, CMake configuration
files and pkg-config file needed to develop applications with GLFW.

%prep
%autosetup -n %{name}-%{version}

%build
# Explicit out-of-source build: this openEuler's %cmake macro runs cmake
# in-source (no build subdir), while %cmake_build expects a %{_target_platform}
# build dir -> mismatch ("aarch64-openEuler-linux-gnu is not a directory").
# Configure/build in a dedicated build dir with %make_build avoids the macro pit.
mkdir -p build
cd build
%cmake .. \
    -DBUILD_SHARED_LIBS=ON \
    -DGLFW_BUILD_EXAMPLES=OFF \
    -DGLFW_BUILD_TESTS=OFF \
    -DGLFW_BUILD_DOCS=OFF
%make_build

%install
# Install from the out-of-source build dir; cmake --install reads DESTDIR.
cd build
DESTDIR=%{buildroot} cmake --install .

%files
%license LICENSE.md
%doc README.md
%{_libdir}/libglfw.so.3*
%{_libdir}/libglfw.so
%{_includedir}/GLFW/
%{_libdir}/cmake/glfw3/
%{_libdir}/pkgconfig/glfw3.pc

%changelog
* Wed Sep 23 2026 openEuler Builder <builder@openeuler.org> - 3.6.0-2
- Switch to explicit out-of-source cmake build to fix %cmake_build macro
  mismatch on openEuler (in-source config vs %{_target_platform} build dir)

* Wed Sep 23 2026 openEuler Builder <builder@openeuler.org> - 3.6.0-1
- Initial package