RPM packaging: update build scripts

pull/3/head
François Andriot 7 years ago
parent a166e45221
commit 2a9e6e2053

@ -269,7 +269,7 @@ endif
torsocks:
# Do NOT build on RHEL 6, RHEL 7, Fedora > 20, Mageia
ifeq ($(wildcard /boot/vmlinuz*.el6* /boot/vmlinuz*.el7* /boot/vmlinuz*.fc2* /boot/mageia.dat /etc/SuSE-release),)
ifeq ($(wildcard /boot/vmlinuz*.el6* /boot/vmlinuz*.el7* /etc/fedora-release /boot/mageia.dat /etc/SuSE-release),)
$(call buildpkg,3rdparty/torsocks)
endif
@ -329,7 +329,7 @@ adept: tdebase
amarok: tdebase cmake mp4v2
$(call buildpkg,applications/amarok)
basket: tdebase
basket: tdebase tdepim
$(call buildpkg,applications/basket)
bibletime: tdebase
@ -540,7 +540,7 @@ konversation: tdebase
kooldock: tdebase
$(call buildpkg,applications/kooldock)
kopete-otr: tdebase
kopete-otr: tdebase tdenetwork
$(call buildpkg,applications/kopete-otr)
kpicosim: tdebase
@ -564,7 +564,7 @@ krecipes: tdebase
krename: tdebase
$(call buildpkg,applications/krename)
krusader: tdebase
krusader: tdebase tdebindings
$(call buildpkg,applications/krusader)
kscope: tdebase cscope
@ -711,7 +711,7 @@ tde-systemsettings: tdebase
tdmtheme: tdebase
$(call buildpkg,applications/tdmtheme)
tellico: tdebase
tellico: tdebase tdemultimedia
# Do NOT build on CentOS 5
ifeq ($(wildcard /boot/vmlinuz*.el5*),)
$(call buildpkg,applications/tellico)

