# # spec file for package tvision # # Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %bcond_without test Name: tvision Release: 0 Version: d1fa783e0fa8685c199563a466cdc221e8d9b85c Summary: Modern port of Turbo Vision 2.0 Group: Development/Languages/C and C++ License: MIT URL: https://github.com/magiblot/tvision Source0: %{name}-%{version}.tar.gz BuildRequires: binutils BuildRequires: gcc-c++ BuildRequires: cmake BuildRequires: make BuildRequires: pkgconfig(ncurses) BuildRequires: gtest Requires: pkgconfig(ncurses) Requires: gpm %description A modern port of Turbo Vision 2.0, the classical framework for text-based user interfaces. Now cross-platform and 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 devel Summary: Headers for Turbo Vision 2.0 Group: Development/Languages/C and C++ %description devel This package contains the library, 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. Now cross-platform and 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++ %description -n %{name}-demos This package contains demo programs showing off the modernised Turbo Vision 2.0 port. A modern port of Turbo Vision 2.0, the classical framework for text-based user interfaces. Now cross-platform and 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. %prep %setup -q %build # Disable LTO due to a lto-no-text-in-archive problem with libtvision.a %global _lto_cflags %nil %cmake %cmake_build %install %cmake_install %check pushd test/ %cmake %cmake_build popd %files devel %defattr(-,root,root) %license COPYRIGHT %doc README.md %{_prefix}/lib/libtvision.a %{_bindir}/tvhc %{_includedir}/* %{_prefix}/lib/cmake %{_prefix}/lib/cmake/* %files -n %{name}-demos %{_bindir}/tvdemo %{_bindir}/tvedit %changelog