]> git.street.me.uk Git - andy/viking.git/blob - mingw-viking.spec.in
[WINDOWS] Cross build
[andy/viking.git] / mingw-viking.spec.in
1 # Public Domain CC0
2 %{?mingw_package_header}
3 %define _pkg_name viking
4 Name:           mingw32-%{_pkg_name}
5 Version:        @VERSION@
6 Release:        1
7 Summary:        GPS data editor and analyzer
8 Group:          Applications/Productivity
9 License:        GPLv2
10 URL:            http://sourceforge.net/projects/viking/
11 Source0:        %{_pkg_name}-%{version}.tar.gz
12 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
13 BuildArch:      noarch
14
15 # Only 32bit ATM
16
17 # Programs to enable the cross build
18 BuildRequires:  mingw32-filesystem
19 BuildRequires:  mingw32-binutils
20 BuildRequires:  mingw32-runtime
21 BuildRequires:  mingw32-cross-binutils
22 BuildRequires:  mingw32-cross-gcc
23 BuildRequires:  mingw32-cross-pkg-config
24 BuildRequires:  mingw32-gettext-tools
25 BuildRequires:  mingw32-gnome-doc-utils-devel
26 BuildRequires:  intltool
27 BuildRequires:  gdk-pixbuf-devel
28 # ^For gdk-pixbuf-csource
29
30 # Code
31 # Not worried about versions ATM
32 BuildRequires:  mingw32-gtk2-devel
33 # ATM gtk2-devel auto includes at least devel versions of glib2, gobject, zlib and more
34
35 # Mandatory libraries
36 BuildRequires:  mingw32-libexpat-devel
37 BuildRequires:  mingw32-libcurl-devel
38 # Optional libraries
39 BuildRequires:  mingw32-libexif-devel
40 BuildRequires:  mingw32-libbz2-devel
41 BuildRequires:  mingw32-file-devel
42 BuildRequires:  mingw32-libmagic1
43 BuildRequires:  mingw32-libbz2-1
44 BuildRequires:  mingw32-sqlite-devel
45 BuildRequires:  mingw32-libzip-devel
46
47 # Libs for runtime (and thus also available for the NSIS installer to include the dependencies)
48 Requires:       mingw32-gtk2
49 Requires:       mingw32-libexpat1
50 Requires:       mingw32-libcurl4
51 Requires:       mingw32-libexif12
52 Requires:       mingw32-libsqlite3-0
53 Requires:       mingw32-libzip4
54 # Currently running makensis in seperate script - so you will need it then
55 #Requires:      mingw32-cross-nsis
56
57
58 %description
59 Viking is a free/open source program to manage GPS data.
60 You can import, plot and create tracks, routes and waypoints, show OSM and other maps, see real-time GPS position, control items, etc.
61 Other advanced capabilities include Geotagging Images, generate Maps (using Mapnik), Upload and Download tracks from OSM, Routing from OSRM or Google, Name Searches from OSM Nominatim or Google and more.
62 It is written in mainly in C with some C++ and uses the GTK+2 toolkit.
63
64 #
65 # TODO 64bit version - possibly like this...
66 #
67 #%package -n mingw64-%{_pkg_name}
68 #Summary:       %{summary}
69 #
70 #%description -n mingw64-%{_pkg_name}
71 #%{description}
72 %prep
73 %setup -q -n %{_pkg_name}-%{version}
74
75 %build
76 # Create Icon
77 pushd win32/installer/pixmaps
78 %{_mingw32_windres} viking_icon.rc -o viking_icon.o
79 popd
80
81 #
82 # Specifics for Windows build - i.e. no Mapnik, no gexiv2 & no GPSD
83 %{_mingw32_configure}\
84   --with-libexif \
85   --disable-realtime-gps-tracking \
86   --disable-mapnik \
87   --disable-scrollkeeper \
88   --enable-windows \
89   CFLAGS="-DWINDOWS -DWIN32 -mwindows"
90
91 %{_mingw32_make} %{?_smp_mflags}
92
93 %install
94 pushd src
95 %{_mingw32_strip} -g %{_pkg_name}.exe
96 popd
97
98 %make_install
99
100 %find_lang %{_pkg_name}
101
102 %clean
103 #rm -rf %{buildroot}
104
105 %files -f %{_pkg_name}.lang
106 %defattr(-,root,root)
107 %doc AUTHORS ChangeLog COPYING NEWS README doc/
108 %{_mingw32_bindir}/*%{_pkg_name}.exe
109 %{_mingw32_datadir}/applications/%{_pkg_name}.desktop
110 %{_mingw32_datadir}/%{_pkg_name}
111 %{_mingw32_datadir}/icons/hicolor/*/apps/%{_pkg_name}.*
112 %exclude %{_mingw32_datadir}/icons/hicolor/icon-theme.cache
113 #%{_mingw32_mandir}/man1/*
114
115 %changelog