SHA256
1
0
forked from pool/tvision

- Change gpm to a BuildRequires

- Changed patch to be compatible with osc
- Use correct library paths
- Add updated tarball 
- Add patch to use GNUInstallDirs for CMake 
- Split devel into devel and devel-static, put static lib in devel-static
- Move requires and suggests to subpackages

OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/tvision?expand=0&rev=4
This commit is contained in:
Julius Enriquez 2024-05-22 19:51:18 +00:00 committed by Git OBS Bridge
parent 95286e777f
commit c66076c29e
5 changed files with 137 additions and 17 deletions

53
Use-GNUInstallDirs.patch Normal file
View File

@ -0,0 +1,53 @@
diff -ruN a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -149,6 +149,8 @@
option(TV_BUILD_AVSCOLOR "Build AviSynth TermColor plugin" OFF)
+include(GNUInstallDirs)
+
tv_message_mp(STATUS "Install path: ${CMAKE_INSTALL_PREFIX}")
tv_message(STATUS "Build Examples: ${TV_BUILD_EXAMPLES}")
if (MAY_BUILD_USING_GPM)
diff -ruN a/examples/CMakeLists.txt b/examples/CMakeLists.txt
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -25,7 +25,7 @@
# Until CMake 3.13, 'install' only accepts targets defined
# in the current directory. So install from this function.
if (${app} IN_LIST TVINSTALLAPPS)
- install(TARGETS ${app} RUNTIME DESTINATION bin)
+ install(TARGETS ${app} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
endif()
endfunction()
diff -ruN a/source/CMakeLists.txt b/source/CMakeLists.txt
--- a/source/CMakeLists.txt
+++ b/source/CMakeLists.txt
@@ -153,14 +153,14 @@
#
install(TARGETS ${PROJECT_NAME}
EXPORT ${PROJECT_NAME}-config
- ARCHIVE DESTINATION lib
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
COMPONENT library
)
# package configuration
install(EXPORT ${PROJECT_NAME}-config
- DESTINATION lib/cmake/${PROJECT_NAME}
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
NAMESPACE ${PROJECT_NAME}::
FILE ${PROJECT_NAME}-config.cmake
COMPONENT library
@@ -169,7 +169,7 @@
# includes
# ./include/tvision and children copied to destination/include/tvision etc...
#
-install(DIRECTORY "${PROJECT_SOURCE_DIR}/include/tvision" DESTINATION include)
+install(DIRECTORY "${PROJECT_SOURCE_DIR}/include/tvision" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
# Build optimization

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:59688a5f1792b3f7831b828c304d0dcfa03bc9ed9da300a66d6074c134358a64
size 722044

3
tvision-0~git630.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:878c39f5ab28bf868c5a3711f406a77b1b292c0db851c4ef70db44c2ffba8877
size 722120

View File

@ -1,3 +1,25 @@
-------------------------------------------------------------------
Wed May 22 17:08:17 UTC 2024 - Julius Enriquez <win8linux@gmail.com>
- Changed patch to be compatible with osc
- Use correct library paths
-------------------------------------------------------------------
Wed May 22 16:50:53 UTC 2024 - Julius Enriquez <win8linux@gmail.com>
- Add updated tarball
-------------------------------------------------------------------
Wed May 22 16:34:06 UTC 2024 - Julius Enriquez <win8linux@gmail.com>
- Add patch to use GNUInstallDirs for CMake
-------------------------------------------------------------------
Tue May 21 18:30:58 UTC 2024 - Julius Enriquez <win8linux@gmail.com>
- Split devel into devel and devel-static, put static lib in devel-static
- Move requires and suggests to subpackages
-------------------------------------------------------------------
Sun May 19 10:24:57 UTC 2024 - Julius Enriquez <win8linux@gmail.com>

View File

@ -19,21 +19,13 @@
%bcond_without test
Name: tvision
Release: 0
Version: 0~git621
Version: 0~git630
Summary: Modern port of Turbo Vision 2.0
Group: Development/Languages/C and C++
License: MIT
URL: https://github.com/magiblot/tvision
Source: %{name}-%{version}.tar.xz
BuildRequires: binutils
BuildRequires: gcc-c++
BuildRequires: cmake
BuildRequires: make
BuildRequires: pkgconfig(ncurses)
BuildRequires: gtest
Requires: pkgconfig(ncurses)
Suggests: gpm
Suggests: (xclip or xset)
Patch1: Use-GNUInstallDirs.patch
%description
A modern port of Turbo Vision 2.0, the classical
@ -57,18 +49,70 @@ display of fullwidth Unicode characters, etc.
%package devel
Summary: Headers for Turbo Vision 2.0
Group: Development/Languages/C and C++
BuildRequires: binutils
BuildRequires: gcc-c++
BuildRequires: cmake
BuildRequires: make
BuildRequires: pkgconfig(ncurses)
BuildRequires: gtest
Suggests: gpm
Suggests: (xclip or xset)
%description devel
This package contains the library, headers, and help file
This package contains the headers and help file
compiler from the modernised Turbo Vision 2.0 port.
A modern port of Turbo Vision 2.0, the classical
framework for text-based user interfaces, but with
Unicode support.
%package devel-static
Summary: Static library for Turbo Vision 2.0
Group: Development/Languages/C and C++
BuildRequires: binutils
BuildRequires: gcc-c++
BuildRequires: cmake
BuildRequires: make
BuildRequires: pkgconfig(ncurses)
BuildRequires: gtest
Suggests: gpm
Suggests: (xclip or xset)
%description devel-static
This package contains the static library from the
modernised Turbo Vision 2.0 port.
A modern port of Turbo Vision 2.0, the classical
framework for text-based user interfaces, but with
Unicode support.
Turbo Vision lets application developers avoid
writing platform-specific workarounds for TUI apps.
It attempts to reproduce consistent results everywhere,
without developers worrying about terminal capabilities,
direct I/O, ifdefs, and other platform quirks.
Turbo Vision provides many widget classes (also known
as views), including resizable, overlapping windows,
pull-down menus, dialog boxes, buttons, scroll bars,
input boxes, check boxes and radio buttons. You may
use and extend these; but even if you prefer creating
your own, Turbo Vision already handles event dispatching,
display of fullwidth Unicode characters, etc.
%package demos
Summary: Demo programs of Turbo Vision 2.0
Group: Development/Languages/C and C++
BuildRequires: binutils
BuildRequires: gcc-c++
BuildRequires: cmake
BuildRequires: make
BuildRequires: pkgconfig(ncurses)
Requires: pkgconfig(ncurses)
Suggests: gpm
Suggests: (xclip or xset)
%description demos
This package contains demo programs showing off the
@ -86,7 +130,6 @@ with Unicode support.
%global _lto_cflags %nil
# Add CMake flag to let libtvision.a be used properly as a shared lib
%cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON
%cmake_build
@ -102,10 +145,12 @@ popd
%files devel
%license COPYRIGHT
%doc README.md
%{_prefix}/lib/libtvision.a
%{_bindir}/tvhc
%{_includedir}/*
%{_prefix}/lib/cmake/
%{_prefix}/%{_lib}/cmake/
%files devel-static
%{_prefix}/%{_lib}/libtvision.a
%files demos
%{_bindir}/tvdemo