1# Determine Windows BITS (32/64) from name (mingw32-.../ming64-...) 2%define WINDOWS_BITS %(echo %name | grep 64 >/dev/null 2>&1 && echo "64" || echo "32") 3 4 5%define mingw mingw64 6%define __strip %{_mingw64_strip} 7%define __objdump %{_mingw64_objdump} 8%define _use_internal_dependency_generator 0 9#define __find_requires %%{_mingw64_findrequires} 10%define __find_provides %{_mingw64_findprovides} 11#define __os_install_post #{_mingw64_debug_install_post} \ 12# #{_mingw64_install_post} 13%define bindir %{_mingw64_bindir} 14 15# flavors: 16# If name contains debug, enable debug during build. 17# If name contains prevista, build for windows < vista. 18%define flavors release debug 19%define dirs_with_unittests lib findlib 20%define bareos_configs bareos-dir.d/ bareos-fd.d/ bareos-sd.d/ tray-monitor.d/ bconsole.conf 21 22Name: %{mingw}-winbareos 23Version: 0.0.0 24Release: 0 25Summary: Bareos build for Windows 26License: LGPLv2+ 27Group: Development/Libraries 28URL: http://bareos.org 29BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 30BuildArch: noarch 31#!BuildIgnore: post-build-checks 32Source0: bareos-%{version}.tar.bz2 33 34%define addonsdir /bareos-addons/ 35BuildRequires: bareos-addons 36 37BuildRequires: %{mingw}-filesystem 38BuildRequires: %{mingw}-cross-gcc 39BuildRequires: %{mingw}-cross-gcc-c++ 40BuildRequires: %{mingw}-cross-binutils 41BuildRequires: %{mingw}-cross-pkg-config 42BuildRequires: %{mingw}-libqt5-qtbase 43BuildRequires: %{mingw}-libqt5-qtbase-devel 44BuildRequires: %{mingw}-cross-libqt5-qmake 45BuildRequires: %{mingw}-libwinpthread1 46BuildRequires: %{mingw}-winpthreads-devel 47BuildRequires: %{mingw}-libopenssl-devel 48BuildRequires: %{mingw}-libopenssl 49BuildRequires: %{mingw}-openssl 50BuildRequires: %{mingw}-libdb-devel 51BuildRequires: %{mingw}-libgcc 52BuildRequires: %{mingw}-libtool 53BuildRequires: %{mingw}-libgcrypt20 54BuildRequires: %{mingw}-cross-nsis 55BuildRequires: %{mingw}-gcc 56BuildRequires: %{mingw}-gcc-c++ 57BuildRequires: %{mingw}-zlib-devel 58BuildRequires: %{mingw}-zlib 59BuildRequires: %{mingw}-libpng16-16 60BuildRequires: %{mingw}-libstdc++ 61BuildRequires: %{mingw}-readline 62BuildRequires: %{mingw}-readline-devel 63BuildRequires: %{mingw}-lzo 64BuildRequires: %{mingw}-lzo-devel 65BuildRequires: %{mingw}-libfastlz 66BuildRequires: %{mingw}-libfastlz-devel 67BuildRequires: %{mingw}-libsqlite3-0 68BuildRequires: %{mingw}-libsqlite-devel 69BuildRequires: %{mingw}-gtest-devel 70BuildRequires: %{mingw}-libgtest0 71BuildRequires: %{mingw}-libjansson 72BuildRequires: %{mingw}-libjansson-devel 73 74BuildRequires: bc 75BuildRequires: less 76BuildRequires: procps 77BuildRequires: sed 78BuildRequires: vim 79BuildRequires: cmake 80 81%description 82Base package for Bareos Windows build. 83 84%package release 85Summary: bareos 86%description release 87Bareos for Windows versions >= Windows Vista 88 89%package debug 90Summary: bareos 91%description debug 92Bareos Debug for Windows versions >= Windows Vista 93 94 95%prep 96%setup -q -n bareos-%{version} 97 98# unpack addons 99for i in `ls %addonsdir`; do 100 tar xvf %addonsdir/$i 101done 102 103for flavor in %flavors; do 104 mkdir $flavor 105done 106 107 108%build 109 110for flavor in %flavors; do 111 112 #WINDOWS_BITS=$(echo %name | grep 64 >/dev/null 2>&1 && echo "64" || echo "32") 113 WINDOWS_VERSION=$(echo $flavor | grep release >/dev/null && echo 0x600 || echo 0x500) 114 pushd $flavor 115 %{_mingw64_cmake} \ 116 -DCMAKE_INSTALL_BINDIR:PATH=%{_mingw64_bindir} \ 117 -Dsqlite3=yes \ 118 -Dpostgresql=yes \ 119 -Dtraymonitor=yes \ 120 -DWINDOWS_BITS=%WINDOWS_BITS \ 121 -DWINDOWS_VERSION=${WINDOWS_VERSION} \ 122 -Ddb_password=@db_password@ \ 123 -Ddb_port=@db_port@ \ 124 -Ddb_user=@db_user@ \ 125 -Ddir_password=@dir_password@ \ 126 -Dfd_password=@fd_password@ \ 127 -Dsd_password=@sd_password@ \ 128 -Dmon_dir_password=@mon_dir_password@ \ 129 -Dmon_fd_password=@mon_fd_password@ \ 130 -Dmon_sd_password=@mon_sd_password@ \ 131 -Dsd_password=@sd_password@ \ 132 -DVERSION_STRING=%version \ 133 .. 134 135 make %{?jobs:-j%jobs} DESTDIR=%{buildroot}/${flavor}-%WINDOWS_BITS install 136 137 popd 138 139done 140 141 142%install 143#for flavor in %flavors; do 144# pushd $flavor 145# make DESTDIR=%{buildroot} install 146# popd 147#done 148 149%clean 150rm -rf $RPM_BUILD_ROOT 151 152%files 153 154 155%files release 156%defattr(-,root,root) 157/release-%WINDOWS_BITS 158 159%files debug 160/debug-%WINDOWS_BITS 161 162%changelog 163