%global _disable_ld_no_undefined 1 # Build with --debug (1) or --symbols (0) %global debug 0 %global plugindir %{_libdir}/%{name}%{major}/plugins %global major 4 %global libname %{_lib}rnd%{major} %global devname %{_lib}rnd-devel %global cloudlib %{_lib}rnd%{major}-cloud %global guilib %{_lib}rnd%{major}-lib-gui %global hidgtklib %{_lib}rnd%{major}-hid-gtk2-gdk %global hidgtkgl %{_lib}rnd%{major}-hid-gtk2-gl %global hidgtk4gl %{_lib}rnd%{major}-hid-gtk4-gl %global gtklib %{_lib}rnd%{major}-lib-gtk %global lesslib %{_lib}rnd%{major}-hid-lesstif %global gllib %{_lib}rnd%{major}-lib-gl %global pixmap %{_lib}rnd%{major}-pixmap %global static %{_lib}rnd%{major}-static ## NOTE This spec is auto-generated - only edit Version, # Release, and svn revision here. See packaging.README. # # For new svn snapshots: # Run ./mk-tar in SOURCES and note the svn revision in output. # Uncomment (replace # with percent) and edit svn define to new revision. # # For new full releases: # Update the tarball # Replace percent sign with # in the 'define svn' line # Edit the Version and Release # Save this spec and close it. # Now run ./librnd-mk-spec from SOURCES to totally re-create # this spec file with any upstream changes. # Comment out if not svn snapshot #define svn %global rel 3 Name: librnd Version: 4.3.1 Release: 3%{?dist} Summary: Ringdove 2D CAD library framework Group: Sciences/Other License: GPL-2.0-or-later URL: http://www.repo.hu/projects/%{name} Source0: %{URL}/releases/%{name}%{?svn:-%{svn}}%{!?svn:-%{version}}.tar.gz Source1: mk-spec Source2: spec.tpl Source3: mk-tar Source4: packaging.README BuildRequires: gcc make BuildRequires: libgenht-devel libfungw-devel BuildRequires: libstroke-devel motif-devel BuildRequires: pkgconfig(gtk+-2.0) BuildRequires: pkgconfig(gtk4) BuildRequires: pkgconfig(gtkglext-1.0) BuildRequires: pkgconfig(gdlib) BuildRequires: pkgconfig(epoxy) %description The Ringdove library (shared objects) contains the basic infrastructure for 2D interactive+batch CAD applications: config, HID, polygon, menu, plugin system. %package -n %{libname} Summary: Ringdove 2D CAD library framework Requires: %{name}%{?_isa} = %{version}-%{release} Provides: librnd%{major} = %{version} %description -n %{libname} The Ringdove library (shared objects) contains the basic infrastructure for 2D interactive+batch CAD applications: config, HID, polygon, menu, plugin system. %package -n %{devname} Summary: Ringdove 2D CAD library, files for development Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major} = %{version}-%{release} Provides: %{name}-devel = %{version}-%{release} Provides: %{name}%{major}-devel = %{version}-%{release} %description -n %{devname} Headers, templates, scripts for compiling Ringdove applications. %package -n %{cloudlib} Summary: Networking plugins for accessing remote resources Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major} = %{version}-%{release} %description -n %{cloudlib} Support library plugin for 'cloud' footprint/symbol access plugin that integrates remote, web access resources like edakrill or gedasymbols.org. %package -n %{guilib} Summary: Support library for building the GUI Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major}%{?_isa} = %{version}-%{release} %description -n %{guilib} Provides librnd specific dialog boxes (e.g. fontsel) and top window GUI elements. %package -n %{hidgtklib} Summary: GUI: gtk2, software render Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major} = %{version}-%{release} Requires: %{_lib}rnd%{major}-lib-gtk = %{version}-%{release} #Obsoletes: pcb-rnd-hid-gtk2-gdk < 3.0.0 %description -n %{hidgtklib} Software rendering on gtk2, using the gdk API. %package -n %{hidgtkgl} Summary: GUI: gtk2, OpenGL Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major} = %{version}-%{release} Requires: %{_lib}rnd%{major}-lib-gtk = %{version}-%{release} Requires: %{_lib}rnd%{major}-lib-gl = %{version}-%{release} #Obsoletes: pcb-rnd-hid-gtk2-gl < 3.0.0 %description -n %{hidgtkgl} Hardware accelerated (opengl) rendering on gtk2. %package -n %{gtklib} Summary: Support library for building the GUI with gtk Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major} = %{version}-%{release} Requires: %{_lib}rnd%{major}-lib-gui = %{version}-%{release} #Obsoletes: pcb-rnd-lib-gtk < 3.0.0 %description -n %{gtklib} Provides the common gtk code (e.g. dialog box engine, input handling) for any gtk based HID plugin. %package -n %{hidgtk4gl} Summary: GUI: gtk4, OpenGL Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major}-lib-gl = %{version}-%{release} Requires: %{_lib}rnd%{major}-lib-gui = %{version}-%{release} %description -n %{hidgtk4gl} Hardware accelerated (opengl) rendering on gtk4. %package -n %{lesslib} Summary: GUI: motif/lesstif, software render Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major} = %{version}-%{release} Requires: %{_lib}rnd%{major}-lib-gui = %{version}-%{release} #Obsoletes: pcb-rnd-hid-lesstif < 3.0.0 %description -n %{lesslib} Lightweight GUI and software rendering using the motif (lesstif) toolkit. %package -n %{gllib} Summary: Support library for rendering with opengl%{hidgtkgl} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major} = %{version}-%{release} #Obsoletes: pcb-rnd-lib-gl < 3.0.0 %description -n %{gllib} Provides plugins for driving an OpenGL output, rendering the drawing on OpenGL. %package -n %{pixmap} Summary: Import and export pixmap images Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{_lib}rnd%{major} = %{version}-%{release} %description -n %{pixmap} Low level support for PNG/JPEG/GIF export plugins, low level import pixmap objects using libgd. %package -n %{static} Summary: Static libraries Requires: %{name}%{?_isa} = %{version}-%{release} %description -n %{static} Static library files. %package doc Summary: Documentation BuildArch: noarch %description doc Developer documentation for using librnd. %prep %autosetup -p1 -n %{name}%{?svn:-%{svn}}%{!?svn:-%{version}} %build %set_build_flags export DEFAULT_CFLAGS="%{build_cflags}" export DEFAULT_LDFLAGS="%{build_ldflags}" ./configure \ --CFLAGS="%{build_cflags} -Wno-incompatible-pointer-types -Wno-implicit-int -Wno-int-conversion -Wno-deprecated-declarations -fno-lto" \ --LDFLAGS="%{build_ldflags}" \ --libarchdir=%{_lib} \ --all=disable --buildin-script --buildin-diag_rnd --buildin-lib_gensexpr --buildin-hid_batch --buildin-lib_portynet --buildin-lib_exp_text --buildin-import_pixmap_pnm --plugin-lib_hid_gl --plugin-hid_gtk2_gdk --plugin-lib_wget --plugin-lib_gtk4_common --plugin-lib_hid_common --plugin-hid_gtk2_gl --plugin-lib_gtk2_common --plugin-import_pixmap_gd --plugin-hid_lesstif --plugin-hid_gtk4_gl --plugin-irc --plugin-lib_exp_pixmap \ %if %{debug} == 1 prefix=%{_prefix} --debug %else prefix=%{_prefix} --symbols %endif %install make %make_install chmod +x %{buildroot}%{_libdir}/%{name}4/action_compiler.sh chmod +x %{buildroot}%{_libdir}/%{name}4/dump_actions_to_html.sh %check make test %files %dir %{_includedir}/%{name}4 %dir %{_includedir}/%{name}4/%{name} %dir %{_libdir}/%{name}4 %dir %{_datadir}/%{name}4 %dir %{plugindir} %license COPYING %doc AUTHORS README Release_notes %files -n %{libname} %{_libdir}/%{name}-*.so.%{major}{.,*} %files -n %{devname} %{_includedir}/%{name}4/%{name}/* %{_datadir}/%{name}4/%{name}.mak %{_datadir}/%{name}4/plugin.state %{_datadir}/%{name}4/%{name}_packages.sh %{_libdir}/%{name}4/scconfig %{_libdir}/*.so %{_libdir}/%{name}4/puplug %{_libdir}/%{name}4/sphash %{_libdir}/%{name}4/plugins/map_plugins.sh %{_libdir}/%{name}4/devhelpers %{_libdir}/%{name}4/action_compiler.sh %{_libdir}/%{name}4/build_ps.sh %{_libdir}/%{name}4/dump_actions_to_html.sh %{_libdir}/%{name}4/gen_formats.sh %{_libdir}/%{name}4/keylist.sh %{_libdir}/%{name}4/menu2svg.sh %files -n %{cloudlib} %{plugindir}/lib_wget.pup %{plugindir}/lib_wget.so %files -n %{guilib} %{plugindir}/irc.pup %{plugindir}/irc.so %{plugindir}/lib_hid_common.pup %{plugindir}/lib_hid_common.so %files -n %{hidgtklib} %{plugindir}/hid_gtk2_gdk.pup %{plugindir}/hid_gtk2_gdk.so %files -n %{hidgtkgl} %{plugindir}/hid_gtk2_gl.pup %{plugindir}/hid_gtk2_gl.so %files -n %{hidgtk4gl} %{plugindir}/hid_gtk4_gl.pup %{plugindir}/hid_gtk4_gl.so %{plugindir}/lib_gtk4_common.pup %{plugindir}/lib_gtk4_common.so %files -n %{gtklib} %{plugindir}/lib_gtk2_common.pup %{plugindir}/lib_gtk2_common.so %files -n %{lesslib} %{plugindir}/hid_lesstif.pup %{plugindir}/hid_lesstif.so %files -n %{gllib} %{plugindir}/lib_hid_gl.pup %{plugindir}/lib_hid_gl.so %files -n %{pixmap} %{plugindir}/import_pixmap_gd.pup %{plugindir}/import_pixmap_gd.so %{plugindir}/lib_exp_pixmap.pup %{plugindir}/lib_exp_pixmap.so %files -n %{static} %{_libdir}/*.a %files doc %doc %{_docdir}/%{name}%{major}/ %changelog * Sun Jan 19 2025 Pappy Packager - 4.3.1-3 - Fedora 41