Skip to content

Commit 6c7d9af

Browse files
committed
Add packages/build-rpm.sh
1 parent fab00b3 commit 6c7d9af

1 file changed

Lines changed: 96 additions & 0 deletions

File tree

packages/build-rpm.sh

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
#!/usr/bin/env sh
2+
3+
set -e
4+
5+
#MODE_NO_CLEAN=1
6+
7+
PACKAGE_ARCH=$(uname -m)
8+
PACKAGE_INSTALL_PREFIX=/usr
9+
SCRIPT_DIR=$(realpath "$(dirname "$0")")
10+
SOURCE_DIR=$(realpath "$SCRIPT_DIR"/../)
11+
12+
__NESTED__=1
13+
. ${SCRIPT_DIR}/build-helper.sh
14+
15+
clean()
16+
{
17+
if [ -f "${PACKAGE_FILE_NAME}.rpm" ]; then
18+
echo "Remove the old package ${PACKAGE_FILE_NAME}.rpm"
19+
rm "${PACKAGE_FILE_NAME}.rpm"
20+
fi
21+
22+
if [ -d "$BUILD_DIR/rpmbuild" ]; then
23+
echo "Remove $BUILD_DIR/rpmbuild"
24+
rm -r "$BUILD_DIR/rpmbuild"
25+
fi
26+
}
27+
28+
pre_build()
29+
{
30+
QMAKE_OPTIONS="$QMAKE_OPTIONS PREFIX=$PACKAGE_INSTALL_PREFIX"
31+
echo "$QMAKE -r $QMAKE_OPTIONS ${SOURCE_DIR}"
32+
$QMAKE -r $QMAKE_OPTIONS ${SOURCE_DIR}
33+
}
34+
35+
build() {
36+
make -j $MAKE_JOBS
37+
}
38+
39+
i18n()
40+
{
41+
make -j $MAKE_JOBS i18n
42+
}
43+
44+
deploy()
45+
{
46+
make INSTALL_ROOT="$PACKAGE_DIR" install
47+
}
48+
49+
package()
50+
{
51+
# https://docs.fedoraproject.org/en-US/packaging-guidelines/RPMMacros
52+
cat <<EOF > "$BUILD_DIR/$PACKAGE_NAME.spec"
53+
Summary: CHM and EBOOK viewer
54+
Name: uchmviewer
55+
Version: ${PACKAGE_VERSION}
56+
Release: 0
57+
License: GPL-3.0-or-later
58+
Group: Applications/Office
59+
Packager: nicegorov@yandex.ru
60+
URL: https://github.com/eBookProjects/uChmViewer
61+
62+
%description
63+
This is a fork of the kchmviewer with some improvements. KchmViewer is a
64+
chm (MS HTML help file format) and epub viewer, written in C++.
65+
66+
%files
67+
%doc AUTHORS.md ChangeLog NEWS.md README.md
68+
${PACKAGE_INSTALL_PREFIX}/bin/uchmviewer
69+
${PACKAGE_INSTALL_PREFIX}/share/applications/uchmviewer.desktop
70+
${PACKAGE_INSTALL_PREFIX}/share/icons/hicolor/128x128/apps/uchmviewer.png
71+
${PACKAGE_INSTALL_PREFIX}/share/locale/cs/LC_MESSAGES/uchmviewer.mo
72+
${PACKAGE_INSTALL_PREFIX}/share/locale/de/LC_MESSAGES/uchmviewer.mo
73+
${PACKAGE_INSTALL_PREFIX}/share/locale/fr/LC_MESSAGES/uchmviewer.mo
74+
${PACKAGE_INSTALL_PREFIX}/share/locale/hu/LC_MESSAGES/uchmviewer.mo
75+
${PACKAGE_INSTALL_PREFIX}/share/locale/it/LC_MESSAGES/uchmviewer.mo
76+
${PACKAGE_INSTALL_PREFIX}/share/locale/nl/LC_MESSAGES/uchmviewer.mo
77+
${PACKAGE_INSTALL_PREFIX}/share/locale/pl/LC_MESSAGES/uchmviewer.mo
78+
${PACKAGE_INSTALL_PREFIX}/share/locale/pt_BR/LC_MESSAGES/uchmviewer.mo
79+
${PACKAGE_INSTALL_PREFIX}/share/locale/ru/LC_MESSAGES/uchmviewer.mo
80+
${PACKAGE_INSTALL_PREFIX}/share/locale/sv/LC_MESSAGES/uchmviewer.mo
81+
${PACKAGE_INSTALL_PREFIX}/share/locale/tr/LC_MESSAGES/uchmviewer.mo
82+
${PACKAGE_INSTALL_PREFIX}/share/locale/uk/LC_MESSAGES/uchmviewer.mo
83+
${PACKAGE_INSTALL_PREFIX}/share/locale/zh_CN/LC_MESSAGES/uchmviewer.mo
84+
${PACKAGE_INSTALL_PREFIX}/share/locale/zh_TW/LC_MESSAGES/uchmviewer.mo
85+
86+
%changelog
87+
88+
EOF
89+
90+
title2 "rpmbuild"
91+
echo "rpmbuild --bb --buildroot "$PACKAGE_DIR" --define "_topdir $BUILD_DIR/rpmbuild" "$BUILD_DIR/$PACKAGE_NAME.spec""
92+
rpmbuild --bb --buildroot "$PACKAGE_DIR" --define "_topdir $BUILD_DIR/rpmbuild" "$BUILD_DIR/$PACKAGE_NAME.spec"
93+
mv "$BUILD_DIR/rpmbuild/RPMS/$PACKAGE_ARCH/"*.rpm $PWD/${PACKAGE_FILE_NAME}.rpm
94+
}
95+
96+
create package

0 commit comments

Comments
 (0)