@ -193,29 +193,27 @@ export QTDIR=%{_libdir}/tqt3
# Installs supplementary headers
for i in include/*.h; do
%__install -D -m 644 $i %{buildroot}${QTINC}/private/${i##*/}
%__install -D -m 644 $i %{buildroot}${QTINC}/private/${i##*/}
done
# Installs the HTML documentation correctly
for i in doc/html/*; do
%__install -D -m 644 $i %{buildroot}%{tde_tdedocdir}/HTML/en/%{name}/${i##*/}
%__install -D -m 644 $i %{buildroot}%{tde_tdedocdir}/HTML/en/%{name}/${i##*/}
done
# Installs the Designer plugin
for i in designer/*.so; do
%__install -D -m 644 $i %{buildroot}${QTDIR}/plugins/designer/${i##*/}
%__install -D -m 644 $i %{buildroot}${QTDIR}/plugins/designer/${i##*/} || %__install -D -m 644 ${QTDIR}/plugins/$i %{buildroot}${QTDIR}/plugins/designer/${i##*/}
done
# Installs libraries
%__mkdir_p %{buildroot}%{_libdir}
%__mv -f tmplib/* %{buildroot}%{_libdir}
# Fix private headers location
%__mv -f %{buildroot}/private %{buildroot}%{_includedir}/tqt3
%__mv -f %{buildroot}%{_includedir}/tqt3 %{buildroot}%{_includedir}/tqscintilla
# Fix permissions
chmod a-x %{buildroot}%{_includedir}/tqscintilla/*.h
chmod a-x %{buildroot}%{_includedir}/tqscintilla/*.h

@ -10,4 +10,4 @@ ARCH="$3"
IMAGE="trinity.${DISTRIB}.${ARCH}:${TDE_VERSION}"
docker rmi -f "${IMAGE}"
docker build -t "${IMAGE}" --build-arg TDE_VERSION="${TDE_VERSION}" --build-arg ARCH="${ARCH}" "${DISTRIB}"
docker build -t "${IMAGE}" -f "${DISTRIB}/Dockerfile.${ARCH}" --build-arg TDE_VERSION="${TDE_VERSION}" --build-arg ARCH="${ARCH}" "${DISTRIB}"

@ -4,7 +4,7 @@ ARG TDE_VERSION=14.0.4
ARG ARCH=x86_64
# Add EPEL repository
RUN rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm
RUN rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-10.noarch.rpm
# Add NUX repository
RUN rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

@ -0,0 +1,21 @@
FROM fedora32:26
ARG TDE_VERSION=14.0.4
ARG ARCH=i686
# Add RPMFUSION repository
RUN rpm -Uvh https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-26.noarch.rpm
# Install Trinity build dependencies
ADD packages /etc/yum.repos.d/packages
RUN setarch i686 dnf update -y
RUN setarch i686 dnf install -y $(</etc/yum.repos.d/packages)
# Add YUM repository for locally built packages
ADD rpmbuild.repo /etc/yum.repos.d/rpmbuild.repo
RUN sed -i "/etc/yum.repos.d/rpmbuild.repo" -e "s|\${ARCH}|${ARCH}|g" -e "s|\${TDE_VERSION}|${TDE_VERSION}|g"
# Add non-root user to build packages
RUN useradd -m -s /bin/bash -u 1000 trinity
RUN echo "trinity ALL=(ALL) NOPASSWD: ALL" >>/etc/sudoers
ADD rpmmacros /home/trinity/.rpmmacros

@ -197,6 +197,7 @@ t1utils
taglib-devel
tar
texinfo
torsocks
transfig
udisks-devel
unixODBC-devel

@ -0,0 +1,26 @@
#!/bin/bash
NAME="fedora32"
VERSION="$1" # E.g: '26'
IMAGE="${NAME}:${VERSION}"
INSTALLROOT="/dev/shm/${IMAGE}"
sudo rm -rf "${INSTALLROOT}"
setarch i686 sudo dnf install \
--refresh \
--installroot="${INSTALLROOT}" \
--releasever="${VERSION}" \
--disablerepo="*" --enablerepo="fedora,updates" \
--nodocs \
--assumeyes \
@core bash vim
sudo sed -i "${INSTALLROOT}/etc/yum.repos.d/"*".repo" \
-e "s|\$basearch|i386|g" \
-e "s|\$releasever|${VERSION}|g"
sudo tar -C "${INSTALLROOT}" -c . >"${IMAGE}.tar"
sudo rm -rf "${INSTALLROOT}"
docker rmi -f "${IMAGE}"
docker import "${IMAGE}.tar" "${IMAGE}"

@ -0,0 +1,19 @@
#!/bin/bash
NAME="mageia32"
VERSION="$1" # E.g: '26'
IMAGE="${NAME}:${VERSION}"
INSTALLROOT="/dev/shm/${IMAGE}"
sudo rm -rf "${INSTALLROOT}"
sudo mkdir -p "${INSTALLROOT}"
setarch i686 sudo urpmi \
--root="${INSTALLROOT}" \
--auto \
bash vim urpmi mageia-release-common
sudo tar -C "${INSTALLROOT}" -c . >"${IMAGE}.tar"
sudo rm -rf "${INSTALLROOT}"
docker rmi -f "${IMAGE}"
docker import "${IMAGE}.tar" "${IMAGE}"

@ -0,0 +1,32 @@
FROM mageia32:6
ARG TDE_VERSION=14.0.4
ARG ARCH=i686
# Reset URPMI repositories to default
RUN urpmi.removemedia -a
RUN urpmi.addmedia --distrib --mirrorlist '$MIRRORLIST'
# Enable more URPMI repositories
RUN sed -i "/etc/urpmi/urpmi.cfg" -e "/Tainted\\\ Release {/{p;N;d}" -e "/Tainted\\\ Updates {/{p;N;d}"
# Update distribution
RUN urpmi.update -a
RUN urpmi --auto-select --auto
# Install Trinity build dependencies
ADD packages.${ARCH} /etc/urpmi/packages
RUN while ! urpmi --auto $(</etc/urpmi/packages); do urpmi.update -a; done
# Add rpmbuild repositories
RUN mkdir -p /home/trinity/rpmbuild/RPMS.tde-${TDE_VERSION}/${ARCH} /home/trinity/rpmbuild/RPMS.tde-${TDE_VERSION}/noarch
RUN genhdlist2 --allow-empty-media /home/trinity/rpmbuild/RPMS.tde-${TDE_VERSION}/${ARCH}
RUN urpmi.addmedia rpmbuild.${ARCH} /home/trinity/rpmbuild/RPMS.tde-${TDE_VERSION}/${ARCH}
RUN genhdlist2 --allow-empty-media /home/trinity/rpmbuild/RPMS.tde-${TDE_VERSION}/noarch
RUN urpmi.addmedia rpmbuild.noarch /home/trinity/rpmbuild/RPMS.tde-${TDE_VERSION}/noarch
# Add non-root user to build packages
RUN rm -rf /home/trinity
RUN useradd -m -s /bin/bash -u 1000 trinity
RUN echo "trinity ALL=(ALL) NOPASSWD: ALL" >>/etc/sudoers
ADD rpmmacros /home/trinity/.rpmmacros

@ -0,0 +1,238 @@
advancecomp
alsa-lib-devel
aspell
aspell-devel
aspell-en
audiofile-devel
bind-devel
bison
boost-devel
bzip2-devel
ccache
cdparanoia
chmlib-devel
chrpath
clamav
clamav-devel
cmake
ctags
cups-devel
curl-devel
db5-devel
dbus-devel
dbus-glib
dbus-glib-devel
djvulibre
docbook-dtd412-xml
docbook-style-xsl
docbook-utils
doxygen
drakconf
dssi-devel
exempi-devel
expat-devel
fdupes
fftw-devel
firebird-devel
flex
fontconfig-devel
freetype2-devel
freetype-devel
fribidi-devel
gamin-devel
gettext-devel
glib2-devel
gmime-devel
gnokii-devel
gperf
gpgme-devel
gphoto2-devel
GraphicsMagick-devel
gsl-devel
gtk2-devel
gtk+3.0-devel
gtk-doc
hspell-devel
hunspell-en
ImageMagick-devel
imake
imlib2-devel
intltool
java-1.8.0-openjdk
java-1.8.0-openjdk-devel
karma-sharp
kde-dev-scripts
lcms-devel
libapr-devel
libapr-util-devel
libavformat57
libbinutils-devel
libclucene-devel
libcommoncpp-devel
libcryptsetup-devel
libcurl-devel
libdvdread-devel
libecpg9.4_6
libexiv2-devel
libfbclient-devel
libffmpeg-devel
libflac-devel
libflac++-devel
libfontenc-devel
libgstreamer1.0-devel
libgstreamer-plugins-base1.0-devel
libinotifytools-devel
libjasper-devel
libjpeg-devel
libmp3lame-devel
liblua-devel
libmad-devel
libpaper-devel
libpkcs11-helper-devel
libpoppler-devel
libpulseaudio-devel
libsane1-devel
libt1lib-devel
libtiff-devel
libtwolame-devel
libudev-devel
libusb1.0-devel
libutempter-devel
libv4l-devel
libxaw-devel
libxdg-basedir-devel
libxi-devel
libxine1.2-devel
libxscrnsaver-devel
libxtst-devel
libxxf86dga-devel
libyaz-devel
libart_lgpl-devel
libblkid-devel
libcdda-devel
libclucene-devel
libcommoncpp-devel
libconfig-devel
libcurl-devel
libdvdread-devel
libffmpeg-devel
libflac-devel
libflac++-devel
libidn-devel
libgadu-devel
libgpod-devel
libgsf-devel
libhd-devel
libical-devel
libice-devel
libifp-devel
libinotifytools-devel
libiodbc-devel
libiw-devel
libjack-devel
libjasper-devel
libkarma-devel
liblo-devel
liblrdf-devel
libmad-devel
libmng-devel
libmp4v2-devel
libmpcdec-devel
libmtp-devel
libmusicbrainz-devel
libnjb-devel
libofx-devel
libotr-devel
libpaper-devel
libpx-devel
libqalculate-devel
libraw1394-devel
librsvg
libsmbclient-devel
libsm-devel
libsndfile-devel
libt1lib-devel
libtheora-devel
libungif-devel
libvisual-devel
libvorbis-devel
libwmf-devel
libwpd-devel
libx11-devel
libxcursor-devel
libxext-devel
libxft-devel
libxi-devel
libxinerama-devel
libxkbfile-devel
libxmu-devel
libxrandr-devel
libxrender-devel
libxslt-devel
libxv-devel
libxxf86dga-devel
libyaz-devel
lilo
lirc-devel
lm_sensors-devel
mesaglu-devel
mysql-devel
nas-devel
neon-devel
netpbm
net-snmp-devel
NetworkManager-glib-devel
notification-daemon
ocaml
OpenEXR-devel
openldap-devel
opensc
openslp-devel
opensp-devel
optipng
pam-devel
pciutils-devel
perl-devel
perl(XML::Parser)
pilot-link-devel
pinentry-gtk2
pkgconfig(audiofile)
pkgconfig(libpng16)
polkit-agent-none
postgresql9.4
postgresql9.4-devel
pth-devel
python-devel
python-sip
qt4-devel
readline-devel
recode
rpm-build
rpm-devel
ruby-devel
scons
SDL-devel
speex-devel
sqlite3-devel
sqlite-devel
sudo
subversion-devel
sword-devel
taglib-devel
torsocks
transfig
udisks2-devel
udisks-devel
unixODBC-devel
usbutils
valgrind
wv2-devel
x11-font-util
xbase-devel
xmlto
xscreensaver
xscreensaver-base
xscreensaver-extrusion
xscreensaver-gl
yaz
zlib-devel

@ -219,6 +219,7 @@ sudo
subversion-devel
sword-devel
taglib-devel
torsocks
transfig
udisks2-devel
udisks-devel

@ -0,0 +1,28 @@
#!/bin/bash
NAME="opensuse"
VERSION="$1" # E.g: '42.3'
IMAGE="${NAME}:${VERSION}"
INSTALLROOT="/dev/shm/${IMAGE}"
sudo rm -rf "${INSTALLROOT}"
sudo mkdir -p "${INSTALLROOT}"
sudo zypper --root "${INSTALLROOT}" \
ar "http://download.opensuse.org/distribution/leap/${VERSION}/repo/oss/" "oss"
sudo zypper --root "${INSTALLROOT}" \
ar "http://download.opensuse.org/distribution/leap/${VERSION}/repo/non-oss/" "non-oss"
sudo zypper --root "${INSTALLROOT}" \
ar "http://download.opensuse.org/update/leap/${VERSION}/oss/" "update-oss"
sudo zypper --root "${INSTALLROOT}" \
ar "http://download.opensuse.org/update/leap/${VERSION}/non-oss/" "update-non-oss"
sudo zypper --root "${INSTALLROOT}" \
--gpg-auto-import-keys ref
sudo zypper --root "${INSTALLROOT}" \
install -y bash vim zypper openSUSE-release
sudo tar -C "${INSTALLROOT}" -c . >"${IMAGE}.tar"
sudo rm -rf "${INSTALLROOT}"
docker rmi -f "${IMAGE}"
docker import "${IMAGE}.tar" "${IMAGE}"

@ -0,0 +1,28 @@
#!/bin/bash
NAME="opensuse32"
VERSION="$1" # E.g: '42.3'
IMAGE="${NAME}:${VERSION}"
INSTALLROOT="/dev/shm/${IMAGE}"
sudo rm -rf "${INSTALLROOT}"
sudo mkdir -p "${INSTALLROOT}"
sudo zypper --root "${INSTALLROOT}" \
ar "http://download.opensuse.org/distribution/leap/${VERSION}/repo/oss/" "oss"
sudo zypper --root "${INSTALLROOT}" \
ar "http://download.opensuse.org/distribution/leap/${VERSION}/repo/non-oss/" "non-oss"
sudo zypper --root "${INSTALLROOT}" \
ar "http://download.opensuse.org/update/leap/${VERSION}/oss/" "update-oss"
sudo zypper --root "${INSTALLROOT}" \
ar "http://download.opensuse.org/update/leap/${VERSION}/non-oss/" "update-non-oss"
setarch i686 sudo zypper --root "${INSTALLROOT}" \
--gpg-auto-import-keys ref
setarch i686 sudo zypper --root "${INSTALLROOT}" \
install -y bash vim zypper openSUSE-release
sudo tar -C "${INSTALLROOT}" -c . >"${IMAGE}.tar"
sudo rm -rf "${INSTALLROOT}"
docker rmi -f "${IMAGE}"
docker import "${IMAGE}.tar" "${IMAGE}"

@ -25,4 +25,4 @@ docker run -t -i \
-v ${HOME}/tde/tde-tarballs:/home/trinity/tde/tde-tarballs \
-v ${HOME}/rpmbuild/RPMS/RPMS${DIST}.tde-${TDE_VERSION}:/home/trinity/rpmbuild/RPMS.tde-${TDE_VERSION} \
-v ${HOME}/rpmbuild/SRPMS/SRPMS${DIST}.tde-${TDE_VERSION}:/home/trinity/rpmbuild/SRPMS.tde-${TDE_VERSION} \
"${IMAGE}" bash
"${IMAGE}" setarch ${ARCH} bash

@ -203,7 +203,15 @@ Requires: fedora-logos
# Fedora 25 Theme
%if 0%{?fedora} == 25
Requires: f25-backgrounds-base
%define tde_bg /usr/share/backgrounds/f24/default/standard/f25.png
%define tde_bg /usr/share/backgrounds/f25/default/standard/f25.png
Requires: fedora-logos
%define tde_starticon /usr/share/icons/hicolor/96x96/apps/fedora-logo-icon.png
%endif
# Fedora 26 Theme
%if 0%{?fedora} == 26
Requires: f26-backgrounds-base
%define tde_bg /usr/share/backgrounds/f26/default/standard/f26.png
Requires: fedora-logos
%define tde_starticon /usr/share/icons/hicolor/96x96/apps/fedora-logo-icon.png
%endif
@ -265,6 +273,13 @@ Requires: mageia-theme-Default
%define tde_starticon %{tde_datadir}/oxygen/scalable/mgabutton.svg
%endif
# Mageia 6 Theme
%if 0%{?mgaversion} == 6
Requires: mageia-theme-Default
%define tde_bg /usr/share/mga/backgrounds/default.jpg
%define tde_starticon %{tde_datadir}/oxygen/scalable/mgabutton.svg
%endif
# Mandriva 2011 Theme: "rosa"
%if "%{distribution}" == "Mandriva Linux" && "%{?mdkversion}" == "201100"
Requires: mandriva-theme

@ -170,7 +170,7 @@ BuildRequires: libXxf86vm-devel
%endif
# XINE support
%if 0%{?suse_version} || 0%{?mgaversion} || 0%{?mdkversion} || 0%{?fedora} == 18 || 0%{?fedora} == 19 || 0%{?rhel} >= 5
%if 0%{?suse_version} || 0%{?mgaversion} || 0%{?mdkversion} || 0%{?fedora} || 0%{?rhel} >= 5
%define with_xine 1
%if 0%{?mgaversion} || 0%{?mdkversion}
%if 0%{?pclinuxos}

@ -170,7 +170,7 @@ BuildRequires: libXxf86vm-devel
%endif
# XINE support
%if 0%{?suse_version} || 0%{?mgaversion} || 0%{?mdkversion} || 0%{?fedora} == 18 || 0%{?fedora} == 19 || 0%{?rhel} >= 5
%if 0%{?suse_version} || 0%{?mgaversion} || 0%{?mdkversion} || 0%{?fedora} || 0%{?rhel} >= 5
%define with_xine 1
%if 0%{?mgaversion} || 0%{?mdkversion}
%if 0%{?pclinuxos}
@ -1089,7 +1089,7 @@ fi
-DBUILD_ALL=ON \
..
%__make %{?_smp_mflags}
%__make %{?_smp_mflags} || %__make
%install

Loading…
Cancel
Save