deps.sh revision ac9c3ad8228000140d80f91d4c5492d89d6e79f6
8c294c1cd4d721818a59684cf7f2b36123f79163Stephen Gallagher#
8c294c1cd4d721818a59684cf7f2b36123f79163Stephen Gallagher# Dependency management.
8c294c1cd4d721818a59684cf7f2b36123f79163Stephen Gallagher#
8c294c1cd4d721818a59684cf7f2b36123f79163Stephen Gallagher# Copyright (C) 2014 Red Hat
8c294c1cd4d721818a59684cf7f2b36123f79163Stephen Gallagher#
c252d148fa8ab50aaaa8bbae7beb4d208025171dNikolai Kondrashov# This program is free software; you can redistribute it and/or modify
9542512d7be40f2000298c86d3d2b728f4f0f65aStephen Gallagher# it under the terms of the GNU General Public License as published by
9542512d7be40f2000298c86d3d2b728f4f0f65aStephen Gallagher# the Free Software Foundation; either version 3 of the License, or
9542512d7be40f2000298c86d3d2b728f4f0f65aStephen Gallagher# (at your option) any later version.
c6e39e15178675d0779e0ae855245774a09b4eb5Nikolai Kondrashov#
c6e39e15178675d0779e0ae855245774a09b4eb5Nikolai Kondrashov# This program is distributed in the hope that it will be useful,
c6e39e15178675d0779e0ae855245774a09b4eb5Nikolai Kondrashov# but WITHOUT ANY WARRANTY; without even the implied warranty of
c6e39e15178675d0779e0ae855245774a09b4eb5Nikolai Kondrashov# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
c6e39e15178675d0779e0ae855245774a09b4eb5Nikolai Kondrashov# GNU General Public License for more details.
29c5542feb4c45865ea61be97e0e84a1d1f04918Jakub Hrozek#
29c5542feb4c45865ea61be97e0e84a1d1f04918Jakub Hrozek# You should have received a copy of the GNU General Public License
fd5a4eacd56700ffb08a73121aeacdc806cb0132Sumit Bose# along with this program. If not, see <http://www.gnu.org/licenses/>.
8b1f525acd20f36c836e827de3c251088961c5d9Stephen Gallagher
8b1f525acd20f36c836e827de3c251088961c5d9Stephen Gallagherif [ -z ${_DEPS_SH+set} ]; then
8b1f525acd20f36c836e827de3c251088961c5d9Stephen Gallagherdeclare -r _DEPS_SH=
8b1f525acd20f36c836e827de3c251088961c5d9Stephen Gallagher
8b1f525acd20f36c836e827de3c251088961c5d9Stephen Gallagher. distro.sh
84ae5edab16ad6be5e3be956cb6fa031c1428eb5Stephen Gallagher
9d453f1e8b28983b363b44c49b7cd701a994fd97Nikolai Kondrashov# Dependency list
428db8a58c0c149d5efccc6d788f70916c1d34d7Jakub Hrozekdeclare -a DEPS_LIST=(
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher lcov
df4cc3a83c5d6700b6a09ff96cb4a6b1949b1aa9Stephen Gallagher valgrind
df4cc3a83c5d6700b6a09ff96cb4a6b1949b1aa9Stephen Gallagher)
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher# "Integration tests dependencies satisfied" flag
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherdeclare DEPS_INTGCHECK_SATISFIED=true
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherif [[ "$DISTRO_BRANCH" == -redhat-* ]]; then
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher declare _DEPS_LIST_SPEC
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher DEPS_LIST+=(
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher clang-analyzer
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher fakeroot
59744cff6edb106ae799b2321cb8731edadf409aStephen Gallagher libcmocka-devel
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher mock
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher nss_wrapper
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher openldap-clients
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher openldap-servers
8a5e793a0576250da80371e53aa3e7eba15cdb63Sumit Bose pytest
8a5e793a0576250da80371e53aa3e7eba15cdb63Sumit Bose python-ldap
8a5e793a0576250da80371e53aa3e7eba15cdb63Sumit Bose python-psutil
90fd1bbd6035cdab46faa3a695a2fb2be6508b17Sumit Bose pyldb
90fd1bbd6035cdab46faa3a695a2fb2be6508b17Sumit Bose rpm-build
90fd1bbd6035cdab46faa3a695a2fb2be6508b17Sumit Bose uid_wrapper
af4ffe1001adcc0a96897e426d26444f07af9aa1Benjamin Franzke python-requests
af4ffe1001adcc0a96897e426d26444f07af9aa1Benjamin Franzke curl-devel
af4ffe1001adcc0a96897e426d26444f07af9aa1Benjamin Franzke krb5-server
1d1a0a019d8d4d9ab0f51ada03604cd2cada287eSumit Bose krb5-workstation
1d1a0a019d8d4d9ab0f51ada03604cd2cada287eSumit Bose dbus-python
1d1a0a019d8d4d9ab0f51ada03604cd2cada287eSumit Bose python-pep8
f3c85d900c4663854cc7bbae7d9f77867ed1f69bSumit Bose )
f3c85d900c4663854cc7bbae7d9f77867ed1f69bSumit Bose _DEPS_LIST_SPEC=`
f3c85d900c4663854cc7bbae7d9f77867ed1f69bSumit Bose sed -e 's/@PACKAGE_VERSION@/0/g' \
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher -e 's/@PACKAGE_NAME@/package-name/g' \
2a552e43581c74f51205c7141ec9f6e9542509f8Stephen Gallagher -e 's/@PRERELEASE_VERSION@//g' contrib/sssd.spec.in |
2a552e43581c74f51205c7141ec9f6e9542509f8Stephen Gallagher rpm-spec-builddeps /dev/stdin`
41291f19dbc5bf14f20729959b852fa605fcc02dJakub Hrozek readarray -t -O "${#DEPS_LIST[@]}" DEPS_LIST <<<"$_DEPS_LIST_SPEC"
8214510f125879c3b1d247f2ce981ee20b5375d1Jakub Hrozekfi
1a59af8245f183f22d87d067a90197d8e2ea958dJakub Hrozek
a5bb518446d5ce565d7ba819590a009cabb0b0b4Jakub Hrozekif [[ "$DISTRO_BRANCH" == -debian-* ]]; then
a8d1a344e580f29699aed9b88d87fc3c6f5d113bSimo Sorce DEPS_LIST+=(
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher autoconf
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher automake
d921c1eba437662437847279f251a0a5d8f70127Maxim autopoint
2cbdd12983eb85eddb90f64cfafb24eae5b448f4Jakub Hrozek check
b9c8ce2bdd4045782c243605a1b999098bedcffcNoam Meltzer cifs-utils
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher clang
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher dh-apparmor
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher dnsutils
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher docbook-xml
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher docbook-xsl
eb2e21b764d03544d8161e9956d7f70b07b75f77Simo Sorce gettext
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher krb5-config
2a5790216f57e9bdfb2930d52860bb5300366536Jakub Hrozek libc-ares-dev
5377441d7a846461c2d9a7a870cea711360a529aNikolai Kondrashov libcmocka-dev
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher libcollection-dev
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher libdbus-1-dev
32381402a4a9afc003782c9e2301fc59c9bda2a9Yassir Elley libdhash-dev
dbfc407eef1d9ba2469687c3ffbe7fd8bb111d94Jakub Hrozek libglib2.0-dev
4dd615c01357b8715711aad6820ba9595d3ad377Stephen Gallagher libini-config-dev
4b6a0d0b3d42e5fdb457f47d9adfa5e66b160256Stephen Gallagher libkeyutils-dev
e124844907ed6973915e4d56f5442ecd07535a12Jakub Hrozek libkrb5-dev
5484044ea7bb632b915f706685fce509f6eacc48Jakub Hrozek libldap2-dev
59744cff6edb106ae799b2321cb8731edadf409aStephen Gallagher libldb-dev
6dcbfe52d5e64205c0d922f3e89add066b42c496Jakub Hrozek libltdl-dev
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher libnfsidmap-dev
9222a4fcbeec9d5a6f84aab31a5131f14d4a6430Fabiano Fidêncio libnl-3-dev
9222a4fcbeec9d5a6f84aab31a5131f14d4a6430Fabiano Fidêncio libnl-route-3-dev
9222a4fcbeec9d5a6f84aab31a5131f14d4a6430Fabiano Fidêncio libnspr4-dev
9222a4fcbeec9d5a6f84aab31a5131f14d4a6430Fabiano Fidêncio libnss3-dev
9222a4fcbeec9d5a6f84aab31a5131f14d4a6430Fabiano Fidêncio libpam0g-dev
9222a4fcbeec9d5a6f84aab31a5131f14d4a6430Fabiano Fidêncio libpcre3-dev
9222a4fcbeec9d5a6f84aab31a5131f14d4a6430Fabiano Fidêncio libpopt-dev
9222a4fcbeec9d5a6f84aab31a5131f14d4a6430Fabiano Fidêncio libsasl2-dev
9222a4fcbeec9d5a6f84aab31a5131f14d4a6430Fabiano Fidêncio libselinux1-dev
9222a4fcbeec9d5a6f84aab31a5131f14d4a6430Fabiano Fidêncio libsemanage1-dev
1dd679584241a0f9b29072c7eed1c5c5e4a577e4Simo Sorce libsmbclient-dev
1dd679584241a0f9b29072c7eed1c5c5e4a577e4Simo Sorce libsystemd-dev
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagher libtalloc-dev
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagher libtdb-dev
87d3b47abba6a40fcf809c85a2b138bc1013d9c5Jakub Hrozek libtevent-dev
bc13c352ba9c2877f1e9bc62e55ad60fc000a55dJakub Hrozek libtool
bc13c352ba9c2877f1e9bc62e55ad60fc000a55dJakub Hrozek libtool-bin
bc13c352ba9c2877f1e9bc62e55ad60fc000a55dJakub Hrozek libxml2-utils
bc13c352ba9c2877f1e9bc62e55ad60fc000a55dJakub Hrozek make
1dd679584241a0f9b29072c7eed1c5c5e4a577e4Simo Sorce python-dev
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher python3-dev
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher samba-dev
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher systemd
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher xml-core
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher xsltproc
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher libssl-dev
054b5d4bb98973698f74d66b14ccd14394b53f10Lukas Slebodnik fakeroot
054b5d4bb98973698f74d66b14ccd14394b53f10Lukas Slebodnik libnss-wrapper
62bda5f75bda6b77aea30d708c74efaf725d9367Lukas Slebodnik libuid-wrapper
a3d176d116ceccd6a7547c128fab5df5cdd2c2b6Michal Zidek python-pytest
a3d176d116ceccd6a7547c128fab5df5cdd2c2b6Michal Zidek python-ldap
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher python-ldb
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher python-requests
4f6931e854c698dcb1c09f99eb330ce2fb97e7c6Lukas Slebodnik python-psutil
4dd615c01357b8715711aad6820ba9595d3ad377Stephen Gallagher ldap-utils
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher slapd
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher systemtap-sdt-dev
558998ce664055a75595371118f818084d8f2b23Jan Cholasta libhttp-parser-dev
558998ce664055a75595371118f818084d8f2b23Jan Cholasta libjansson-dev
9a3e40dc49c1e38bf58e45be5adff37615f3910bJan Cholasta libcurl4-openssl-dev
9a3e40dc49c1e38bf58e45be5adff37615f3910bJan Cholasta krb5-kdc
558998ce664055a75595371118f818084d8f2b23Jan Cholasta krb5-admin-server
558998ce664055a75595371118f818084d8f2b23Jan Cholasta krb5-user
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher uuid-dev
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher dbus
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher python-dbus
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher pep8
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher )
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher DEPS_INTGCHECK_SATISFIED=true
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherfi
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
c737e1444fb186e349e59bfa9dac4995b720b4b1Jan Zelenydeclare -a -r DEPS_LIST
f1828234a850dd28465425248a83a993f262918fPavel Březina
6ea6ec5cb7d9985e2730fb9d4657624d10aed4d8Nick Guay# Install dependencies.
b69cb1787209e85cc246eb9a944242689bfe0c46Pavel Březinafunction deps_install()
b69cb1787209e85cc246eb9a944242689bfe0c46Pavel Březina{
e157b9f6cb370e1b94bcac2044d26ad66d640fbaPavel Březina distro_pkg_install "${DEPS_LIST[@]}"
b69cb1787209e85cc246eb9a944242689bfe0c46Pavel Březina}
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher# Remove dependencies.
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherfunction deps_remove()
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher{
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher distro_pkg_remove "${DEPS_LIST[@]}"
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher}
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
1746e8b8399da2a7a8da4aace186f66055ccfec1Jakub Hrozekfi # _DEPS_SH
1746e8b8399da2a7a8da4aace186f66055ccfec1Jakub Hrozek