summaryrefslogtreecommitdiff
path: root/libwebsocketpp-dev.spec
blob: 5caedd843328f2ec0f5f27c2a7fe56d417e65b2a (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
# topdir: libwebsocketpp-dev-0.8.2
#   The shipped tarball is synthesized from ./sources/libwebsocketpp-dev/ using
#   `tar --transform` to rename the top directory to libwebsocketpp-dev-0.8.2,
#   so the setup step must be pinned to that directory name (-n).
#   The upstream GitHub tag archive for 0.8.2 unpacks to `websocketpp-0.8.2`,
#   hence the #/ fragment on Source0 which pins the local tarball name.
#
# Header-only library: no shared object is produced and no main (runtime) package
# is installed, therefore the debuginfo machinery must be disabled.

%global debug_package %{nil}

Name:           libwebsocketpp-dev
Version:        0.8.2
Release:        1%{?dist}
Summary:        Header-only C++ WebSocket++ library

License:        BSD-3-Clause AND Zlib AND MIT
URL:            https://github.com/zaphoyd/websocketpp
Source0:        https://github.com/zaphoyd/websocketpp/archive/refs/tags/%{version}.tar.gz#/libwebsocketpp-dev-%{version}.tar.gz

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

BuildRequires:  cmake
BuildRequires:  gcc
BuildRequires:  gcc-c++
BuildRequires:  boost-devel >= 1.39.0
BuildRequires:  openssl-devel
BuildRequires:  zlib-devel

Provides:       websocketpp-devel = %{version}-%{release}
Provides:       cmake(websocketpp) = %{version}

%description
WebSocket++ is a header only C++ library that implements RFC6455, the WebSocket
Protocol. It allows integrating WebSocket client and server functionality into
C++ programs. It uses interchangeable network transport modules, including one
based on raw char buffers, one based on C++ iostreams, and one based on Asio
(either Boost.Asio or standalone Asio). TLS support and message compression are
provided via pluggable extensions built on OpenSSL and zlib.

This package contains the header files and the CMake integration files
(websocketpp-config.cmake, exposing the imported target
websocketpp::websocketpp) needed to build applications against WebSocket++.

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

%build
# Boost / OpenSSL / zlib are only probed by upstream when tests or examples are
# enabled; both are disabled so the shipped artifacts have no such linkage.
%cmake \
    -DBUILD_EXAMPLES=OFF \
    -DBUILD_TESTS=OFF
%cmake_build

%install
%cmake_install

%files
%license COPYING
%doc readme.md changelog.md roadmap.md
%{_includedir}/websocketpp/
%{_prefix}/lib/cmake/websocketpp/

%changelog
* Mon Sep 21 2026 openEuler Builder <builder@openeuler.org> - 0.8.2-1
- Initial package