File TeXmacs.spec of Package TeXmacs-QT6
Name: TeXmacs
Version: 2.1.4
Release: 1
Summary: A structured wysiwyg scientific text editor
Group: Applications/Editors
License: GNU GPL 3.0
URL: http://www.texmacs.org
Source: %{name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}
Packager: Denis Raux <raux@texmacs.org>
Distribution: GNU/Linux
Vendor: MaGiX software association
%global _debugsource_packages 0
%global _debuginfo_subpackages 0
%global debug_package %{nil}
# for Fedora > 30
%undefine __brp_mangle_shebangs
# avoid python script compiling
%global __os_install_post %{nil}
BuildRequires: perl(Digest::SHA)
%if 0%{?suse_version} == 0
Buildrequires: perl-core
%endif
%if 0%{?suse_version} > 0
Buildrequires: gcc11-c++ libpng-devel
%else
Buildrequires: gcc-c++
%endif
Buildrequires: libtool-ltdl-devel,ghostscript-devel,glib2-devel,gnutls-devel
Buildrequires: gmp-devel,shared-mime-info
%if 0%{?suse_version} || 0%{?sle_version}
Buildrequires: update-desktop-files
%else
%if 0%{?scientificlinux_version} == 600
Buildrequires: desktop-file-utils
%else
Buildrequires: desktop-file-utils
%endif
%endif
BuildRequires: -post-build-checks
%{?fedora:Buildrequires: libffi-devel}
%{?fedora:Buildrequires: redhat-rpm-config}
# Python Version
%if 0%{?scientificlinux_version} == 600 || 0%{?centos_version} == 600
Buildrequires: python2-devel
%else
%if 0%{?centos_version} == 800
Buildrequires: platform-python-devel
%else
Buildrequires: python3-devel
%endif
%endif
#Qt version
%if 0%{?centos_version} > 0 || 0%{?scientific_linux_version} > 0
BuildRequires: qt6-qtbase-devel qt6-qtsvg-devel
%endif
%if 0%{?debian_version} > 0 || 0%{?raspbian_version} > 0 || 0%{?ubuntu_version} > 0
BuildRequires: qtbase6-dev qt6-base-dev-tools qt6-qmake qt6-qtsvg-dev
%endif
%if 0%{?fedora} > 0
BuildRequires: qt6-qtbase-devel qt6-qtsvg-devel qt6-qtwayland-devel
%endif
%if 0%{?suse_version} > 0
BuildRequires: qt6-base-devel qt6-core-devel qt6-gui-devel qt6-widgets-devel qt6-svg-devel qt6-tools-devel qt6-qtwayland-devel freetype2-devel pkg-config
%endif
Buildrequires: texinfo
#freetype
%if 0%{?is_opensuse} && (0%{?sle_version} == 150300 || 0%{?sle_version} == 150400)
Buildrequires: freetype2-devel
%else
%if 0%{?suse_version} > 1500
Buildrequires: freetype2-devel
%else
Buildrequires: freetype-devel
%endif
%endif
%if 0%{?rhel}
#centos includes rhel tag
%define _mandir %{_prefix}/share/man
%{?scientificlinux_version:Buildrequires: libjpeg-turbo-devel}
%if %{rhel} == 7
Buildrequires: libffi-devel,libpng-devel
%endif
%endif
%description
GNU TeXmacs is a free wysiwyw (what you see is what you want) editing
platform with special features for scientists. The software aims to provide
a unified and user friendly framework for editing structured documents with
different types of content (text, graphics, mathematics, interactive content,
etc.). The rendering engine uses high-quality typesetting algorithms so as to
produce professionally looking documents, which can either be printed out
or presented from a laptop.
The software includes a text editor with support for mathematical formulas,
a small technical picture editor and a tool for making presentations from
a laptop. Moreover, TeXmacs can be used as an interface for many external
systems for computer algebra, numerical analysis, statistics, etc.
New presentation styles can be written by the user and new features can be
added to the editor using the Scheme extension language. A native spreadsheet
and tools for collaborative authoring are planned for later.
TeXmacs runs on all major Unix platforms and Windows. Documents can be
saved in TeXmacs, Xml or Scheme format and printed as Postscript or
Pdf files. Converters exist for TeX/LaTeX and Html/Mathml.
%prep
%setup -q -n %{name}-%{version}
%{echo: LIBDIR %{_libdir} : %{_libexecdir} : %{_datadir} "\n"}
##global _libexecdir %{_prefix}/libexec
%{echo: LIBDIR %{_libdir} : %{_libexecdir} "\n"}
%build
#autoreconf
find /usr -name "qt6"
find /usr -name "moc*"
find /usr -name "qmake*"
find /usr -name "rcc*"
find /usr -name "g++*"
%if 0%{?suse_version} > 0
export CC="/usr/bin/gcc-11"
export CXX="/usr/bin/g++-11"
%endif
echo Building for TeXmacs.spec for Qt6
PATH="/usr/lib/qt6/libexec:/usr/lib/qt6/bin:/usr/lib64/qt6/libexec:/usr/lib64/qt6/bin:/usr/lib/qt6:$PATH" QT_SELECT=qt6 CXXFLAGS=-fPIC LDFLAGS="-fPIC -pthread -ldl -Wl,--copy-dt-needed-entries" ./configure --prefix=%{_prefix} --with-qt-find-method=pkgconfig --with-guile=embedded18 --with-gnutls=yes
cp -rf tm-guile188/ice-9 ./TeXmacs/progs/
make %{_smp_mflags} TEXMACS
%install
export XDG_UTILS_INSTALL_MODE=system
#rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
mkdir -p %{buildroot}%{_datadir}/mime/packages &&
cp TeXmacs/misc/mime/texmacs.xml %{buildroot}%{_datadir}/mime/packages/
%if 0%{?suse_version}|| 0%{?sle_version}
%suse_update_desktop_file -i texmacs
mkdir %{buildroot}/usr/lib
%else
desktop-file-install --dir=%{buildroot}%{_datadir}/applications TeXmacs/misc/mime/texmacs.desktop
%endif
%files
%defattr(-,root,root)
%{_bindir}/fig2ps
%{_bindir}/texmacs
%{_includedir}/TeXmacs.h
%doc
%doc %{_mandir}/man1/fig2ps.1.gz
%doc %{_mandir}/man1/texmacs.1.gz
%{_libexecdir}
##{_libdir}
%doc %{_datadir}/TeXmacs/examples
%doc %{_datadir}/TeXmacs/doc
%doc %{_datadir}/TeXmacs/LICENSE
%doc %{_datadir}/TeXmacs/texts
/usr/libexec
%{_datadir}/icons/hicolor/*/*/*texmacs*
/usr/share/pixmaps/TeXmacs.xpm
/usr/share/applications/texmacs.desktop
/usr/share/mime/packages/texmacs.xml
%dir %{_datadir}/TeXmacs
##{_datadir}/TeXmacs/bin
%{_datadir}/TeXmacs/fonts
%{_datadir}/TeXmacs/langs
%{_datadir}/TeXmacs/packages
%{_datadir}/TeXmacs/misc
%{_datadir}/TeXmacs/plugins
%{_datadir}/TeXmacs/progs
%{_datadir}/TeXmacs/styles
%changelog
* Fri Jun 28 2019 Joris van der Hoeven <vdhoeven@texmacs.org>
- Many bug fixes
- Extended Css stylability when exporting to Html
- Drag and drop for images
- Unification of beamer and poster styles, work in progress
- Automatic retrieval of artwork from texmacs.org
- New background patterns and pictures
- Experimental pattern effects
- Experimental Sparkle support under MacOS
- Experimental and partial support for Git as a versioning tool
- Experimantal Graph plug-in for graphs drawn by various external tools
- User interface for new features in educational styles