%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 %{name}%{major} %global devname %{name}-d %global cloudlib %{name}%{major}-cloud %global guilib %{name}%{major}-lib-gui %global hidgtklib %{name}%{major}-hid-gtk2-gdk %global hidgtkgl %{name}%{major}-hid-gtk2-gl %global hidgtk4gl %{name}%{major}-hid-gtk4-gl %global gtklib %{name}%{major}-lib-gtk %global lesslib %{name}%{major}-hid-lesstif %global gllib %{name}%{major}-lib-gl %global pixmap %{name}%{major}-pixmap ## 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 %define rel 3 Name: librnd Version: 4.3.1 Release: 3 Summary: Ringdove 2D CAD library framework Group: Sciences/Other License: GPLv2+ Url: http://www.repo.hu/projects/%{name} Source0: http://www.repo.hu/projects/%{name}/releases/%{name}%{?svn:-%{svn}}%{!?svn:-%{version}}.tar.gz Source1: mk-spec Source2: spec.tpl Source3: mk-tar Source4: packaging.README BuildRequires: libfungw-devel BuildRequires: libgenht-devel BuildRequires: libstroke-devel BuildRequires: motif-devel BuildRequires: pkgconfig(gtk+-2.0) BuildRequires: pkgconfig(gtk4) BuildRequires: pkgconfig(gtkglext-1.0) BuildRequires: pkgconfig(gdlib) %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 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: %{_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: %{_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: %{_lib}rnd%{major} = %{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: %{_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: %{_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: %{_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: %{_lib}rnd%{major} = %{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: %{_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: %{_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: %{_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 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 make %check make test %install %make_install %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 %{_libdir}/*.a %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 doc %doc %{_docdir}/%{name}%{major}/