Name: fox
# http://www.fox-toolkit.org/faq.html#VERSION
# For now, use stable one
Version: 1.6.53
Release: 1%{?dist}
Summary: C++ based Toolkit for developing Graphical User Interfaces
# http://lists.fedoraproject.org/pipermail/legal/2010-October/001419.html
# Note that 1.7.x has switched to LGPLv3+ with exceptions
License: LGPLv2+ with exceptions
URL: http://www.fox-toolkit.org/
Source0: http://ftp.fox-toolkit.org/pub/%{name}-%{version}.tar.gz
# Change Adie.stx path
Patch0: fox-1.6.49-adie-syspath.patch
BuildRequires: bzip2-devel
BuildRequires: desktop-file-utils
BuildRequires: fontconfig-devel
BuildRequires: freetype-devel
BuildRequires: libjpeg-turbo-devel
BuildRequires: libGL-devel
BuildRequires: libGLU-devel
BuildRequires: libpng-devel
BuildRequires: libtiff-devel
BuildRequires: libX11-devel
BuildRequires: libXcursor-devel
BuildRequires: libXext-devel
BuildRequires: libXfixes-devel
BuildRequires: libXft-devel
BuildRequires: libXi-devel
BuildRequires: libXrandr-devel
BuildRequires: libXrender-devel
# 1.7.x can use libwebp
#BuildRequires: libwebp-devel
BuildRequires: zlib-devel
# Due to Patch1
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libtool
%description
FOX is a C++ based Toolkit for developing Graphical User Interfaces
easily and effectively. It offers a wide, and growing, collection of
Controls, and provides state of the art facilities such as drag and drop,
selection, as well as OpenGL widgets for 3D graphical manipulation.
FOX also implements icons, images, and user-convenience features such as
status line help, and tooltips. Tooltips may even be used for 3D
objects.
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?isa} = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package utils
Summary: Utility applications based on %{name}
Requires: %{name}%{?isa} = %{version}-%{release}
# Note that 1.7.x has switched to GPLv3+
License: GPLv2+
%description utils
This package contains some utility applications based on
%{name}.
%package doc
Summary: Documentation files for %{name}
Requires: %{name} = %{version}-%{release}
BuildArch: noarch
%description doc
This package contains some documentation files for
%{name}.
%prep
%setup -q
%patch0 -p1 -b .syspath
# Honor Fedora compilar flags
touch -r configure.ac{,.timestamp}
sed -i.flags \
-e '\@^CXXFLAGS=""@d' \
configure.ac configure
touch -r configure.ac{.timestamp,}
for f in \
AUTHORS \
doc/{styles,menu}.css
do
mv $f{,.iso}
iconv -f ISO-8859-1 -t UTF-8 -o $f{,.iso}
touch -r $f{.iso,}
rm -f $f.iso
done
%build
%configure \
--disable-static \
%if 0
--enable-webp \
%endif
%{nil}
make %{?_smp_mflags}
%install
%make_install \
INSTALL="install -p"
rm -f %{buildroot}%{_libdir}/lib*.la
# Change Adie.stx path
mkdir -p %{buildroot}%{_datadir}/%{name}
mv %{buildroot}%{_bindir}/Adie.stx %{buildroot}%{_datadir}/%{name}/
chmod 0644 %{buildroot}%{_datadir}/%{name}/Adie.stx
# Make fox-config arch-dependent
mv \
%{buildroot}/%{_bindir}/fox-config \
%{buildroot}/%{_bindir}/fox-config.$(arch)
cat > %{buildroot}/%{_bindir}/fox-config <<EOF
#!/bin/sh
exec %{_bindir}/fox-config.\$(arch) \$@
EOF
chmod 0755 %{buildroot}%{_bindir}/fox-config
# Rename too generic names
# Create desktop file for GUI
mkdir -p %{buildroot}%{_libexecdir}/fox
mkdir -p %{buildroot}%{_datadir}/applications
for bin in %{buildroot}%{_bindir}/*
do
name=$(basename $bin)
[ "${name%.stx}" = "${name}" ] || continue
[ "${name#fox-config}" = "${name}" ] || continue
mv %{buildroot}%{_bindir}/${name} %{buildroot}%{_libexecdir}/fox/
cat > %{buildroot}%{_bindir}/fox-${name} <<EOF
#!/bin/sh
export PATH=%{_libexecdir}/%{name}:\$PATH
exec ${name} \$@
EOF
chmod 0755 %{buildroot}%{_bindir}/fox-${name}
mv %{buildroot}/%{_mandir}/man1/{,fox-}$name.1
[ "$name" = reswrap ] && continue
[ "$name" = adie ] && EXTRA_CATEGORY="TextEditor;"
cat > %{buildroot}%{_datadir}/applications/fox-${name}.desktop <<EOF
[Desktop Entry]
Name=fox-${name}
Comment=${name}
TryExec=fox-${name}
Exec=fox-${name}
Terminal=false
Type=Application
Categories=Utility;$EXTRA_CATEGORY
EOF
desktop-file-validate %{buildroot}%{_datadir}/applications/fox-${name}.desktop
done
# Move html files to -doc
rm -rf doc-files
mkdir doc-files
mv %{buildroot}%{_docdir}/%{name}-*/html doc-files
rm -f doc-files/html/filter.pl
%check
# Binary files created under tests/ directory are actually GUI test
# program, so nothing can do here.
exit 0
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc AUTHORS
%doc LICENSE*
%doc README
%dir %{_datadir}/%{name}
%{_libdir}/libFOX-1.6.so.*
%{_libdir}/libCHART-1.6.so.*
%files devel
%doc ADDITIONS
%doc TRACING
%{_bindir}/fox-config*
%{_libdir}/pkgconfig/fox.pc
%{_libdir}/libFOX-1.6.so
%{_libdir}/libCHART-1.6.so
%{_includedir}/fox-1.6/
%files utils
%{_bindir}/fox-*
%exclude %{_bindir}/fox-config*
%dir %{_libexecdir}/%{name}
%{_libexecdir}/%{name}/*
%{_datadir}/%{name}/*.stx
%{_datadir}/applications/*desktop
%{_mandir}/man1/fox-*
%files doc
%doc doc-files/html
%changelog
* Sun Dec 11 2016 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.6.53-1
- 1.6.53
* Sat Dec 3 2016 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.6.52-1
- 1.6.52
* Fri Jun 24 2016 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.6.51-1
- 1.6.51
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.50-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.50-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 1.6.50-4
- Rebuilt for GCC 5 C++11 ABI change
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.50-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.50-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Fri May 30 2014 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.6.50-1
- Update to 1.6.50
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.49-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Fri May 3 2013 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.6.49-2
- Fix libCHART.so linkage to erase undefined non-weak symbols
- Fix license tag for stable tarball
- Modify files entry for documentation
* Tue Apr 30 2013 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.6.49-1
- Initial packaging