1505 lines
50 KiB
Makefile
1505 lines
50 KiB
Makefile
|
# Makefile.in generated by automake 1.16.5 from Makefile.am.
|
||
|
# @configure_input@
|
||
|
|
||
|
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
|
||
|
|
||
|
# This Makefile.in is free software; the Free Software Foundation
|
||
|
# gives unlimited permission to copy and/or distribute it,
|
||
|
# with or without modifications, as long as this notice is preserved.
|
||
|
|
||
|
# This program is distributed in the hope that it will be useful,
|
||
|
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||
|
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||
|
# PARTICULAR PURPOSE.
|
||
|
|
||
|
@SET_MAKE@
|
||
|
|
||
|
# Makefile.am for anaconda
|
||
|
#
|
||
|
# Copyright (C) 2009 Red Hat, Inc.
|
||
|
#
|
||
|
# This program is free software; you can redistribute it and/or modify
|
||
|
# it under the terms of the GNU Lesser General Public License as published
|
||
|
# by the Free Software Foundation; either version 2.1 of the License, or
|
||
|
# (at your option) any later version.
|
||
|
#
|
||
|
# This program is distributed in the hope that it will be useful,
|
||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
# GNU Lesser General Public License for more details.
|
||
|
#
|
||
|
# You should have received a copy of the GNU Lesser General Public License
|
||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||
|
|
||
|
# ======================================
|
||
|
# WARNING!
|
||
|
# THIS FILE IS GENERATED FROM A TEMPLATE
|
||
|
# DO NOT EDIT THIS FILE MANUALLY!
|
||
|
# ======================================
|
||
|
# The template is located in: branch-config.mk.j2
|
||
|
|
||
|
# Makefile include for branch specific configuration settings
|
||
|
#
|
||
|
# Copyright (C) 2020 Red Hat, Inc.
|
||
|
#
|
||
|
# This program is free software; you can redistribute it and/or modify
|
||
|
# it under the terms of the GNU Lesser General Public License as published
|
||
|
# by the Free Software Foundation; either version 2.1 of the License, or
|
||
|
# (at your option) any later version.
|
||
|
#
|
||
|
# This program is distributed in the hope that it will be useful,
|
||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
# GNU Lesser General Public License for more details.
|
||
|
#
|
||
|
# You should have received a copy of the GNU Lesser General Public License
|
||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||
|
#
|
||
|
# Store a branch specific configuration here to avoid dealing with
|
||
|
# conflicts on multiple places.
|
||
|
|
||
|
#
|
||
|
# Copyright (C) 2023 Red Hat, Inc.
|
||
|
#
|
||
|
# This program is free software; you can redistribute it and/or modify
|
||
|
# it under the terms of the GNU Lesser General Public License as published
|
||
|
# by the Free Software Foundation; either version 2.1 of the License, or
|
||
|
# (at your option) any later version.
|
||
|
#
|
||
|
# This program is distributed in the hope that it will be useful,
|
||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
# GNU Lesser General Public License for more details.
|
||
|
#
|
||
|
# You should have received a copy of the GNU Lesser General Public License
|
||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||
|
#
|
||
|
|
||
|
|
||
|
VPATH = @srcdir@
|
||
|
am__is_gnu_make = { \
|
||
|
if test -z '$(MAKELEVEL)'; then \
|
||
|
false; \
|
||
|
elif test -n '$(MAKE_HOST)'; then \
|
||
|
true; \
|
||
|
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
|
||
|
true; \
|
||
|
else \
|
||
|
false; \
|
||
|
fi; \
|
||
|
}
|
||
|
am__make_running_with_option = \
|
||
|
case $${target_option-} in \
|
||
|
?) ;; \
|
||
|
*) echo "am__make_running_with_option: internal error: invalid" \
|
||
|
"target option '$${target_option-}' specified" >&2; \
|
||
|
exit 1;; \
|
||
|
esac; \
|
||
|
has_opt=no; \
|
||
|
sane_makeflags=$$MAKEFLAGS; \
|
||
|
if $(am__is_gnu_make); then \
|
||
|
sane_makeflags=$$MFLAGS; \
|
||
|
else \
|
||
|
case $$MAKEFLAGS in \
|
||
|
*\\[\ \ ]*) \
|
||
|
bs=\\; \
|
||
|
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||
|
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||
|
esac; \
|
||
|
fi; \
|
||
|
skip_next=no; \
|
||
|
strip_trailopt () \
|
||
|
{ \
|
||
|
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||
|
}; \
|
||
|
for flg in $$sane_makeflags; do \
|
||
|
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||
|
case $$flg in \
|
||
|
*=*|--*) continue;; \
|
||
|
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||
|
-*I?*) strip_trailopt 'I';; \
|
||
|
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||
|
-*O?*) strip_trailopt 'O';; \
|
||
|
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||
|
-*l?*) strip_trailopt 'l';; \
|
||
|
-[dEDm]) skip_next=yes;; \
|
||
|
-[JT]) skip_next=yes;; \
|
||
|
esac; \
|
||
|
case $$flg in \
|
||
|
*$$target_option*) has_opt=yes; break;; \
|
||
|
esac; \
|
||
|
done; \
|
||
|
test $$has_opt = yes
|
||
|
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||
|
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||
|
pkgdatadir = $(datadir)/@PACKAGE@
|
||
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||
|
pkglibdir = $(libdir)/@PACKAGE@
|
||
|
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||
|
install_sh_DATA = $(install_sh) -c -m 644
|
||
|
install_sh_PROGRAM = $(install_sh) -c
|
||
|
install_sh_SCRIPT = $(install_sh) -c
|
||
|
INSTALL_HEADER = $(INSTALL_DATA)
|
||
|
transform = $(program_transform_name)
|
||
|
NORMAL_INSTALL = :
|
||
|
PRE_INSTALL = :
|
||
|
POST_INSTALL = :
|
||
|
NORMAL_UNINSTALL = :
|
||
|
PRE_UNINSTALL = :
|
||
|
POST_UNINSTALL = :
|
||
|
build_triplet = @build@
|
||
|
host_triplet = @host@
|
||
|
subdir = .
|
||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||
|
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||
|
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||
|
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
|
||
|
$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
|
||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||
|
$(ACLOCAL_M4)
|
||
|
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
|
||
|
$(am__configure_deps) $(dist_sbin_SCRIPTS) $(dist_noinst_DATA) \
|
||
|
$(am__DIST_COMMON)
|
||
|
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
|
||
|
configure.lineno config.status.lineno
|
||
|
mkinstalldirs = $(install_sh) -d
|
||
|
CONFIG_HEADER = config.h
|
||
|
CONFIG_CLEAN_FILES = anaconda.spec
|
||
|
CONFIG_CLEAN_VPATH_FILES =
|
||
|
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||
|
am__vpath_adj = case $$p in \
|
||
|
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||
|
*) f=$$p;; \
|
||
|
esac;
|
||
|
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
|
||
|
am__install_max = 40
|
||
|
am__nobase_strip_setup = \
|
||
|
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
|
||
|
am__nobase_strip = \
|
||
|
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
|
||
|
am__nobase_list = $(am__nobase_strip_setup); \
|
||
|
for p in $$list; do echo "$$p $$p"; done | \
|
||
|
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
|
||
|
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
|
||
|
if (++n[$$2] == $(am__install_max)) \
|
||
|
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
|
||
|
END { for (dir in files) print dir, files[dir] }'
|
||
|
am__base_list = \
|
||
|
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||
|
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||
|
am__uninstall_files_from_dir = { \
|
||
|
test -z "$$files" \
|
||
|
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||
|
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||
|
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||
|
}
|
||
|
am__installdirs = "$(DESTDIR)$(sbindir)"
|
||
|
SCRIPTS = $(dist_sbin_SCRIPTS)
|
||
|
AM_V_P = $(am__v_P_@AM_V@)
|
||
|
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||
|
am__v_P_0 = false
|
||
|
am__v_P_1 = :
|
||
|
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||
|
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||
|
am__v_GEN_0 = @echo " GEN " $@;
|
||
|
am__v_GEN_1 =
|
||
|
AM_V_at = $(am__v_at_@AM_V@)
|
||
|
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||
|
am__v_at_0 = @
|
||
|
am__v_at_1 =
|
||
|
SOURCES =
|
||
|
DIST_SOURCES =
|
||
|
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
|
||
|
ctags-recursive dvi-recursive html-recursive info-recursive \
|
||
|
install-data-recursive install-dvi-recursive \
|
||
|
install-exec-recursive install-html-recursive \
|
||
|
install-info-recursive install-pdf-recursive \
|
||
|
install-ps-recursive install-recursive installcheck-recursive \
|
||
|
installdirs-recursive pdf-recursive ps-recursive \
|
||
|
tags-recursive uninstall-recursive
|
||
|
am__can_run_installinfo = \
|
||
|
case $$AM_UPDATE_INFO_DIR in \
|
||
|
n|no|NO) false;; \
|
||
|
*) (install-info --version) >/dev/null 2>&1;; \
|
||
|
esac
|
||
|
DATA = $(dist_noinst_DATA)
|
||
|
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
|
||
|
distclean-recursive maintainer-clean-recursive
|
||
|
am__recursive_targets = \
|
||
|
$(RECURSIVE_TARGETS) \
|
||
|
$(RECURSIVE_CLEAN_TARGETS) \
|
||
|
$(am__extra_recursive_targets)
|
||
|
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
|
||
|
cscope distdir distdir-am dist dist-all distcheck
|
||
|
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \
|
||
|
config.h.in
|
||
|
# Read a list of newline-separated strings from the standard input,
|
||
|
# and print each of them once, without duplicates. Input order is
|
||
|
# *not* preserved.
|
||
|
am__uniquify_input = $(AWK) '\
|
||
|
BEGIN { nonempty = 0; } \
|
||
|
{ items[$$0] = 1; nonempty = 1; } \
|
||
|
END { if (nonempty) { for (i in items) print i; }; } \
|
||
|
'
|
||
|
# Make sure the list of sources is unique. This is necessary because,
|
||
|
# e.g., the same source file might be shared among _SOURCES variables
|
||
|
# for different programs/libraries.
|
||
|
am__define_uniq_tagged_files = \
|
||
|
list='$(am__tagged_files)'; \
|
||
|
unique=`for i in $$list; do \
|
||
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||
|
done | $(am__uniquify_input)`
|
||
|
DIST_SUBDIRS = $(SUBDIRS)
|
||
|
am__DIST_COMMON = $(srcdir)/./branch-config.mk \
|
||
|
$(srcdir)/./po/l10n-config.mk $(srcdir)/Makefile.in \
|
||
|
$(srcdir)/anaconda.spec.in $(srcdir)/config.h.in COPYING \
|
||
|
compile config.guess config.sub install-sh ltmain.sh missing
|
||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||
|
distdir = $(PACKAGE)-$(VERSION)
|
||
|
top_distdir = $(distdir)
|
||
|
am__remove_distdir = \
|
||
|
if test -d "$(distdir)"; then \
|
||
|
find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
|
||
|
&& rm -rf "$(distdir)" \
|
||
|
|| { sleep 5 && rm -rf "$(distdir)"; }; \
|
||
|
else :; fi
|
||
|
am__post_remove_distdir = $(am__remove_distdir)
|
||
|
am__relativize = \
|
||
|
dir0=`pwd`; \
|
||
|
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
|
||
|
sed_rest='s,^[^/]*/*,,'; \
|
||
|
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
|
||
|
sed_butlast='s,/*[^/]*$$,,'; \
|
||
|
while test -n "$$dir1"; do \
|
||
|
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
|
||
|
if test "$$first" != "."; then \
|
||
|
if test "$$first" = ".."; then \
|
||
|
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
|
||
|
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
|
||
|
else \
|
||
|
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
|
||
|
if test "$$first2" = "$$first"; then \
|
||
|
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
|
||
|
else \
|
||
|
dir2="../$$dir2"; \
|
||
|
fi; \
|
||
|
dir0="$$dir0"/"$$first"; \
|
||
|
fi; \
|
||
|
fi; \
|
||
|
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
|
||
|
done; \
|
||
|
reldir="$$dir2"
|
||
|
GZIP_ENV = --best
|
||
|
DIST_ARCHIVES = $(distdir).tar.bz2
|
||
|
DIST_TARGETS = dist-bzip2
|
||
|
# Exists only to be overridden by the user if desired.
|
||
|
AM_DISTCHECK_DVI_TARGET = dvi
|
||
|
distuninstallcheck_listfiles = find . -type f -print
|
||
|
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
|
||
|
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
|
||
|
distcleancheck_listfiles = find . -type f -print
|
||
|
ACLOCAL = @ACLOCAL@
|
||
|
AMTAR = @AMTAR@
|
||
|
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||
|
ANACONDA_RELEASE = @ANACONDA_RELEASE@
|
||
|
AR = @AR@
|
||
|
AUTOCONF = @AUTOCONF@
|
||
|
AUTOHEADER = @AUTOHEADER@
|
||
|
AUTOMAKE = @AUTOMAKE@
|
||
|
AWK = @AWK@
|
||
|
CC = @CC@
|
||
|
CCDEPMODE = @CCDEPMODE@
|
||
|
CFLAGS = @CFLAGS@
|
||
|
CPPFLAGS = @CPPFLAGS@
|
||
|
CSCOPE = @CSCOPE@
|
||
|
CTAGS = @CTAGS@
|
||
|
CYGPATH_W = @CYGPATH_W@
|
||
|
DEFS = @DEFS@
|
||
|
DEPDIR = @DEPDIR@
|
||
|
DLLTOOL = @DLLTOOL@
|
||
|
DSYMUTIL = @DSYMUTIL@
|
||
|
DUMPBIN = @DUMPBIN@
|
||
|
ECHO_C = @ECHO_C@
|
||
|
ECHO_N = @ECHO_N@
|
||
|
ECHO_T = @ECHO_T@
|
||
|
EGREP = @EGREP@
|
||
|
ETAGS = @ETAGS@
|
||
|
EXEEXT = @EXEEXT@
|
||
|
FGREP = @FGREP@
|
||
|
FILECMD = @FILECMD@
|
||
|
GREP = @GREP@
|
||
|
INSTALL = @INSTALL@
|
||
|
INSTALL_DATA = @INSTALL_DATA@
|
||
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||
|
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||
|
LD = @LD@
|
||
|
LDFLAGS = @LDFLAGS@
|
||
|
LIBARCHIVE_CFLAGS = @LIBARCHIVE_CFLAGS@
|
||
|
LIBARCHIVE_LIBS = @LIBARCHIVE_LIBS@
|
||
|
LIBOBJS = @LIBOBJS@
|
||
|
LIBS = @LIBS@
|
||
|
LIBTOOL = @LIBTOOL@
|
||
|
LIPO = @LIPO@
|
||
|
LN_S = @LN_S@
|
||
|
LTLIBOBJS = @LTLIBOBJS@
|
||
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||
|
MAKEINFO = @MAKEINFO@
|
||
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||
|
MKDIR_P = @MKDIR_P@
|
||
|
MSGCAT = @MSGCAT@
|
||
|
MSGFMT = @MSGFMT@
|
||
|
MSGMERGE = @MSGMERGE@
|
||
|
NM = @NM@
|
||
|
NMEDIT = @NMEDIT@
|
||
|
OBJDUMP = @OBJDUMP@
|
||
|
OBJEXT = @OBJEXT@
|
||
|
OTOOL = @OTOOL@
|
||
|
OTOOL64 = @OTOOL64@
|
||
|
PACKAGE = @PACKAGE@
|
||
|
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||
|
PACKAGE_NAME = @PACKAGE_NAME@
|
||
|
PACKAGE_RELEASE = @PACKAGE_RELEASE@
|
||
|
PACKAGE_STRING = @PACKAGE_STRING@
|
||
|
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||
|
PACKAGE_URL = @PACKAGE_URL@
|
||
|
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||
|
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||
|
PKG_CONFIG = @PKG_CONFIG@
|
||
|
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
|
||
|
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
|
||
|
PYTHON = @PYTHON@
|
||
|
PYTHON3_CFLAGS = @PYTHON3_CFLAGS@
|
||
|
PYTHON3_LIBS = @PYTHON3_LIBS@
|
||
|
PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
|
||
|
PYTHON_PLATFORM = @PYTHON_PLATFORM@
|
||
|
PYTHON_PREFIX = @PYTHON_PREFIX@
|
||
|
PYTHON_VERSION = @PYTHON_VERSION@
|
||
|
RANLIB = @RANLIB@
|
||
|
RPM_CFLAGS = @RPM_CFLAGS@
|
||
|
RPM_LIBS = @RPM_LIBS@
|
||
|
SED = @SED@
|
||
|
SET_MAKE = @SET_MAKE@
|
||
|
SHELL = @SHELL@
|
||
|
STRIP = @STRIP@
|
||
|
VERSION = @VERSION@
|
||
|
XGETTEXT = @XGETTEXT@
|
||
|
abs_builddir = @abs_builddir@
|
||
|
abs_srcdir = @abs_srcdir@
|
||
|
abs_top_builddir = @abs_top_builddir@
|
||
|
abs_top_srcdir = @abs_top_srcdir@
|
||
|
ac_ct_AR = @ac_ct_AR@
|
||
|
ac_ct_CC = @ac_ct_CC@
|
||
|
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||
|
am__include = @am__include@
|
||
|
am__leading_dot = @am__leading_dot@
|
||
|
am__quote = @am__quote@
|
||
|
am__tar = @am__tar@
|
||
|
am__untar = @am__untar@
|
||
|
bindir = @bindir@
|
||
|
build = @build@
|
||
|
build_alias = @build_alias@
|
||
|
build_cpu = @build_cpu@
|
||
|
build_os = @build_os@
|
||
|
build_vendor = @build_vendor@
|
||
|
builddir = @builddir@
|
||
|
datadir = @datadir@
|
||
|
datarootdir = @datarootdir@
|
||
|
docdir = @docdir@
|
||
|
dvidir = @dvidir@
|
||
|
exec_prefix = @exec_prefix@
|
||
|
host = @host@
|
||
|
host_alias = @host_alias@
|
||
|
host_cpu = @host_cpu@
|
||
|
host_os = @host_os@
|
||
|
host_vendor = @host_vendor@
|
||
|
htmldir = @htmldir@
|
||
|
includedir = @includedir@
|
||
|
infodir = @infodir@
|
||
|
install_sh = @install_sh@
|
||
|
libdir = @libdir@
|
||
|
libexecdir = @libexecdir@
|
||
|
localedir = @localedir@
|
||
|
localstatedir = @localstatedir@
|
||
|
mandir = @mandir@
|
||
|
mkdir_p = @mkdir_p@
|
||
|
oldincludedir = @oldincludedir@
|
||
|
pdfdir = @pdfdir@
|
||
|
pkgpyexecdir = @pkgpyexecdir@
|
||
|
pkgpythondir = @pkgpythondir@
|
||
|
prefix = @prefix@
|
||
|
program_transform_name = @program_transform_name@
|
||
|
psdir = @psdir@
|
||
|
pyexecdir = @pyexecdir@
|
||
|
pythondir = @pythondir@
|
||
|
runstatedir = @runstatedir@
|
||
|
sbindir = @sbindir@
|
||
|
sharedstatedir = @sharedstatedir@
|
||
|
srcdir = @srcdir@
|
||
|
subdirs = @subdirs@
|
||
|
sysconfdir = @sysconfdir@
|
||
|
target_alias = @target_alias@
|
||
|
top_build_prefix = @top_build_prefix@
|
||
|
top_builddir = @top_builddir@
|
||
|
top_srcdir = @top_srcdir@
|
||
|
ACLOCAL_AMFLAGS = -I m4
|
||
|
SUBDIRS = data docs dracut po pyanaconda scripts tests widgets utils
|
||
|
|
||
|
# Include the xgettext wrapper so pot-update can be run from the source distribution
|
||
|
# This is needed for make distcheck.
|
||
|
EXTRA_DIST = COPYING $(srcdir)/translation-canary/xgettext_werror.sh
|
||
|
MAINTAINERCLEANFILES = Makefile.in config.guess config.h.in config.sub \
|
||
|
depcomp install-sh ltmain.sh missing ABOUT-NLS \
|
||
|
INSTALL aclocal.m4 configure *.pyc \
|
||
|
py-compile m4/* po/Makefile.in.in po/Rules-quot \
|
||
|
test-driver
|
||
|
|
||
|
CLEANFILES = *~
|
||
|
dist_noinst_DATA = $(PACKAGE_NAME).spec
|
||
|
dist_sbin_SCRIPTS = anaconda.py
|
||
|
BUILD_RESULT_DIR = $(RESULT_DIR)/build
|
||
|
TEST_RESULT_DIR = $(RESULT_DIR)/tests
|
||
|
SRPM_BUILD_DIR = $(BUILD_RESULT_DIR)/00-srpm-build
|
||
|
RPM_BUILD_DIR = $(BUILD_RESULT_DIR)/01-rpm-build
|
||
|
TEST_INST_BUILD_DIR = $(BUILD_RESULT_DIR)/02-test-install
|
||
|
|
||
|
# Program for rendering infra Jinja2 templates
|
||
|
TEMPLATE_RENDERER = scripts/jinja-render
|
||
|
CI_TAG := $(or $(CI_TAG),$(GIT_BRANCH))
|
||
|
all: config.h
|
||
|
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
||
|
|
||
|
.SUFFIXES:
|
||
|
am--refresh: Makefile
|
||
|
@:
|
||
|
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/./branch-config.mk $(srcdir)/./po/l10n-config.mk $(am__configure_deps)
|
||
|
@for dep in $?; do \
|
||
|
case '$(am__configure_deps)' in \
|
||
|
*$$dep*) \
|
||
|
echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
|
||
|
$(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
|
||
|
&& exit 0; \
|
||
|
exit 1;; \
|
||
|
esac; \
|
||
|
done; \
|
||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
|
||
|
$(am__cd) $(top_srcdir) && \
|
||
|
$(AUTOMAKE) --foreign Makefile
|
||
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||
|
@case '$?' in \
|
||
|
*config.status*) \
|
||
|
echo ' $(SHELL) ./config.status'; \
|
||
|
$(SHELL) ./config.status;; \
|
||
|
*) \
|
||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
|
||
|
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
|
||
|
esac;
|
||
|
$(srcdir)/./branch-config.mk $(srcdir)/./po/l10n-config.mk $(am__empty):
|
||
|
|
||
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||
|
$(SHELL) ./config.status --recheck
|
||
|
|
||
|
$(top_srcdir)/configure: $(am__configure_deps)
|
||
|
$(am__cd) $(srcdir) && $(AUTOCONF)
|
||
|
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||
|
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
||
|
$(am__aclocal_m4_deps):
|
||
|
|
||
|
config.h: stamp-h1
|
||
|
@test -f $@ || rm -f stamp-h1
|
||
|
@test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
|
||
|
|
||
|
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
|
||
|
@rm -f stamp-h1
|
||
|
cd $(top_builddir) && $(SHELL) ./config.status config.h
|
||
|
$(srcdir)/config.h.in: $(am__configure_deps)
|
||
|
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
|
||
|
rm -f stamp-h1
|
||
|
touch $@
|
||
|
|
||
|
distclean-hdr:
|
||
|
-rm -f config.h stamp-h1
|
||
|
anaconda.spec: $(top_builddir)/config.status $(srcdir)/anaconda.spec.in
|
||
|
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||
|
install-dist_sbinSCRIPTS: $(dist_sbin_SCRIPTS)
|
||
|
@$(NORMAL_INSTALL)
|
||
|
@list='$(dist_sbin_SCRIPTS)'; test -n "$(sbindir)" || list=; \
|
||
|
if test -n "$$list"; then \
|
||
|
echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \
|
||
|
$(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \
|
||
|
fi; \
|
||
|
for p in $$list; do \
|
||
|
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||
|
if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
|
||
|
done | \
|
||
|
sed -e 'p;s,.*/,,;n' \
|
||
|
-e 'h;s|.*|.|' \
|
||
|
-e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
|
||
|
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
|
||
|
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
|
||
|
if ($$2 == $$4) { files[d] = files[d] " " $$1; \
|
||
|
if (++n[d] == $(am__install_max)) { \
|
||
|
print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
|
||
|
else { print "f", d "/" $$4, $$1 } } \
|
||
|
END { for (d in files) print "f", d, files[d] }' | \
|
||
|
while read type dir files; do \
|
||
|
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
|
||
|
test -z "$$files" || { \
|
||
|
echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(sbindir)$$dir'"; \
|
||
|
$(INSTALL_SCRIPT) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \
|
||
|
} \
|
||
|
; done
|
||
|
|
||
|
uninstall-dist_sbinSCRIPTS:
|
||
|
@$(NORMAL_UNINSTALL)
|
||
|
@list='$(dist_sbin_SCRIPTS)'; test -n "$(sbindir)" || exit 0; \
|
||
|
files=`for p in $$list; do echo "$$p"; done | \
|
||
|
sed -e 's,.*/,,;$(transform)'`; \
|
||
|
dir='$(DESTDIR)$(sbindir)'; $(am__uninstall_files_from_dir)
|
||
|
|
||
|
mostlyclean-libtool:
|
||
|
-rm -f *.lo
|
||
|
|
||
|
clean-libtool:
|
||
|
-rm -rf .libs _libs
|
||
|
|
||
|
distclean-libtool:
|
||
|
-rm -f libtool config.lt
|
||
|
|
||
|
# This directory's subdirectories are mostly independent; you can cd
|
||
|
# into them and run 'make' without going through this Makefile.
|
||
|
# To change the values of 'make' variables: instead of editing Makefiles,
|
||
|
# (1) if the variable is set in 'config.status', edit 'config.status'
|
||
|
# (which will cause the Makefiles to be regenerated when you run 'make');
|
||
|
# (2) otherwise, pass the desired values on the 'make' command line.
|
||
|
$(am__recursive_targets):
|
||
|
@fail=; \
|
||
|
if $(am__make_keepgoing); then \
|
||
|
failcom='fail=yes'; \
|
||
|
else \
|
||
|
failcom='exit 1'; \
|
||
|
fi; \
|
||
|
dot_seen=no; \
|
||
|
target=`echo $@ | sed s/-recursive//`; \
|
||
|
case "$@" in \
|
||
|
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||
|
*) list='$(SUBDIRS)' ;; \
|
||
|
esac; \
|
||
|
for subdir in $$list; do \
|
||
|
echo "Making $$target in $$subdir"; \
|
||
|
if test "$$subdir" = "."; then \
|
||
|
dot_seen=yes; \
|
||
|
local_target="$$target-am"; \
|
||
|
else \
|
||
|
local_target="$$target"; \
|
||
|
fi; \
|
||
|
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||
|
|| eval $$failcom; \
|
||
|
done; \
|
||
|
if test "$$dot_seen" = "no"; then \
|
||
|
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
||
|
fi; test -z "$$fail"
|
||
|
|
||
|
ID: $(am__tagged_files)
|
||
|
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||
|
tags: tags-recursive
|
||
|
TAGS: tags
|
||
|
|
||
|
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||
|
set x; \
|
||
|
here=`pwd`; \
|
||
|
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||
|
include_option=--etags-include; \
|
||
|
empty_fix=.; \
|
||
|
else \
|
||
|
include_option=--include; \
|
||
|
empty_fix=; \
|
||
|
fi; \
|
||
|
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||
|
if test "$$subdir" = .; then :; else \
|
||
|
test ! -f $$subdir/TAGS || \
|
||
|
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
|
||
|
fi; \
|
||
|
done; \
|
||
|
$(am__define_uniq_tagged_files); \
|
||
|
shift; \
|
||
|
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||
|
test -n "$$unique" || unique=$$empty_fix; \
|
||
|
if test $$# -gt 0; then \
|
||
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||
|
"$$@" $$unique; \
|
||
|
else \
|
||
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||
|
$$unique; \
|
||
|
fi; \
|
||
|
fi
|
||
|
ctags: ctags-recursive
|
||
|
|
||
|
CTAGS: ctags
|
||
|
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||
|
$(am__define_uniq_tagged_files); \
|
||
|
test -z "$(CTAGS_ARGS)$$unique" \
|
||
|
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||
|
$$unique
|
||
|
|
||
|
GTAGS:
|
||
|
here=`$(am__cd) $(top_builddir) && pwd` \
|
||
|
&& $(am__cd) $(top_srcdir) \
|
||
|
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||
|
cscope: cscope.files
|
||
|
test ! -s cscope.files \
|
||
|
|| $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
|
||
|
clean-cscope:
|
||
|
-rm -f cscope.files
|
||
|
cscope.files: clean-cscope cscopelist
|
||
|
cscopelist: cscopelist-recursive
|
||
|
|
||
|
cscopelist-am: $(am__tagged_files)
|
||
|
list='$(am__tagged_files)'; \
|
||
|
case "$(srcdir)" in \
|
||
|
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||
|
*) sdir=$(subdir)/$(srcdir) ;; \
|
||
|
esac; \
|
||
|
for i in $$list; do \
|
||
|
if test -f "$$i"; then \
|
||
|
echo "$(subdir)/$$i"; \
|
||
|
else \
|
||
|
echo "$$sdir/$$i"; \
|
||
|
fi; \
|
||
|
done >> $(top_builddir)/cscope.files
|
||
|
|
||
|
distclean-tags:
|
||
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||
|
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
|
||
|
distdir: $(BUILT_SOURCES)
|
||
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||
|
|
||
|
distdir-am: $(DISTFILES)
|
||
|
$(am__remove_distdir)
|
||
|
test -d "$(distdir)" || mkdir "$(distdir)"
|
||
|
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||
|
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||
|
list='$(DISTFILES)'; \
|
||
|
dist_files=`for file in $$list; do echo $$file; done | \
|
||
|
sed -e "s|^$$srcdirstrip/||;t" \
|
||
|
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||
|
case $$dist_files in \
|
||
|
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||
|
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||
|
sort -u` ;; \
|
||
|
esac; \
|
||
|
for file in $$dist_files; do \
|
||
|
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||
|
if test -d $$d/$$file; then \
|
||
|
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||
|
if test -d "$(distdir)/$$file"; then \
|
||
|
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||
|
fi; \
|
||
|
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||
|
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||
|
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||
|
fi; \
|
||
|
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||
|
else \
|
||
|
test -f "$(distdir)/$$file" \
|
||
|
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||
|
|| exit 1; \
|
||
|
fi; \
|
||
|
done
|
||
|
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||
|
if test "$$subdir" = .; then :; else \
|
||
|
$(am__make_dryrun) \
|
||
|
|| test -d "$(distdir)/$$subdir" \
|
||
|
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|
||
|
|| exit 1; \
|
||
|
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
|
||
|
$(am__relativize); \
|
||
|
new_distdir=$$reldir; \
|
||
|
dir1=$$subdir; dir2="$(top_distdir)"; \
|
||
|
$(am__relativize); \
|
||
|
new_top_distdir=$$reldir; \
|
||
|
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
|
||
|
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
|
||
|
($(am__cd) $$subdir && \
|
||
|
$(MAKE) $(AM_MAKEFLAGS) \
|
||
|
top_distdir="$$new_top_distdir" \
|
||
|
distdir="$$new_distdir" \
|
||
|
am__remove_distdir=: \
|
||
|
am__skip_length_check=: \
|
||
|
am__skip_mode_fix=: \
|
||
|
distdir) \
|
||
|
|| exit 1; \
|
||
|
fi; \
|
||
|
done
|
||
|
$(MAKE) $(AM_MAKEFLAGS) \
|
||
|
top_distdir="$(top_distdir)" distdir="$(distdir)" \
|
||
|
dist-hook
|
||
|
-test -n "$(am__skip_mode_fix)" \
|
||
|
|| find "$(distdir)" -type d ! -perm -755 \
|
||
|
-exec chmod u+rwx,go+rx {} \; -o \
|
||
|
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
|
||
|
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
|
||
|
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|
||
|
|| chmod -R a+r "$(distdir)"
|
||
|
dist-gzip: distdir
|
||
|
tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
|
||
|
$(am__post_remove_distdir)
|
||
|
dist-bzip2: distdir
|
||
|
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
|
||
|
$(am__post_remove_distdir)
|
||
|
|
||
|
dist-lzip: distdir
|
||
|
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
|
||
|
$(am__post_remove_distdir)
|
||
|
|
||
|
dist-xz: distdir
|
||
|
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
|
||
|
$(am__post_remove_distdir)
|
||
|
|
||
|
dist-zstd: distdir
|
||
|
tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
|
||
|
$(am__post_remove_distdir)
|
||
|
|
||
|
dist-tarZ: distdir
|
||
|
@echo WARNING: "Support for distribution archives compressed with" \
|
||
|
"legacy program 'compress' is deprecated." >&2
|
||
|
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
|
||
|
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
|
||
|
$(am__post_remove_distdir)
|
||
|
|
||
|
dist-shar: distdir
|
||
|
@echo WARNING: "Support for shar distribution archives is" \
|
||
|
"deprecated." >&2
|
||
|
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
|
||
|
shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
|
||
|
$(am__post_remove_distdir)
|
||
|
|
||
|
dist-zip: distdir
|
||
|
-rm -f $(distdir).zip
|
||
|
zip -rq $(distdir).zip $(distdir)
|
||
|
$(am__post_remove_distdir)
|
||
|
|
||
|
dist dist-all:
|
||
|
$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
|
||
|
$(am__post_remove_distdir)
|
||
|
|
||
|
# This target untars the dist file and tries a VPATH configuration. Then
|
||
|
# it guarantees that the distribution is self-contained by making another
|
||
|
# tarfile.
|
||
|
distcheck: dist
|
||
|
case '$(DIST_ARCHIVES)' in \
|
||
|
*.tar.gz*) \
|
||
|
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
|
||
|
*.tar.bz2*) \
|
||
|
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
|
||
|
*.tar.lz*) \
|
||
|
lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
|
||
|
*.tar.xz*) \
|
||
|
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
|
||
|
*.tar.Z*) \
|
||
|
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
|
||
|
*.shar.gz*) \
|
||
|
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
|
||
|
*.zip*) \
|
||
|
unzip $(distdir).zip ;;\
|
||
|
*.tar.zst*) \
|
||
|
zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
|
||
|
esac
|
||
|
chmod -R a-w $(distdir)
|
||
|
chmod u+w $(distdir)
|
||
|
mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
|
||
|
chmod a-w $(distdir)
|
||
|
test -d $(distdir)/_build || exit 0; \
|
||
|
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
|
||
|
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
|
||
|
&& am__cwd=`pwd` \
|
||
|
&& $(am__cd) $(distdir)/_build/sub \
|
||
|
&& ../../configure \
|
||
|
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
|
||
|
$(DISTCHECK_CONFIGURE_FLAGS) \
|
||
|
--srcdir=../.. --prefix="$$dc_install_base" \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) check \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) install \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
|
||
|
distuninstallcheck \
|
||
|
&& chmod -R a-w "$$dc_install_base" \
|
||
|
&& ({ \
|
||
|
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
|
||
|
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
|
||
|
} || { rm -rf "$$dc_destdir"; exit 1; }) \
|
||
|
&& rm -rf "$$dc_destdir" \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) dist \
|
||
|
&& rm -rf $(DIST_ARCHIVES) \
|
||
|
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
|
||
|
&& cd "$$am__cwd" \
|
||
|
|| exit 1
|
||
|
$(am__post_remove_distdir)
|
||
|
@(echo "$(distdir) archives ready for distribution: "; \
|
||
|
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
|
||
|
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
|
||
|
distuninstallcheck:
|
||
|
@test -n '$(distuninstallcheck_dir)' || { \
|
||
|
echo 'ERROR: trying to run $@ with an empty' \
|
||
|
'$$(distuninstallcheck_dir)' >&2; \
|
||
|
exit 1; \
|
||
|
}; \
|
||
|
$(am__cd) '$(distuninstallcheck_dir)' || { \
|
||
|
echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
|
||
|
exit 1; \
|
||
|
}; \
|
||
|
test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
|
||
|
|| { echo "ERROR: files left after uninstall:" ; \
|
||
|
if test -n "$(DESTDIR)"; then \
|
||
|
echo " (check DESTDIR support)"; \
|
||
|
fi ; \
|
||
|
$(distuninstallcheck_listfiles) ; \
|
||
|
exit 1; } >&2
|
||
|
distcleancheck: distclean
|
||
|
@if test '$(srcdir)' = . ; then \
|
||
|
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
|
||
|
exit 1 ; \
|
||
|
fi
|
||
|
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|
||
|
|| { echo "ERROR: files left in build directory after distclean:" ; \
|
||
|
$(distcleancheck_listfiles) ; \
|
||
|
exit 1; } >&2
|
||
|
check-am: all-am
|
||
|
check: check-recursive
|
||
|
all-am: Makefile $(SCRIPTS) $(DATA) config.h
|
||
|
installdirs: installdirs-recursive
|
||
|
installdirs-am:
|
||
|
for dir in "$(DESTDIR)$(sbindir)"; do \
|
||
|
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||
|
done
|
||
|
install: install-recursive
|
||
|
install-exec: install-exec-recursive
|
||
|
install-data: install-data-recursive
|
||
|
uninstall: uninstall-recursive
|
||
|
|
||
|
install-am: all-am
|
||
|
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||
|
|
||
|
installcheck: installcheck-recursive
|
||
|
install-strip:
|
||
|
if test -z '$(STRIP)'; then \
|
||
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||
|
install; \
|
||
|
else \
|
||
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||
|
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||
|
fi
|
||
|
mostlyclean-generic:
|
||
|
|
||
|
clean-generic:
|
||
|
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
||
|
|
||
|
distclean-generic:
|
||
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||
|
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||
|
|
||
|
maintainer-clean-generic:
|
||
|
@echo "This command is intended for maintainers to use"
|
||
|
@echo "it deletes files that may require special tools to rebuild."
|
||
|
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
|
||
|
clean: clean-recursive
|
||
|
|
||
|
clean-am: clean-generic clean-libtool mostlyclean-am
|
||
|
|
||
|
distclean: distclean-recursive
|
||
|
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||
|
-rm -f Makefile
|
||
|
distclean-am: clean-am distclean-generic distclean-hdr \
|
||
|
distclean-libtool distclean-tags
|
||
|
|
||
|
dvi: dvi-recursive
|
||
|
|
||
|
dvi-am:
|
||
|
|
||
|
html: html-recursive
|
||
|
|
||
|
html-am:
|
||
|
|
||
|
info: info-recursive
|
||
|
|
||
|
info-am:
|
||
|
|
||
|
install-data-am:
|
||
|
|
||
|
install-dvi: install-dvi-recursive
|
||
|
|
||
|
install-dvi-am:
|
||
|
|
||
|
install-exec-am: install-dist_sbinSCRIPTS
|
||
|
@$(NORMAL_INSTALL)
|
||
|
$(MAKE) $(AM_MAKEFLAGS) install-exec-hook
|
||
|
install-html: install-html-recursive
|
||
|
|
||
|
install-html-am:
|
||
|
|
||
|
install-info: install-info-recursive
|
||
|
|
||
|
install-info-am:
|
||
|
|
||
|
install-man:
|
||
|
|
||
|
install-pdf: install-pdf-recursive
|
||
|
|
||
|
install-pdf-am:
|
||
|
|
||
|
install-ps: install-ps-recursive
|
||
|
|
||
|
install-ps-am:
|
||
|
|
||
|
installcheck-am:
|
||
|
|
||
|
maintainer-clean: maintainer-clean-recursive
|
||
|
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||
|
-rm -rf $(top_srcdir)/autom4te.cache
|
||
|
-rm -f Makefile
|
||
|
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||
|
|
||
|
mostlyclean: mostlyclean-recursive
|
||
|
|
||
|
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||
|
|
||
|
pdf: pdf-recursive
|
||
|
|
||
|
pdf-am:
|
||
|
|
||
|
ps: ps-recursive
|
||
|
|
||
|
ps-am:
|
||
|
|
||
|
uninstall-am: uninstall-dist_sbinSCRIPTS
|
||
|
@$(NORMAL_INSTALL)
|
||
|
$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
|
||
|
.MAKE: $(am__recursive_targets) all install-am install-exec-am \
|
||
|
install-strip uninstall-am
|
||
|
|
||
|
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
|
||
|
am--refresh check check-am clean clean-cscope clean-generic \
|
||
|
clean-libtool cscope cscopelist-am ctags ctags-am dist \
|
||
|
dist-all dist-bzip2 dist-gzip dist-hook dist-lzip dist-shar \
|
||
|
dist-tarZ dist-xz dist-zip dist-zstd distcheck distclean \
|
||
|
distclean-generic distclean-hdr distclean-libtool \
|
||
|
distclean-tags distcleancheck distdir distuninstallcheck dvi \
|
||
|
dvi-am html html-am info info-am install install-am \
|
||
|
install-data install-data-am install-dist_sbinSCRIPTS \
|
||
|
install-dvi install-dvi-am install-exec install-exec-am \
|
||
|
install-exec-hook install-html install-html-am install-info \
|
||
|
install-info-am install-man install-pdf install-pdf-am \
|
||
|
install-ps install-ps-am install-strip installcheck \
|
||
|
installcheck-am installdirs installdirs-am maintainer-clean \
|
||
|
maintainer-clean-generic mostlyclean mostlyclean-generic \
|
||
|
mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
|
||
|
uninstall-am uninstall-dist_sbinSCRIPTS uninstall-hook
|
||
|
|
||
|
.PRECIOUS: Makefile
|
||
|
|
||
|
|
||
|
GIT_BRANCH ?= rhel-10
|
||
|
L10N_DIR ?= rhel-10
|
||
|
BASE_CONTAINER ?= quay.io/centos/centos:stream10-development
|
||
|
COPR_REPO ?= rhinstaller-group/Anaconda
|
||
|
|
||
|
# What to pull from the l10n repo when getting translations
|
||
|
# This supports anything that git can use, but is intended to be a SHA of a commit that works.
|
||
|
# This line must be always in the same format, because it is changed by automation.
|
||
|
GIT_L10N_SHA ?= 988af921837fef107978b08e65beef52398435c5
|
||
|
|
||
|
# Localization repository location
|
||
|
L10N_REPOSITORY ?= https://github.com/rhinstaller/anaconda-l10n.git
|
||
|
|
||
|
# Branch used in localization repository. This should be master all the time.
|
||
|
GIT_L10N_BRANCH ?= master
|
||
|
|
||
|
install-exec-hook:
|
||
|
cd $(DESTDIR)$(sbindir) && mv anaconda.py anaconda
|
||
|
|
||
|
uninstall-hook:
|
||
|
-cd $(DESTDIR)$(sbindir) && rm -f anaconda
|
||
|
|
||
|
# Set environment if 'make -f Makefile.am' is called to avoid autotools
|
||
|
srcdir ?= $(CURDIR)
|
||
|
|
||
|
# Set this to "true" if you want to have SRPM archive with test version
|
||
|
TEST_BUILD ?= "false"
|
||
|
|
||
|
RC_RELEASE ?= $(shell date -u +0.1.%Y%m%d%H%M%S)
|
||
|
|
||
|
PYTHON ?= python3
|
||
|
COVERAGE ?= $(PYTHON) -m coverage
|
||
|
USER_SITE_BASE ?= $(abs_top_builddir)/python-site
|
||
|
USER_SITE_PACKAGES ?= $(shell PYTHONUSERBASE=$(USER_SITE_BASE) $(PYTHON) -m site --user-site)
|
||
|
|
||
|
RESULT_DIR ?= $(abs_top_builddir)/result
|
||
|
|
||
|
CONTAINER_ENGINE ?= podman
|
||
|
# build/run tweaks for all containers, such as --cap-add
|
||
|
# Network needs to use host configuration so it is sharing VPN connection
|
||
|
CONTAINER_BUILD_ARGS ?= --no-cache --network=host
|
||
|
# run tweaks for all containers
|
||
|
# Network needs to use host configuration so it is sharing VPN connection
|
||
|
CONTAINER_RUN_ARGS ?= --tty --interactive --network=host
|
||
|
# HACK: bash's builtin `test -r` fails when running on Ubuntu host (GitHub) due to incompatible seccomp profile
|
||
|
CONTAINER_TEST_ARGS ?= $(shell grep -q ID=ubuntu /etc/os-release && echo --security-opt=seccomp=unconfined)
|
||
|
CONTAINER_REGISTRY ?= quay.io
|
||
|
# Add additional args to the existing ones to container engine
|
||
|
CONTAINER_ADD_ARGS ?=
|
||
|
# Glade was removed in RHEL from RHEL-10 -- let's put that as condition to container runs on CentOS or RHEL
|
||
|
CONTAINER_CONFIGURE_ARGS ?= $(shell test "$(GIT_BRANCH)" = "rhel-10" && echo "--env=CONFIGURE_ARGS=--disable-glade")
|
||
|
|
||
|
# anaconda-ci container
|
||
|
CI_DOCKERFILE ?= $(srcdir)/dockerfile/anaconda-ci
|
||
|
RPM_DOCKERFILE ?= $(srcdir)/dockerfile/anaconda-rpm
|
||
|
RELEASE_DOCKERFILE ?= $(srcdir)/dockerfile/anaconda-release
|
||
|
ISO_CREATOR_DOCKERFILE ?= $(srcdir)/dockerfile/anaconda-iso-creator
|
||
|
LIVE_ISO_CREATOR_DOCKERFILE ?= $(srcdir)/dockerfile/anaconda-live-iso-creator
|
||
|
CI_NAME ?= $(CONTAINER_REGISTRY)/rhinstaller/anaconda-ci
|
||
|
RPM_NAME ?= $(CONTAINER_REGISTRY)/rhinstaller/anaconda-rpm
|
||
|
RELEASE_NAME ?= $(CONTAINER_REGISTRY)/rhinstaller/anaconda-release
|
||
|
ISO_CREATOR_NAME ?= $(CONTAINER_REGISTRY)/rhinstaller/anaconda-iso-creator
|
||
|
LIVE_ISO_CREATOR_NAME ?= $(CONTAINER_REGISTRY)/rhinstaller/anaconda-live-iso-creator
|
||
|
CI_TEST_ARGS ?= --rm -v $(srcdir):/anaconda:z
|
||
|
CI_CMD ?= make ci
|
||
|
|
||
|
SKIP_BRANCHING_CHECK ?= "false"
|
||
|
|
||
|
# If translations are present, run tests on the .po files before tarring them
|
||
|
# up. Use a weird looking loop because shell doesn't have a good way to test
|
||
|
# for a wildcard
|
||
|
dist-hook:
|
||
|
for p in $(distdir)/po/*.po ; do \
|
||
|
if [ -e "$$p" ]; then \
|
||
|
PYTHONPATH=$(srcdir)/translation-canary $(PYTHON) -m translation_canary.translated \
|
||
|
--release $(distdir)/po ; \
|
||
|
fi ; \
|
||
|
break ; \
|
||
|
done
|
||
|
|
||
|
pot:
|
||
|
$(MAKE) -C po $(PACKAGE_NAME).pot-update
|
||
|
rm -f $(srcdir)/po/{main,main_js}.pot
|
||
|
|
||
|
pot-update-check: pot
|
||
|
# This check is used by github action for auto update of pot file
|
||
|
# This algorithm will make these steps:
|
||
|
# - clone localization repository
|
||
|
# - copy pot file to this repository
|
||
|
# - check if pot file is changed (ignore the POT-Creation-Date otherwise it's always changed)
|
||
|
@TEMP_DIR=$$(mktemp --tmpdir -d anaconda-localization-XXXXXXXXXX) || exit 5 ; \
|
||
|
git clone --depth 1 -b $(GIT_L10N_BRANCH) -- $(L10N_REPOSITORY) $$TEMP_DIR || exit 6 ; \
|
||
|
cp $(srcdir)/po/anaconda.pot $$TEMP_DIR/$(L10N_DIR)/ || exit 7 ; \
|
||
|
pushd $$TEMP_DIR/$(L10N_DIR) ; \
|
||
|
git difftool --trust-exit-code -y -x "diff -u -I '^\"POT-Creation-Date: .*$$'" HEAD ./anaconda.pot &>/dev/null ; \
|
||
|
RESULT=$$?; \
|
||
|
popd ; \
|
||
|
rm -rf $$TEMP_DIR; \
|
||
|
if [ $$RESULT -eq 0 ] ; then \
|
||
|
echo "Pot file is up to date."; \
|
||
|
else \
|
||
|
echo "Pot file needs update! Please update the pot file ./po/anaconda.pot in $(L10N_REPOSITORY)"; \
|
||
|
fi ;
|
||
|
|
||
|
scratch:
|
||
|
if [ "$(TEST_BUILD)" == "true" ]; then \
|
||
|
sed -ri '/AC_INIT/ s/\[[0-9.]+\]/[999999999]/' $(srcdir)/configure.ac; \
|
||
|
fi
|
||
|
$(MAKE) ARCHIVE_TAG=HEAD dist
|
||
|
|
||
|
scratch-bumpver:
|
||
|
@opts="-S -n $(PACKAGE_NAME) -v $(PACKAGE_VERSION) -r $(PACKAGE_RELEASE) -b $(PACKAGE_BUGREPORT) --newrelease $(RC_RELEASE)" ; \
|
||
|
if [ ! -z "$(IGNORE)" ]; then \
|
||
|
opts="$${opts} -i $(IGNORE)" ; \
|
||
|
fi ; \
|
||
|
if [ ! -z "$(MAP)" ]; then \
|
||
|
opts="$${opts} -m $(MAP)" ; \
|
||
|
fi ; \
|
||
|
if [ ! -z "$(BZDEBUG)" ]; then \
|
||
|
opts="$${opts} -d" ; \
|
||
|
fi ; \
|
||
|
( cd $(srcdir) && scripts/makebumpver $${opts} ) || exit 1 ; \
|
||
|
$(MAKE) -C po $(PACKAGE_NAME).pot-update
|
||
|
|
||
|
release:
|
||
|
$(MAKE) dist
|
||
|
|
||
|
container-release:
|
||
|
$(CONTAINER_ENGINE) run \
|
||
|
$(CONTAINER_TEST_ARGS) \
|
||
|
$(CI_TEST_ARGS) \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
$(CONTAINER_RUN_ARGS) \
|
||
|
$(CONTAINER_CONFIGURE_ARGS) \
|
||
|
$(RELEASE_NAME):$(CI_TAG) \
|
||
|
sh -exc './autogen.sh && ./configure && make release'
|
||
|
|
||
|
anaconda-ci-build:
|
||
|
TEMP=$$(mktemp -t -d anaconda-ci-build.XXXX) && \
|
||
|
cp $(srcdir)/anaconda.spec.in $(CI_DOCKERFILE)/* $$TEMP/ && \
|
||
|
echo "Build dir is $$TEMP" && \
|
||
|
$(CONTAINER_ENGINE) build \
|
||
|
$(CONTAINER_BUILD_ARGS) \
|
||
|
--pull-always \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
--build-arg=git_branch=$(GIT_BRANCH) \
|
||
|
--build-arg=image=$(BASE_CONTAINER) \
|
||
|
--build-arg=copr_repo=$(COPR_REPO) \
|
||
|
--tag $(CI_NAME):$(CI_TAG) \
|
||
|
$$TEMP/ && \
|
||
|
rm -rf $$TEMP
|
||
|
|
||
|
anaconda-rpm-build:
|
||
|
TEMP=$$(mktemp -t -d anaconda-rpm-build.XXXX) && \
|
||
|
cp $(srcdir)/anaconda.spec.in $(RPM_DOCKERFILE)/* $$TEMP/ && \
|
||
|
echo "Build dir is $$TEMP" && \
|
||
|
$(CONTAINER_ENGINE) build \
|
||
|
$(CONTAINER_BUILD_ARGS) \
|
||
|
--pull-always \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
--build-arg=git_branch=$(GIT_BRANCH) \
|
||
|
--build-arg=image=$(BASE_CONTAINER) \
|
||
|
--build-arg=copr_repo=$(COPR_REPO) \
|
||
|
--tag $(RPM_NAME):$(CI_TAG) \
|
||
|
$$TEMP/ && \
|
||
|
rm -rf $$TEMP
|
||
|
|
||
|
anaconda-release-build: anaconda-rpm-build
|
||
|
$(CONTAINER_ENGINE) build \
|
||
|
$(CONTAINER_BUILD_ARGS) \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
--build-arg=image=$(RPM_NAME):$(CI_TAG) \
|
||
|
--tag $(RELEASE_NAME):$(CI_TAG) \
|
||
|
$(RELEASE_DOCKERFILE)
|
||
|
|
||
|
anaconda-iso-creator-build:
|
||
|
@sudo -nv 2>/dev/null || echo "You will be prompted for sudo password because this container has to be used under root!"
|
||
|
|
||
|
sudo $(CONTAINER_ENGINE) build \
|
||
|
$(CONTAINER_BUILD_ARGS) \
|
||
|
--pull-always \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
--build-arg=image=$(BASE_CONTAINER) \
|
||
|
--tag $(ISO_CREATOR_NAME):$(CI_TAG) \
|
||
|
$(ISO_CREATOR_DOCKERFILE)
|
||
|
|
||
|
anaconda-live-iso-creator-build:
|
||
|
@test "$(GIT_BRANCH)" != "rhel-10" || ( echo "The Live ISO builds are not supported on rhel-10!"; exit 99 )
|
||
|
|
||
|
@sudo -nv 2>/dev/null || echo "You will be prompted for sudo password because this container has to be used under root!"
|
||
|
|
||
|
sudo $(CONTAINER_ENGINE) build \
|
||
|
$(CONTAINER_BUILD_ARGS) \
|
||
|
--pull-always \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
--build-arg=image=$(BASE_CONTAINER) \
|
||
|
--tag $(LIVE_ISO_CREATOR_NAME):$(CI_TAG) \
|
||
|
$(LIVE_ISO_CREATOR_DOCKERFILE)
|
||
|
|
||
|
# User has to be logged first to be able to push the image.
|
||
|
# See `podman login` for more info.
|
||
|
anaconda-ci-push:
|
||
|
$(CONTAINER_ENGINE) push \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
$(CI_NAME):$(CI_TAG)
|
||
|
|
||
|
anaconda-rpm-push:
|
||
|
$(CONTAINER_ENGINE) push \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
$(RPM_NAME):$(CI_TAG)
|
||
|
|
||
|
bumpver:
|
||
|
@opts="-n $(PACKAGE_NAME) -v $(PACKAGE_VERSION) -r $(PACKAGE_RELEASE) -b $(PACKAGE_BUGREPORT)" ; \
|
||
|
if [ ! -z "$(IGNORE)" ]; then \
|
||
|
opts="$${opts} -i $(IGNORE)" ; \
|
||
|
fi ; \
|
||
|
if [ ! -z "$(MAP)" ]; then \
|
||
|
opts="$${opts} -m $(MAP)" ; \
|
||
|
fi ; \
|
||
|
if [ ! -z "$(BZDEBUG)" ]; then \
|
||
|
opts="$${opts} -d" ; \
|
||
|
fi ; \
|
||
|
if [ ! -z "$(SKIP_ACKS)" ]; then \
|
||
|
opts="$${opts} -s" ; \
|
||
|
fi ; \
|
||
|
( cd $(srcdir) && scripts/makebumpver $${opts} ) || exit 1
|
||
|
-$(MAKE) pot-update-check
|
||
|
|
||
|
# (s)rpm builds
|
||
|
|
||
|
srpm: scratch anaconda.spec
|
||
|
rpmbuild --define "_sourcedir $(abs_srcdir)" --define "_srcrpmdir $(SRPM_BUILD_DIR)" -bs anaconda.spec
|
||
|
|
||
|
rpms: srpm
|
||
|
rpmbuild --rebuild --define "_rpmdir $(RPM_BUILD_DIR)" $(SRPM_BUILD_DIR)/anaconda-*.src.rpm
|
||
|
mv "$(RPM_BUILD_DIR)"/*/*.rpm "$(RPM_BUILD_DIR)" # move rpms from per-architecture subdirectory
|
||
|
|
||
|
# GUI TESTING
|
||
|
runglade:
|
||
|
ANACONDA_DATA=$(srcdir)/data \
|
||
|
ANACONDA_WIDGETS_OVERRIDES=$(srcdir)/widgets/python \
|
||
|
PYTHONPATH=$(srcdir):$(srcdir)/widgets/python/:$(builddir)/widgets/src/.libs/ \
|
||
|
LD_LIBRARY_PATH=$(builddir)/widgets/src/.libs \
|
||
|
UIPATH=$(srcdir)/pyanaconda/ui/gui/ \
|
||
|
GI_TYPELIB_PATH=$(builddir)/widgets/src/ \
|
||
|
GLADE_CATALOG_SEARCH_PATH=$(srcdir)/widgets/glade \
|
||
|
GLADE_MODULE_SEARCH_PATH=$(builddir)/widgets/src/.libs \
|
||
|
glade ${GLADE_FILE}
|
||
|
|
||
|
ci:
|
||
|
$(MAKE) run-tests || echo $$? > $(srcdir)/tests/error_occured
|
||
|
$(MAKE) grab-logs
|
||
|
|
||
|
@if [ -f $(srcdir)/tests/error_occured ]; then \
|
||
|
echo "TEST FAILED"; \
|
||
|
status=$$(cat $(srcdir)/tests/error_occured); \
|
||
|
rm $(srcdir)/tests/error_occured; \
|
||
|
exit $$status; \
|
||
|
fi
|
||
|
|
||
|
# container-ci target will have disabled cockpit Makefiles by default
|
||
|
# The SYS_CHROOT capability is required for user creation tests and was dropped on podman 4.4.X
|
||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=2170568
|
||
|
container-ci:
|
||
|
@./scripts/testing/check-container-age.sh "$(CI_NAME):$(CI_TAG)"
|
||
|
|
||
|
$(CONTAINER_ENGINE) run \
|
||
|
--entrypoint /anaconda/dockerfile/anaconda-ci/run-build-and-arg \
|
||
|
$(CONTAINER_TEST_ARGS) \
|
||
|
$(CI_TEST_ARGS) \
|
||
|
$(CONTAINER_RUN_ARGS) \
|
||
|
$(CONTAINER_CONFIGURE_ARGS) \
|
||
|
--cap-add=SYS_CHROOT \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
$(CI_NAME):$(CI_TAG) \
|
||
|
$(CI_CMD)
|
||
|
|
||
|
# The SYS_CHROOT capability is required for user creation tests and was dropped on podman 4.4.X
|
||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=2170568
|
||
|
container-shell:
|
||
|
$(CONTAINER_ENGINE) run \
|
||
|
$(CONTAINER_TEST_ARGS) \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
$(CONTAINER_RUN_ARGS) \
|
||
|
$(CI_TEST_ARGS) \
|
||
|
$(CONTAINER_CONFIGURE_ARGS) \
|
||
|
--cap-add=SYS_CHROOT \
|
||
|
$(CI_NAME):$(CI_TAG)
|
||
|
|
||
|
container-pylint-only:
|
||
|
$(MAKE) -f ./Makefile.am container-ci CI_CMD="make tests-pylint"
|
||
|
|
||
|
container-rpm-test:
|
||
|
@./scripts/testing/check-container-age.sh "$(RPM_NAME):$(CI_TAG)"
|
||
|
|
||
|
$(CONTAINER_ENGINE) run \
|
||
|
$(CONTAINER_TEST_ARGS) \
|
||
|
$(CI_TEST_ARGS) \
|
||
|
-v $(CI_DOCKERFILE)/run-build-and-arg:/run-build-and-arg \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
$(CONTAINER_RUN_ARGS) \
|
||
|
$(CONTAINER_CONFIGURE_ARGS) \
|
||
|
$(RPM_NAME):$(CI_TAG) \
|
||
|
sh -exc ' \
|
||
|
/run-build-and-arg make run-rpm-tests-only; \
|
||
|
dnf install -y /tmp/anaconda/result/build/01-rpm-build/*.rpm'
|
||
|
|
||
|
container-rpms:
|
||
|
@./scripts/testing/check-container-age.sh "$(RPM_NAME):$(CI_TAG)"
|
||
|
|
||
|
$(CONTAINER_ENGINE) run \
|
||
|
$(CONTAINER_TEST_ARGS) \
|
||
|
$(CI_TEST_ARGS) \
|
||
|
$(CONTAINER_CONFIGURE_ARGS) \
|
||
|
$(CONTAINER_RUN_ARGS) \
|
||
|
-v $(CI_DOCKERFILE)/run-build-and-arg:/run-build-and-arg \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
$(RPM_NAME):$(CI_TAG) \
|
||
|
sh -exc ' \
|
||
|
/run-build-and-arg make rpms && \
|
||
|
rm -rf ./result && \
|
||
|
cp -rv /tmp/anaconda/result ./'
|
||
|
|
||
|
container-rpms-scratch:
|
||
|
$(MAKE) -f ./Makefile.am CONTAINER_ADD_ARGS="-e TEST_BUILD=true" container-rpms
|
||
|
|
||
|
# Build ISO from Anaconda RPM files build here
|
||
|
container-iso-build:
|
||
|
@sudo -nv 2>/dev/null || echo "You will be prompted for sudo password because of loop device mounting in Lorax!"
|
||
|
|
||
|
@if ! ls $(srcdir)/result/build/01-rpm-build/anaconda-*.rpm >/dev/null 2>/dev/null; then \
|
||
|
echo "You need to have anaconda RPMs build first. Please run 'make -f ./Makefile.am container-rpms-scratch' before this command."; \
|
||
|
exit 1; \
|
||
|
fi
|
||
|
|
||
|
mkdir -p result/iso
|
||
|
sudo $(CONTAINER_ENGINE) run \
|
||
|
--rm \
|
||
|
--privileged \
|
||
|
$(shell test $(shell grep MemTotal /proc/meminfo | awk '{print $$2}') -gt 11000000 && \
|
||
|
echo --tmpfs /var/tmp:rw,mode=1777) \
|
||
|
-v $(srcdir)/result/build/01-rpm-build:/anaconda-rpms:ro \
|
||
|
-v $(srcdir)/result/iso:/images:z \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
$(CONTAINER_RUN_ARGS) \
|
||
|
$(ISO_CREATOR_NAME):$(CI_TAG)
|
||
|
@echo "ISO is stored in $(scrdir)/result/iso/"
|
||
|
|
||
|
# Build WebUI ISO from Anaconda RPM files build here
|
||
|
container-webui-iso-build:
|
||
|
@test "$(GIT_BRANCH)" != "rhel-10" || ( echo "The webui ISO builds are not supported on rhel-10!"; exit 99 )
|
||
|
|
||
|
$(MAKE) -f ./Makefile.am container-iso-build CONTAINER_ADD_ARGS="--entrypoint=/lorax-build-webui"
|
||
|
|
||
|
# Build LIVE ISO from Anaconda RPM files build here
|
||
|
container-live-iso-build:
|
||
|
@test "$(GIT_BRANCH)" != "rhel-10" || ( echo "The Live ISO builds are not supported on rhel-10!"; exit 99 )
|
||
|
|
||
|
@sudo -nv 2>/dev/null || echo "You will be prompted for sudo password because of loop device mounting in Lorax!"
|
||
|
|
||
|
@if ! ls $(srcdir)/result/build/01-rpm-build/anaconda-*.rpm >/dev/null 2>/dev/null; then \
|
||
|
echo "You need to have anaconda RPMs build first. Please run 'make -f ./Makefile.am container-rpms-scratch' before this command."; \
|
||
|
exit 1; \
|
||
|
fi
|
||
|
|
||
|
mkdir -p result/iso/logs
|
||
|
sudo $(CONTAINER_ENGINE) run \
|
||
|
--rm \
|
||
|
--tty \
|
||
|
--privileged \
|
||
|
$(shell test $(shell grep MemTotal /proc/meminfo | awk '{print $$2}') -gt 15000000 && \
|
||
|
echo --tmpfs /var/tmp:rw,mode=1777) \
|
||
|
--device /dev/kvm \
|
||
|
-v $(srcdir)/result/build/01-rpm-build:/anaconda-rpms:ro \
|
||
|
-v $(srcdir)/result/iso:/images:z \
|
||
|
$(CONTAINER_ADD_ARGS) \
|
||
|
$(CONTAINER_RUN_ARGS) \
|
||
|
$(LIVE_ISO_CREATOR_NAME):$(CI_TAG)
|
||
|
@echo "ISO is stored in $(scrdir)/result/iso/"
|
||
|
|
||
|
check-branching:
|
||
|
# checking if branching can be finished and all the pieces are in place
|
||
|
@echo "===================================="
|
||
|
@echo "Testing branch configuration"
|
||
|
@echo "===================================="
|
||
|
@if [ "$(SKIP_BRANCHING_CHECK)" != "false" ]; then \
|
||
|
echo "skipping..."; \
|
||
|
else \
|
||
|
CURRENT_BRANCH=$$(git rev-parse --abbrev-ref HEAD); \
|
||
|
if [ "$$CURRENT_BRANCH" != "$(GIT_BRANCH)" ]; then \
|
||
|
echo "*** Configuration is not adjusted for current branch!"; \
|
||
|
echo "This check will work only on main development branch fedora-XX, rhel-X ..."; \
|
||
|
echo "current branch: $$CURRENT_BRANCH"; \
|
||
|
echo "expected branch: $(GIT_BRANCH)"; \
|
||
|
exit 1; \
|
||
|
fi; \
|
||
|
fi
|
||
|
|
||
|
@echo "===================================="
|
||
|
@echo "Testing localization for $(L10N_DIR)"
|
||
|
@echo "===================================="
|
||
|
@curl --fail --silent --show-error -L https://raw.githubusercontent.com/rhinstaller/anaconda-l10n/$(GIT_L10N_SHA)/$(L10N_DIR)/anaconda.pot >/dev/null || \
|
||
|
(echo "*** Can't download translations from a localization repository"; \
|
||
|
echo "repository: $(L10N_REPOSITORY)"; \
|
||
|
echo "sha: $(GIT_L10N_SHA)"; \
|
||
|
echo "directory: $(L10N_DIR)"; \
|
||
|
exit 2)
|
||
|
|
||
|
@echo "===================================="
|
||
|
@echo "Testing pykickstart configuration"
|
||
|
@echo "===================================="
|
||
|
@substituted_branch=$$(echo "$(GIT_BRANCH)" | sed 's/^master$$/DEVEL/'); \
|
||
|
for i in $$(git grep 'from pykickstart.version import DEVEL as VERSION' -- pyanaconda/ dracut/ | awk -F "[: ]" '!/.j2:/ {print $$1 ";" $$5}'); do \
|
||
|
i=$${i^^}; \
|
||
|
if [ "$${i#*;}" != "$$substituted_branch" ]; then \
|
||
|
echo "$${i%;*} is not substituted properly!"; \
|
||
|
exit 3;\
|
||
|
fi; \
|
||
|
done
|
||
|
|
||
|
@echo "SUCCESS"
|
||
|
|
||
|
grab-logs:
|
||
|
# can't be used after tests automatically because make will end when tests fails
|
||
|
# clean result dir
|
||
|
-rm -rf $(TEST_RESULT_DIR)
|
||
|
mkdir -p $(TEST_RESULT_DIR)
|
||
|
|
||
|
-cd $(top_builddir)/tests/ && cp -r --parents ./**/*.log ./*.log* $(TEST_RESULT_DIR)
|
||
|
-cd $(top_builddir)/tests/ && cp -r --parents ./*.log* $(TEST_RESULT_DIR)
|
||
|
|
||
|
run-tests:
|
||
|
@mkdir -p $(USER_SITE_PACKAGES)
|
||
|
@cp $(abs_builddir)/tests/usercustomize.py $(USER_SITE_PACKAGES)
|
||
|
$(MAKE)
|
||
|
$(MAKE) TMPDIR=/var/tmp COVERAGE_PROCESS_START=$(abs_builddir)/.coveragerc \
|
||
|
TEST_SUITE_LOG=test-suite.log PYTHONUSERBASE=$(USER_SITE_BASE) check
|
||
|
@tail -n 1 tests/gettext_tests/*.log > tests/gettext_tests/gettext_tests.log
|
||
|
@rm -rf $(USER_SITE_BASE)
|
||
|
$(MAKE) coverage-report
|
||
|
|
||
|
tests-pylint:
|
||
|
$(MAKE)
|
||
|
# For a weird reason when pylint is not in TESTS included for automake (during configure)
|
||
|
# it won't allow us to use makefile check to start the tests.
|
||
|
# Unfortunately, we removed pylint from the TESTS because we don't want it to run as default
|
||
|
set -o pipefail ; \
|
||
|
$(srcdir)/tests/pylint/runpylint | tee $(srcdir)/tests/pylint/runpylint.log ; \
|
||
|
rc=$$? ; \
|
||
|
$(MAKE) grab-logs ; \
|
||
|
exit $$rc
|
||
|
|
||
|
tests-unit-only:
|
||
|
@mkdir -p $(USER_SITE_PACKAGES)
|
||
|
@cp $(abs_builddir)/tests/usercustomize.py $(USER_SITE_PACKAGES)
|
||
|
$(MAKE)
|
||
|
$(MAKE) -C $(srcdir) TMPDIR=/var/tmp COVERAGE_PROCESS_START=$(abs_builddir)/.coveragerc \
|
||
|
TEST_SUITE_LOG=test-suite.log TESTS=unit_tests/unit_tests.sh \
|
||
|
PYTHONUSERBASE=$(USER_SITE_BASE) check
|
||
|
@rm -rf $(USER_SITE_BASE)
|
||
|
$(MAKE) coverage-report
|
||
|
|
||
|
run-rpm-tests-only: rpms
|
||
|
$(MAKE) TEST_SUITE_LOG=test-suite.log RPM_PATH=$(RPM_BUILD_DIR) \
|
||
|
ROOT_ANACONDA_PATH=$(abs_srcdir) TESTS=rpm_tests/rpm_tests.sh check
|
||
|
|
||
|
coverage-report:
|
||
|
$(COVERAGE) combine tests/.coverage.*
|
||
|
$(COVERAGE) xml -o tests/coverage-report.xml
|
||
|
$(COVERAGE) report -m --omit "tests/*" > tests/coverage-report.log
|
||
|
$(COVERAGE) report -m --include "tests/*" > tests/coverage-tests.log
|
||
|
$(COVERAGE) report -m --include "pyanaconda/dbus*,pyanaconda/modules/*,pyanaconda/core/*" \
|
||
|
> tests/coverage-modular.log
|
||
|
@cat tests/coverage-report.log
|
||
|
|
||
|
reload-infra:
|
||
|
@for template in $$(find . -type f -name '*.j2'); do \
|
||
|
$(TEMPLATE_RENDERER) $${template} $${template%.j2}; \
|
||
|
done
|
||
|
|
||
|
bump-l10n-sha:
|
||
|
@new_sha=$$(git ls-remote "$(L10N_REPOSITORY)" "refs/heads/$(GIT_L10N_BRANCH)" | cut -f 1); \
|
||
|
echo "New SHA: $$new_sha"; \
|
||
|
old_sha=$$(grep "GIT_L10N_SHA" po/l10n-config.mk | FS="?=" awk '{print $$3}'); \
|
||
|
echo "Old SHA: $$old_sha"; \
|
||
|
if [ "$$old_sha" != "$$new_sha" ] ; then \
|
||
|
echo "Writing new SHA."; \
|
||
|
sed -i "s/GIT_L10N_SHA ?= $$old_sha/GIT_L10N_SHA ?= $$new_sha/g" po/l10n-config.mk; \
|
||
|
else \
|
||
|
echo "Nothing to do."; \
|
||
|
fi
|
||
|
|
||
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||
|
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||
|
.NOEXPORT:
|