RPM + tito + copr support
This commit is contained in:
parent
b63e5f5f9f
commit
f4334732da
3
.tito/packages/.readme
Normal file
3
.tito/packages/.readme
Normal file
|
@ -0,0 +1,3 @@
|
|||
the .tito/packages directory contains metadata files
|
||||
named after their packages. Each file has the latest tagged
|
||||
version and the project's relative directory.
|
5
.tito/tito.props
Normal file
5
.tito/tito.props
Normal file
|
@ -0,0 +1,5 @@
|
|||
[buildconfig]
|
||||
builder = tito.builder.Builder
|
||||
tagger = tito.tagger.VersionTagger
|
||||
changelog_do_not_remove_cherrypick = 0
|
||||
changelog_format = %s (%ae)
|
|
@ -67,8 +67,8 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||
|
||||
find_package(Vala 0.30 REQUIRED)
|
||||
if(VALA_VERSION VERSION_EQUAL "0.36.0")
|
||||
# Due to a bug on 0.36.0, we need to disable FAST_VAPI
|
||||
if(VALA_VERSION VERSION_GREATER "0.34.90" AND VALA_VERSION VERSION_LESS "0.36.1")
|
||||
# Due to a bug on 0.36.0 (and pre-releases), we need to disable FAST_VAPI
|
||||
set(DISABLE_FAST_VAPI yes)
|
||||
endif()
|
||||
|
||||
|
|
7
configure
vendored
7
configure
vendored
|
@ -59,7 +59,7 @@ done
|
|||
|
||||
if [ -d ".git" ]; then
|
||||
git submodule update --init 2>/dev/null
|
||||
elif [ -x $(which git) ]; then
|
||||
else
|
||||
tmp=0
|
||||
for i in $(cat .gitmodules | grep -n submodule | awk -F ':' '{print $1}') $(wc -l .gitmodules | awk '{print $1}'); do
|
||||
if ! [ $tmp -eq 0 ]; then
|
||||
|
@ -70,7 +70,8 @@ elif [ -x $(which git) ]; then
|
|||
branch=$(echo "$def" | grep '^branch=' | awk -F '=' '{print $2}')
|
||||
|
||||
if ! ls "$path"/* >/dev/null 2>/dev/null; then
|
||||
if ! [ -x $(which git) ]; then
|
||||
git=$(which git)
|
||||
if ! [ $? -eq 0 ] || ! [ -x $git ]; then
|
||||
echo "Failed retrieving missing files"
|
||||
exit 5
|
||||
fi
|
||||
|
@ -150,7 +151,7 @@ mkdir -p build
|
|||
cd build
|
||||
|
||||
echo "$cmake_type" > .cmake_type
|
||||
cmake -G "$cmake_type" -DCMAKE_INSTALL_PREFIX="$PREFIX" -DENABLED_PLUGINS="$ENABLED_PLUGINS" -DDISABLED_PLUGINS="$DISABLED_PLUGINS" -DVALA_EXECUTABLE="$VALA_EXECUTABLE" -DCMAKE_VALA_FLAGS="$VALAC_FLAGS" -DDISABLE_FAST_VAPI="$DISABLE_FAST_VAPI" -DLIB_SUFFIX="$LIB_SUFFIX" -DNO_DEBUG="$NO_DEBUG" ..
|
||||
cmake -G "$cmake_type" -DCMAKE_INSTALL_PREFIX="$PREFIX" -DENABLED_PLUGINS="$ENABLED_PLUGINS" -DDISABLED_PLUGINS="$DISABLED_PLUGINS" -DVALA_EXECUTABLE="$VALA_EXECUTABLE" -DCMAKE_VALA_FLAGS="$VALAC_FLAGS" -DDISABLE_FAST_VAPI="$DISABLE_FAST_VAPI" -DLIB_SUFFIX="$LIB_SUFFIX" -DNO_DEBUG="$NO_DEBUG" .. || exit 9
|
||||
|
||||
if [ "$cmake_type" == "Ninja" ]
|
||||
then
|
||||
|
|
115
dino.spec
Normal file
115
dino.spec
Normal file
|
@ -0,0 +1,115 @@
|
|||
# To build current git tree into RPM using tito:
|
||||
# - Run `tito build --rpm --test`
|
||||
|
||||
# To build latest tagged release from git into RPM using tito:
|
||||
# - Run `tito build --rpm`
|
||||
|
||||
# To build older tagged release from git into RPM using tito:
|
||||
# - Run `tito build --rpm --tag=vVERSION`
|
||||
|
||||
# To build a tagged release from git into RPM using rpmbuild:
|
||||
# - Put version number into Version
|
||||
# - Run `spectool -g -R dino.spec`
|
||||
# - Run `rpmbuild -bb dino.spec`
|
||||
|
||||
# To build a specific git commit into RPM using rpmbuild:
|
||||
# - Put commit id into COMMIT_ID_HERE
|
||||
# - Use second (currently commented) line for Release, Source0 and %setup
|
||||
# - Run `spectool -g -R dino.spec`
|
||||
# - Run `rpmbuild -bb dino.spec`
|
||||
|
||||
%global commit COMMIT_ID_HERE
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
|
||||
Name: dino
|
||||
Version: 0
|
||||
Release: 0%{?dist}
|
||||
#Release: 0.git.%{shortcommit}%{?dist}
|
||||
Summary: Modern Jabber/XMPP Client using GTK+/Vala
|
||||
License: GPLv3
|
||||
URL: https://github.com/dino/dino
|
||||
Source0: https://github.com/dino/dino/archive/v%{version}.zip
|
||||
#Source0: https://github.com/dino/dino/archive/%{commit}.zip
|
||||
BuildRequires: vala >= 0.30
|
||||
BuildRequires: vala-tools >= 0.30
|
||||
BuildRequires: cmake
|
||||
BuildRequires: git
|
||||
BuildRequires: ninja-build
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: pkgconfig(gthread-2.0)
|
||||
BuildRequires: pkgconfig(glib-2.0) >= 2.38
|
||||
BuildRequires: pkgconfig(gio-2.0)
|
||||
BuildRequires: pkgconfig(gtk+-3.0) >= 3.22
|
||||
BuildRequires: pkgconfig(gee-0.8) >= 0.10
|
||||
BuildRequires: pkgconfig(libnotify)
|
||||
BuildRequires: pkgconfig(sqlite3)
|
||||
BuildRequires: pkgconfig(openssl)
|
||||
BuildRequires: gpgme-devel
|
||||
Requires: hicolor-icon-theme
|
||||
|
||||
%description
|
||||
Dino is an instant messaging client for the Jabber/XMPP network,
|
||||
providing a unique and modern user experience based on the latest
|
||||
technology from the GNOME project. Dino is still in early
|
||||
development and has limited features, but already has basic support
|
||||
for XMPP's latest encryption features. Future versions will provide
|
||||
a plug-in API, so that developers can easily add new optional
|
||||
features.
|
||||
|
||||
%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 plugins for %{name}.
|
||||
|
||||
%prep
|
||||
%setup -n "dino-v%{version}"
|
||||
#%setup -n "dino-%{commit}"
|
||||
|
||||
%build
|
||||
./configure --prefix="%{buildroot}%{_prefix}" --valac="%{_bindir}/valac%{?vala_version_suffix}" --lib-suffix="%{_lib}"
|
||||
make
|
||||
|
||||
%install
|
||||
make install
|
||||
desktop-file-validate %{buildroot}%{_datadir}/applications/dino.desktop
|
||||
|
||||
%post
|
||||
update-desktop-database &>/dev/null || :
|
||||
touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
|
||||
|
||||
%postun
|
||||
update-desktop-database &> /dev/null || :
|
||||
if [ $1 -eq 0 ] ; then
|
||||
touch --no-create %{_datadir}/icons/hicolor &>/dev/null
|
||||
gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor &>/dev/null || :
|
||||
glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
|
||||
fi
|
||||
|
||||
%posttrans
|
||||
gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor &>/dev/null || :
|
||||
glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
%{_bindir}/dino
|
||||
%{_libdir}/libdino.so
|
||||
%{_libdir}/libqlite.so
|
||||
%{_libdir}/libxmpp-vala.so
|
||||
%{_datadir}/dino
|
||||
%{_datadir}/applications/dino.desktop
|
||||
%{_datadir}/glib-2.0/schemas/dino.gschema.xml
|
||||
%{_datadir}/icons/hicolor/*/apps/dino.*
|
||||
%{_datadir}/icons/hicolor/*/apps/dino-*
|
||||
%{_datadir}/icons/hicolor/*/status/dino-*
|
||||
|
||||
%files devel
|
||||
%{_includedir}/*
|
||||
%{_datadir}/vala/vapi
|
||||
|
||||
%changelog
|
||||
* Fri Mar 24 2017 - 0.0
|
||||
- Initial version
|
Loading…
Reference in a new issue