redhat: Change Makefile target names to dist-

The distribution specific Makefile target names begin with rh-.  Switch
them to be use the distro agnostic dist-.

rh-dist-git-test and rh-dist-git are renamed to dist-git-test and
dist-git.

Signed-off-by: Prarit Bhargava <prarit@redhat.com>

v2: Update to include jcline's newly added docs
v3: Clean up rh-help and rh-full-help output.  I made all text conform
to 80 chars.
This commit is contained in:
Prarit Bhargava 2020-05-12 19:54:03 -04:00 committed by Justin M. Forbes
parent 7ed3747120
commit 6248bf65e9
No known key found for this signature in database
GPG Key ID: B8FA7924A4B1C140
14 changed files with 182 additions and 171 deletions

View File

@ -1,4 +1,4 @@
ifeq ($(filter rh-% rhg-%,$(MAKECMDGOALS)),)
ifeq ($(filter dist-% distg-%,$(MAKECMDGOALS)),)
include Makefile
endif
@ -8,9 +8,9 @@ ifeq ("$(origin O)", "command line")
_OUTPUT := "$(abspath $(O))"
_EXTRA_ARGS := O=$(_OUTPUT)
endif
rh-%::
dist-%::
$(MAKE) -C redhat $(@) $(_EXTRA_ARGS)
rhg-%::
distg-%::
$(MAKE) -C redhat $(@) $(_EXTRA_ARGS)

View File

@ -57,9 +57,9 @@ KABIDW := $(REDHAT)/kabi-dwarf
include Makefile.cross
default: rh-help
default: dist-help
rh-python-check:
dist-python-check:
@if [ ! -f /usr/libexec/platform-python ]; then \
if ! which python3 > /dev/null 2>&1; then \
echo "ERROR: Python 3 is needed." ; \
@ -71,7 +71,7 @@ rh-python-check:
exit 1; \
fi
rh-kabi: rh-python-check
dist-kabi: dist-python-check
@for KABIARCH in $(ARCH_LIST); do \
$(REDHAT)/kabi/show-kabi -k $(REDHAT)/kabi/kabi-module/ -m \
-a $$KABIARCH -r $(RHEL_MAJOR).$(RHEL_MINOR) > $(REDHAT)/kabi/Module.kabi_$$KABIARCH;\
@ -83,7 +83,7 @@ rh-kabi: rh-python-check
done;
@(cd $(REDHAT)/kabi/ && ln -Tsf kabi-rhel$(RHEL_MAJOR)$(RHEL_MINOR) kabi-current)
rh-kabi-dup: rh-python-check
dist-kabi-dup: dist-python-check
@for KABIARCH in $(ARCH_LIST); do \
touch $(REDHAT)/kabi/Module.kabi_dup_$$KABIARCH;\
if [ -d $(REDHAT)/kabi/kabi-dup-module/kabi_$$KABIARCH ]; then \
@ -93,7 +93,7 @@ rh-kabi-dup: rh-python-check
fi \
done;
rh-check-kabi: rh-kabi
dist-check-kabi: dist-kabi
@if [ ! -e $(_OUTPUT)/Module.symvers ]; then \
echo "ERROR: You must compile the kernel and modules first";\
exit 1;\
@ -101,7 +101,7 @@ rh-check-kabi: rh-kabi
@$(REDHAT)/kabi/check-kabi -k $(REDHAT)/kabi/Module.kabi_$(MACH) \
-s $(_OUTPUT)/Module.symvers
rh-check-kabi-dup: rh-kabi-dup
dist-check-kabi-dup: dist-kabi-dup
@if [ ! -e $(_OUTPUT)/Module.symvers ]; then \
echo "ERROR: You must compile the kernel and modules first";\
exit 1;\
@ -109,18 +109,18 @@ rh-check-kabi-dup: rh-kabi-dup
@$(REDHAT)/kabi/check-kabi -k $(REDHAT)/kabi/Module.kabi_dup_$(MACH) \
-s $(_OUTPUT)/Module.symvers
rh-kabi-dw-base: rh-kabi
dist-kabi-dw-base: dist-kabi
@echo "Generating baseline dataset for KABI DWARF-based comparison..."
@echo "**** GENERATING DWARF-based kABI baseline dataset ****"
@$(KABIDW)/run_kabi-dw.sh generate \
$(REDHAT)/kabi/kabi-current/kabi_whitelist_$(CURARCH) \
$(_OUTPUT) $(KABIDW)/base/$(CURARCH)/
rh-kabi-dw-check: rh-kabi
dist-kabi-dw-check: dist-kabi
@if [ ! -d $(KABIDW)/base/$(CURARCH) ]; then \
echo "**** ERROR: ****"; \
echo "Comparison base not found in $(KABIDW)/base/$(CURARCH)."; \
echo "Please run \"make rh-kabi-dw-base\" first!"; \
echo "Please run \"make dist-kabi-dw-base\" first!"; \
exit 1; \
fi
@echo "**** GENERATING DWARF-based kABI dataset ****"
@ -133,42 +133,42 @@ rh-kabi-dw-check: rh-kabi
@echo "**** End of KABI DWARF-based comparison report ****"
@rm -rf $(KABIDW)/base/$(CURARCH).tmp
rh-configs-commit: rh-configs-prep
dist-configs-commit: dist-configs-prep
@cd $(REDHAT)/configs; VERSION=$(KVERSION) ./generate_all_configs.sh $(FLAVOR) 1; \
./process_configs.sh -z $(PACKAGE_NAME) $(KVERSION) "" $(FLAVOR)
rh-configs: rh-configs-prep
dist-configs: dist-configs-prep
@cd $(REDHAT)/configs; VERSION=$(KVERSION) ./generate_all_configs.sh rhel 1; \
./process_configs.sh $(PROCESS_CONFIGS_OPTS) $(PACKAGE_NAME) $(KVERSION)
rh-configs-check: rh-configs-prep
dist-configs-check: dist-configs-prep
cd $(REDHAT)/configs; ./process_configs.sh $(PROCESS_CONFIGS_CHECK_OPTS) $(PACKAGE_NAME)
rh-configs-prep: rh-clean-configs
dist-configs-prep: dist-clean-configs
cd $(REDHAT)/configs; TARGET=$(DIST_TARGET) ./build_configs.sh $(PACKAGE_NAME) $(ARCH_MACH)
rh-configs-arch: ARCH_MACH = $(MACH)
rh-configs-arch: rh-configs
dist-configs-arch: ARCH_MACH = $(MACH)
dist-configs-arch: dist-configs
rh-clean-configs:
dist-clean-configs:
cd $(REDHAT)/configs; rm -f kernel-*.config \
kernel-*.config.orig \
kernel-*.config.tmp
rh-clean-sources:
dist-clean-sources:
@rm -f $(RPM)/SPECS/*
@for i in $(SOURCES)/*; do \
rm -f $$i; \
done;
rh-clean-rpmdirs:
dist-clean-rpmdirs:
@for i in $(RPM)/{BUILD,SRPMS,RPMS,SPECS}/*; do \
rm -rf $$i; \
done;
rh-clean: rh-clean-sources rh-clean-configs rh-clean-rpmdirs
dist-clean: dist-clean-sources dist-clean-configs dist-clean-rpmdirs
rh-stub-key:
dist-stub-key:
@echo "Copying pre-generated keys";
@echo "*** THIS IS NOT RECOMMENDED ***";
@echo "To be safe, keys should be created once for every build";
@ -197,7 +197,7 @@ $(KABIDW_TARBALL):
@(cd kabi-dwarf && tar cjvf $(SOURCES)/$(KABIDW_TARFILE) base run_kabi-dw.sh)
rh-git-version-check:
dist-git-version-check:
@# genspec.sh uses pathspec magic that wasn't introduced until version 2.13
@IFS=" ."; \
set -- $$(git --version); \
@ -207,7 +207,7 @@ rh-git-version-check:
exit 1; \
fi
setup-source: rh-git-version-check rh-clean-sources
setup-source: dist-git-version-check dist-clean-sources
@cp $(REDHAT)/$(SPECFILE).template $(SOURCES)/$(SPECFILE)
@if [ ! -e $(REDHAT)/$(CHANGELOG) ]; then \
echo "Creating $(CHANGELOG) as copy of $(CHANGELOG_PREV)"; \
@ -230,7 +230,7 @@ sources-rh: $(TARBALL)
@($(FILTERDIFF) $(TESTPATCH).tmp | egrep -v "^index|^diff" >$(TESTPATCH).tmp2; true)
@mv $(TESTPATCH).tmp2 $(TESTPATCH).tmp
@diff $(TESTPATCH).tmp $(TESTPATCH) > /dev/null || \
echo "WARNING: There are uncommitted changes in your tree or the changes are not in sync with linux-kernel-test.patch. Either commit the changes or run 'make rh-test-patch'"
echo "WARNING: There are uncommitted changes in your tree or the changes are not in sync with linux-kernel-test.patch. Either commit the changes or run 'make dist-test-patch'"
@rm $(TESTPATCH).tmp
@cp $(TESTPATCH) $(SOURCES)/linux-kernel-test.patch
@cp fedora_files/* $(SOURCES);
@ -262,197 +262,208 @@ sources-rh: $(TARBALL)
fi
@(cd kabi-dwarf && tar cjvf $(SOURCES)/$(KABIDW_TARFILE) base run_kabi-dw.sh)
rh-sources: setup-source rh-configs-check rh-kabi rh-kabi-dup sources-rh
dist-sources: setup-source dist-configs-check dist-kabi dist-kabi-dup sources-rh
rh-test-patch:
dist-test-patch:
@git diff --no-renames HEAD > $(TESTPATCH);
@($(FILTERDIFF) $(TESTPATCH) | egrep -v "^index|^diff" >$(TESTPATCH).tmp; true)
@mv $(TESTPATCH).tmp $(TESTPATCH);
rh-all-rpms: rh-sources
dist-all-rpms: dist-sources
$(RPMBUILD) --define "_sourcedir $(SOURCES)" --define "_builddir $(RPM)/BUILD" --define "_srcrpmdir $(RPM)/SRPMS" --define "_rpmdir $(RPM)/RPMS" --define "_specdir $(RPM)/SPECS" --define "dist $(DIST)" --target $(MACH) -ba $(RPM)/SOURCES/$(PACKAGE_NAME).spec
rh-srpm: rh-sources
dist-srpm: dist-sources
$(RPMBUILD) --define "_sourcedir $(SOURCES)" --define "_builddir $(RPM)/BUILD" --define "_srcrpmdir $(RPM)/SRPMS" --define "_rpmdir $(RPM)/RPMS" --define "_specdir $(RPM)/SPECS" --define "dist $(DIST)" --nodeps -bs $(RPM)/SOURCES/$(PACKAGE_NAME).spec
rh-srpm-gcov:
make rh-sources BUILDID=".gcov" BUILDOPTS="+gcov"
dist-srpm-gcov:
make dist-sources BUILDID=".gcov" BUILDOPTS="+gcov"
$(RPMBUILD) --define "_sourcedir $(SOURCES)" --define "_builddir $(RPM)/BUILD" --define "_srcrpmdir $(RPM)/SRPMS" --define "_rpmdir $(RPM)/RPMS" --define "_specdir $(RPM)/SPECS" --define "dist $(DIST)" --nodeps -bs $(RPM)/SOURCES/$(PACKAGE_NAME).spec
rh-rpms: rh-sources
dist-rpms: dist-sources
$(RPMBUILD) --define "_sourcedir $(SOURCES)" --define "_builddir $(RPM)/BUILD" --define "_srcrpmdir $(RPM)/SRPMS" --define "_rpmdir $(RPM)/RPMS" --define "_specdir $(RPM)/SPECS" --define "dist $(DIST)" --target $(MACH) -bb $(RPM)/SOURCES/$(PACKAGE_NAME).spec
rh-kernel-%: rh-sources
dist-kernel-%: dist-sources
$(RPMBUILD) --define "_sourcedir $(SOURCES)" --define "_builddir $(RPM)/BUILD" --define "_srcrpmdir $(RPM)/SRPMS" --define "_rpmdir $(RPM)/RPMS" --define "_specdir $(RPM)/SPECS" --define "dist $(DIST)" --target $(MACH) --with $* --without vdso_install --without perf --without tools -bb $(RPM)/SOURCES/$(PACKAGE_NAME).spec
rh-prep: rh-sources
dist-prep: dist-sources
$(RPMBUILD) --define "_sourcedir $(SOURCES)" --define "_builddir $(RPM)/BUILD" --define "_srcrpmdir $(RPM)/SRPMS" --define "_rpmdir $(RPM)/RPMS" --define "_specdir $(RPM)/SPECS" --define "dist $(DIST)" --nodeps --target noarch -bp $(RPM)/SOURCES/$(PACKAGE_NAME).spec
rh-perf: rh-sources
dist-perf: dist-sources
$(RPMBUILD) --define "_sourcedir $(SOURCES)" --define "_builddir $(RPM)/BUILD" --define "_srcrpmdir $(RPM)/SRPMS" --define "_rpmdir $(RPM)/RPMS" --define "_specdir $(RPM)/SPECS" --define "dist $(DIST)" --without up --without smp --without zfcpdump --without debug --without doc --without headers --without --without doc --without debuginfo --target $(MACH) -bb $(RPM)/SOURCES/$(PACKAGE_NAME).spec
rh-rpm-baseonly: rh-sources
dist-rpm-baseonly: dist-sources
$(RPMBUILD) --define "_sourcedir $(SOURCES)" --define "_builddir $(RPM)/BUILD" --define "_srcrpmdir $(RPM)/SRPMS" --define "_rpmdir $(RPM)/RPMS" --define "_specdir $(RPM)/SPECS" --define "dist $(DIST)" --target $(MACH) --without debug --without debuginfo --without vdso_install --without bpftool --without perf --without tools -bb $(RPM)/SOURCES/$(PACKAGE_NAME).spec
# unless you know what you're doing, you don't want to use the next three ones
rh-release-finish: setup-source
dist-release-finish: setup-source
@cp $(SOURCES)/$(CHANGELOG) $(REDHAT)/$(CHANGELOG)
@git add $(REDHAT)/$(CHANGELOG)
@echo $(MARKER) > $(REDHAT)/marker
@git add $(REDHAT)/marker
@git commit -s ../Makefile.rhelver $(REDHAT)/marker $(REDHAT)/$(CHANGELOG) $(PACKAGE_NAME).spec.template -m "[redhat] $(PACKAGE_NAME)-$(STAMP_VERSION)-$(PREBUILD)$(BUILD)$(BUILDID)"
@$(MAKE) rh-configs
@$(MAKE) rh-kabi
@$(MAKE) rh-kabi-dup
@$(MAKE) dist-configs
@$(MAKE) dist-kabi
@$(MAKE) dist-kabi-dup
@$(MAKE) sources-rh
rh-release: rh-clean-sources
dist-release: dist-clean-sources
@$(REDHAT)/scripts/new_release.sh $(REDHAT) $(__YSTREAM) $(__ZSTREAM)
@$(MAKE) rh-release-finish
rh-release-tag:
@$(MAKE) dist-release-finish
dist-release-tag:
@git tag -a -m "$(PACKAGE_NAME)-$(STAMP_VERSION)-$(PKGRELEASE)" $(PACKAGE_NAME)-$(STAMP_VERSION)-$(PKGRELEASE)
.PHONY: rh-brew rh-koji
rh-brew : BUILD_FLAGS ?= $(BREW_FLAGS) $(TEST_FLAGS)
rh-koji : BUILD_FLAGS ?= $(KOJI_FLAGS) $(TEST_FLAGS)
rhg-brew: BUILD_FLAGS ?= $(BREW_FLAGS) $(TEST_FLAGS)
rhg-koji: BUILD_FLAGS ?= $(KOJI_FLAGS) $(TEST_FLAGS)
.PHONY: dist-brew dist-koji
dist-brew : BUILD_FLAGS ?= $(BREW_FLAGS) $(TEST_FLAGS)
dist-koji : BUILD_FLAGS ?= $(KOJI_FLAGS) $(TEST_FLAGS)
distg-brew: BUILD_FLAGS ?= $(BREW_FLAGS) $(TEST_FLAGS)
distg-koji: BUILD_FLAGS ?= $(KOJI_FLAGS) $(TEST_FLAGS)
rh-brew rh-koji: rh-%: rh-srpm
dist-brew dist-koji: dist-%: dist-srpm
$* build $(BUILD_FLAGS) $(BUILD_TARGET) $(SRPMS)/$(PACKAGE_NAME)-$(KVERSION)-$(PKGRELEASE)$(DIST).src.rpm $(OUTPUT_FILE)
rhg-brew rhg-koji: rhg-%:
distg-brew distg-koji: distg-%:
$* build $(BUILD_FLAGS) $(BUILD_TARGET) "$(RHGITURL)?redhat/koji#$(RHGITCOMMIT)"
.PHONY: $(REDHAT)/rpm/SOURCES/$(PACKAGE_NAME).spec
$(REDHAT)/rpm/SOURCES/$(PACKAGE_NAME).spec:
@echo "rh-sources"
@$(MAKE) rh-sources
@echo "dist-sources"
@$(MAKE) dist-sources
rh-dist-git-test: export RH_DIST_GIT_TEST="1"
rh-dist-git-test: rh-dist-git
dist-git-test: export RH_DIST_GIT_TEST="1"
dist-git-test: dist-git
rh-dist-git: rh-srpm $(TARBALL) $(KABI_TARBALL) $(KABIDW_TARBALL)
dist-git: dist-srpm $(TARBALL) $(KABI_TARBALL) $(KABIDW_TARBALL)
ifeq ("$(RHDISTGIT_BRANCH)", "")
$(error RHDISTGIT_BRANCH unset)
endif
$(REDHAT)/scripts/rh-dist-git.sh "$(RHDISTGIT_BRANCH)" "$(RHDISTGIT_CACHE)" "$(RHDISTGIT_TMP)" "$(RHDISTGIT)" "$(TARBALL)" "$(KABI_TARBALL)" "$(KABIDW_TARBALL)" "$(__ZSTREAM)" "$(PACKAGE_NAME)" "$(RHEL_MAJOR)" "$(RHPKG_BIN)" "$(SRPMS)/$(PACKAGE_NAME)-$(KVERSION)-$(PKGRELEASE)$(DIST).src.rpm"
rh-rtg: rh-release
@$(MAKE) rh-release-tag
@$(MAKE) rh-dist-git
dist-rtg: dist-release
@$(MAKE) dist-release-tag
@$(MAKE) dist-git
# RH_LATEST returns the value of the latest "known good" kernel from brew.
# This should not be confused with the latest top-of-tree development tag.
rh-get-latest:
dist-get-latest:
$(eval RH_LATEST:=$(shell brew latest-pkg --quiet rhel-${RHEL_MAJOR}.${RHEL_MINOR}.0-candidate kernel | awk ' { print $$1 } '))
@echo "The latest kernel package tag is ${RH_LATEST}."
rh-os-version:
dist-os-version:
@echo "OSVERSION: $(RHEL_MAJOR).$(RHEL_MINOR)"
rh-help:
dist-help:
@echo 'Cleaning targets:'
@echo ' rh-clean - Clean redhat/configs/ and redhat/rpm/ directories.'
@echo ' dist-clean - Clean redhat/configs/ and redhat/rpm/ directories.'
@echo ''
@echo 'Building targets:'
@echo ' rh-srpm - Create a source RPM.'
@echo ' rh-all-rpms - Create a source RPM and build binary RPMs locally.'
@echo ' rh-brew - Create a source RPM and call brew to build binary RPMs.'
@echo ' rhg-brew - Build RPMs using a remote git repo. [Configuration needed.]'
@echo ' rh-cross-all-rpms - Build RPMs for all supported archs using a cross compiler.'
@echo ' dist-srpm - Create a source RPM.'
@echo ' dist-all-rpms - Create a source RPM and build binary RPMs locally.'
@echo ' dist-brew - Create a source RPM and call brew to build binary RPMs.'
@echo ' distg-brew - Build RPMs using a remote git repo.'
@echo ' [Configuration needed.]'
@echo ' dist-cross-all-rpms - Build RPMs for all supported archs using a cross'
@echo ' compiler.'
@echo ''
@echo 'Configuration targets:'
@echo ' rh-configs - Create RHEL config files in redhat/config/.'
@echo ' dist-configs - Create RHEL config files in redhat/config/.'
@echo ''
@echo 'For detailed description and full list of targets, run `make rh-full-help`.'
@echo 'For detailed description and full list of targets, run `make dist-full-help`.'
@echo ''
rh-full-help:
dist-full-help:
@echo 'Cleaning targets:'
@echo ' rh-clean - Do rh-clean-sources, rh-clean-configs, & rh-clean-rpmdirs.'
@echo ' rh-clean-sources - Clean the redhat/rpm/SOURCES/ directory.'
@echo ' rh-clean-configs - Clean the redhat/configs/ directory.'
@echo ' rh-clean-rpmdirs - Clean the redhat/rpm/{BUILD,SRPMS,RPMS,SPECS}/ directories.'
@echo ' dist-clean - Do dist-clean-sources, dist-clean-configs, &'
@echo ' dist-clean-rpmdirs.'
@echo ' dist-clean-sources - Clean the redhat/rpm/SOURCES/ directory.'
@echo ' dist-clean-configs - Clean the redhat/configs/ directory.'
@echo ' dist-clean-rpmdirs - Clean the redhat/rpm/{BUILD,SRPMS,RPMS,SPECS}/'
@echo ' directories.'
@echo ''
@echo 'Building targets:'
@echo ' All RPM/SRPM files will be put under the redhat/rpm/ directory.'
@echo ''
@echo ' rh-srpm - Create a source RPM and put it into the redhat/rpm/SRPMS/ directory.'
@echo ' See the rh-brew target for available options.'
@echo ' rh-srpm-gcov - Create a source RPM with gcov enabled and put it into the'
@echo ' redhat/rpm/SRPMS/ directory.'
@echo ' rh-brew - Create a kernel SRPM and then call brew to build the created SRPM.'
@echo ' Add BUILDOPTS="+<opt> -<opt> [...]" to enable/disable build options.'
@echo ' Available <opt>s and their default values:' \
@echo ' dist-srpm - Create a source RPM and put it into the redhat/rpm/SRPMS/'
@echo ' directory. See the dist-brew target for available options.'
@echo ' dist-srpm-gcov - Create a source RPM with gcov enabled and put it into the'
@echo ' redhat/rpm/SRPMS/ directory.'
@echo ' dist-brew - Create a kernel SRPM and then call brew to build the'
@echo ' created SRPM. Add BUILDOPTS="+<opt> -<opt> [...]" to'
@echo ' enable/disable build options.'
@echo ' Available <opt>s and their default values:' \
$$(sed -n -e 's/^%define with_\([^ \t]*\).*\?_without_.*/+\1/p' \
-e 's/^%define with_\([^ \t]*\).*\?_with_.*/-\1/p' kernel.spec.template | \
grep -v 'only$$') | fmt -90
@echo ' rh-koji - Create a kernel SRPM and then call koji to build the created SRPM.'
@echo ' See the rh-brew target for available options.'
@echo ' rhg-brew - Pass HEAD of the current git branch to brew to build an RPM set.'
@echo ' Do not forget to push to the remote repository first.'
@echo ' Preceed make command by RHGITCOMMIT=<commitID> to specify commit ID'
@echo ' to use.'
@echo ' To set the remote repo, invoke: git config rhg.url git://<repo_path>'
@echo ' rhg-koji - Pass HEAD of the current git branch to koji to build an RPM set.'
@echo ' Do not forget to push to the remote repository first.'
@echo ' See the rhg-brew target for options and configuration.'
@echo ' rh-rpms - Create the binary RPMS for the kernel.'
@echo ' See the rh-brew target for available options.'
@echo ' rh-rpm-baseonly - Create the binary RPMS for the kernel and modules only (no'
@echo ' userspace tools or debuginfo).'
@echo ' rh-kernel-<type> - Create binary RPMS for a particular kernel type.'
@echo ' Available <type>s:'\
grep -v 'only$$') | fmt -80
@echo ' dist-koji - Create a kernel SRPM and then call koji to build the'
@echo ' created SRPM. See the dist-brew target for available'
@echo ' options.'
@echo ' distg-brew - Pass HEAD of the current git branch to brew to build an'
@echo ' RPM set. Do not forget to push to the remote repository'
@echo ' first. Preceed make command by RHGITCOMMIT=<commitID>'
@echo ' specify commit ID to use.'
@echo ' To set the remote repo, invoke:'
@echo ' git config rhg.url git://<repo_path>'
@echo ' distg-koji - Pass HEAD of the current git branch to koji to build an'
@echo ' RPM set. Do not forget to push to the remote repository'
@echo ' first. See the distg-brew target for options and'
@echo ' configuration.'
@echo ' dist-rpms - Create the binary RPMS for the kernel.'
@echo ' See the dist-brew target for available options.'
@echo ' dist-rpm-baseonly - Create the binary RPMS for the kernel and modules'
@echo ' (no userspace tools or debuginfo).'
@echo ' dist-kernel-<type> - Create binary RPMS for a particular kernel type.'
@echo ' Available <type>s:'\
$$(sed -n 's/^%define with_\([^ ]*only\).*/\1/p' kernel.spec.template)
@echo ' rh-all-rpms - Create the binary RPMS and the SRPM for the kernel.'
@echo ' See the rh-brew target for available options.'
@echo ' rh-prep - Setup the redhat/rpm/BUILD/ directory with the kernel source.'
@echo ' See the rh-brew target for available options.'
@echo ' rh-test-patch - Create a diff against HEAD and put it in linux-kernel-test.patch.'
@echo ' Then linux-kernel-test.patch will be added to the kernel build.'
@echo ' rh-stub-key - Use pre generated keys to speed local test builds.'
@echo ' rh-cross-download - [x86_64 only] download cross compiler rpms.'
@echo ' rh-cross-all-builds - [x86_64 only] execute "rpmbuild -bc" for all supported'
@echo ' archs using RHEL cross compiler.'
@echo ' rh-cross-<arch>-build - [x86_64 only] execute "rpmbuild -bc" for specified'
@echo ' <arch> using RHEL cross compiler.'
@echo ' Supported <arch>s: x86_64'\
@echo ' dist-all-rpms - Create the binary RPMS and the SRPM for the kernel.'
@echo ' See the dist-brew target for available options.'
@echo ' dist-prep - Setup the redhat/rpm/BUILD/ directory with the kernel'
@echo ' source. See the dist-brew target for available options.'
@echo ' dist-test-patch - Create a diff against HEAD and put it in'
@echo ' linux-kernel-test.patch. This patch will'
@echo ' be added to the kernel build.'
@echo ' dist-stub-key - Use pre generated keys to speed local test builds.'
@echo ' dist-cross-download - [x86_64 only] download cross compiler rpms.'
@echo ' dist-cross-all-builds - [x86_64 only] execute "rpmbuild -bc" for all'
@echo ' supported archs using RHEL cross compiler.'
@echo ' dist-cross-<arch>-build - [x86_64 only] execute "rpmbuild -bc" for specified'
@echo ' <arch> using RHEL cross compiler.'
@echo ' Supported <arch>s: x86_64'\
$$(sed -n 's/.*--target \([^ ]*\).*/\1/p' Makefile.cross | sort -u)
@echo ' rh-cross-all-rpms - [x86_64 only] execute rpm builds for all supported'
@echo ' archs using RHEL cross compiler.'
@echo ' rh-cross-<arch>-rpm - [x86_64 only] execute rpm builds for specified'
@echo ' <arch> using RHEL cross compiler.'
@echo ' See rh-cross-<arch>-build for the supported archs.'
@echo ' dist-cross-all-rpms - [x86_64 only] execute rpm builds for all supported'
@echo ' archs using RHEL cross compiler.'
@echo ' dist-cross-<arch>-rpm - [x86_64 only] execute rpm builds for specified'
@echo ' <arch> using RHEL cross compiler.'
@echo ' See dist-cross-<arch>-build for the supported archs.'
@echo ''
@echo 'kABI targets:'
@echo ' rh-kabi - Create kABI whitelist files in redhat/kabi/kabi-rhel*/ and'
@echo ' merge kABI checksums into redhat/kabi/Module.kabi_*.'
@echo ' rh-kabi-dup - Merge kABI checksums for Driver Update Program (DUP) whitelist'
@echo ' into redhat/kabi/Module.kabi_dup_*.'
@echo ' rh-check-kabi - Check for changes in kABI whitelisted symbols.'
@echo ' Requires a pre-compiled tree: run `make rh-configs`, copy the'
@echo ' relevant config file from redhat/configs/ to .config, run `make`.'
@echo ' rh-check-kabi-dup - Like rh-check-kabi but uses a DUP kABI whitelist.'
@echo ' rh-kabi-dw-base - Generate the base dataset for kABI DWARF-based check.'
@echo ' rh-kabi-dw-check - Run DWARF-based kABI comparison of current binaries with the base'
@echo ' dataset.'
@echo ' dist-kabi - Create kABI whitelist files in redhat/kabi/kabi-rhel*/'
@echo ' and merge kABI checksums into redhat/kabi/Module.kabi_*.'
@echo ' dist-kabi-dup - Merge kABI checksums for Driver Update Program (DUP)'
@echo ' into redhat/kabi/Module.kabi_dup_*.'
@echo ' dist-check-kabi - Check for changes in kABI whitelisted symbols.'
@echo ' Requires a pre-compiled tree: run `make dist-configs`,'
@echo ' copy the relevant config file from redhat/configs/ to'
@echo ' .config, and run `make`.'
@echo ' dist-check-kabi-dup - Like dist-check-kabi but uses a DUP kABI whitelist.'
@echo ' dist-kabi-dw-base - Generate the base dataset for kABI DWARF-based check.'
@echo ' dist-kabi-dw-check - Run DWARF-based kABI comparison of current binaries'
@echo ' with the base dataset.'
@echo ''
@echo 'Configuration targets:'
@echo ' rh-configs - Creates config files for RHEL $(RHEL_MAJOR) architectures, cleans them'
@echo ' by running make nonint_oldconfig, and copies them to'
@echo ' redhat/configs/ directory. This is the target to use for a config!'
@echo ' Copy the config file you want from the redhat/configs/ directory'
@echo ' to .config.'
@echo ' rh-configs-arch - Same as rh-configs but for single architecture only.'
@echo ' dist-configs - Creates config files for RHEL $(RHEL_MAJOR) architectures,'
@echo ' cleans them by running make nonint_oldconfig, and copies'
@echo ' them to redhat/configs/ directory. This is the target to use'
@echo ' for a config! Copy the config file you want from the'
@echo ' redhat/configs/ directory to .config'
@echo ' dist-configs-arch - Same as dist-configs but for single architecture only.'
@echo ''
@echo 'Misc targets:'
@echo ' rh-get-latest - Returns the latest "known good" kernel from brew. This should not'
@echo ' be confused with the latest top-of-tree development tag.'
@echo ' rh-os-version - Displays the current Red Hat Enterprise Linux version target used'
@echo ' by the current branch/tree.'
@echo ' dist-get-latest - Returns the latest "known good" kernel from brew. This'
@echo ' should not be confused with the latest top-of-tree'
@echo ' development tag.'
@echo ' dist-os-version - Displays the current Red Hat Enterprise Linux versioni'
@echo ' target used by the current branch/tree.'
@echo ''

View File

@ -16,7 +16,7 @@ CROSS_PACKAGE_LIST += binutils-powerpc64-linux-gnu gcc-powerpc64-linux-gnu
CROSS_PACKAGE_LIST += binutils-s390x-linux-gnu gcc-s390x-linux-gnu
endif
rh-cross-download:
dist-cross-download:
@if [ "$(ARCHCONFIG)" != "X86_64" ]; then \
echo "$(ARCHCONFIG) ERROR: cross compile only enabled for x86_64"; \
exit 1; \
@ -24,22 +24,22 @@ rh-cross-download:
@ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) \
$(REDHAT)/scripts/download_cross.sh $(CROSS_PACKAGE_LIST)
rh-cross-aarch64-rpms: rh-cross-download rh-sources
dist-cross-aarch64-rpms: dist-cross-download dist-sources
$(REDHAT)/scripts/x86_rngd.sh
$(CROSS_RPMFLAGS) --target aarch64 --with cross -ba $(RPM)/SOURCES/$(PACKAGE_NAME).spec
$(REDHAT)/scripts/generate-cross-report.sh "aarch64"
rh-cross-ppc64-rpms: rh-cross-download rh-sources
dist-cross-ppc64-rpms: dist-cross-download dist-sources
$(REDHAT)/scripts/x86_rngd.sh
$(CROSS_RPMFLAGS) --target ppc64 --with cross -ba $(RPM)/SOURCES/$(PACKAGE_NAME).spec
$(REDHAT)/scripts/generate-cross-report.sh "ppc64"
rh-cross-s390x-rpms: rh-cross-download rh-sources
dist-cross-s390x-rpms: dist-cross-download dist-sources
$(REDHAT)/scripts/x86_rngd.sh
$(CROSS_RPMFLAGS) --target s390x --with cross -ba $(RPM)/SOURCES/$(PACKAGE_NAME).spec
$(REDHAT)/scripts/generate-cross-report.sh "s390x"
rh-cross-all-rpms: rh-cross-download rh-sources
dist-cross-all-rpms: dist-cross-download dist-sources
$(REDHAT)/scripts/x86_rngd.sh
$(CROSS_RPMFLAGS) --target aarch64 --with cross -ba $(RPM)/SOURCES/$(PACKAGE_NAME).spec
$(CROSS_RPMFLAGS) --target ppc64 --with cross -ba $(RPM)/SOURCES/$(PACKAGE_NAME).spec
@ -47,22 +47,22 @@ rh-cross-all-rpms: rh-cross-download rh-sources
$(CROSS_RPMFLAGS) -ba $(RPM)/SOURCES/$(PACKAGE_NAME).spec
$(REDHAT)/scripts/generate-cross-report.sh "aarch64 ppc64 s390x x86_64"
rh-cross-aarch64-build: rh-cross-download rh-sources
dist-cross-aarch64-build: dist-cross-download dist-sources
$(REDHAT)/scripts/x86_rngd.sh
$(CROSS_RPMFLAGS) --target aarch64 --with cross --without debuginfo -bc $(RPM)/SOURCES/$(PACKAGE_NAME).spec
$(REDHAT)/scripts/generate-cross-report.sh "aarch64"
rh-cross-ppc64-build: rh-cross-download rh-sources
dist-cross-ppc64-build: dist-cross-download dist-sources
$(REDHAT)/scripts/x86_rngd.sh
$(CROSS_RPMFLAGS) --target ppc64 --with cross --without debuginfo -bc $(RPM)/SOURCES/$(PACKAGE_NAME).spec
$(REDHAT)/scripts/generate-cross-report.sh "ppc64"
rh-cross-s390x-build: rh-cross-download rh-sources
dist-cross-s390x-build: dist-cross-download dist-sources
$(REDHAT)/scripts/x86_rngd.sh
$(CROSS_RPMFLAGS) --target s390x --with cross --without debuginfo -bc $(RPM)/SOURCES/$(PACKAGE_NAME).spec
$(REDHAT)/scripts/generate-cross-report.sh "s390x"
rh-cross-all-builds: rh-cross-download rh-sources
dist-cross-all-builds: dist-cross-download dist-sources
$(REDHAT)/scripts/x86_rngd.sh
$(CROSS_RPMFLAGS) --target aarch64 --with cross --without debuginfo -bc $(RPM)/SOURCES/$(PACKAGE_NAME).spec
$(CROSS_RPMFLAGS) --target ppc64 --with cross --without debuginfo -bc $(RPM)/SOURCES/$(PACKAGE_NAME).spec

View File

@ -39,7 +39,7 @@ been reviewed by Fedora kernel maintainers. Since the Fedora kernel turns on
more configuration options than ARK, there are often settings that are not set
to default in pending-common. These settings are moved to the fedora/
configuration directory after community review. Options are populated with
"make FLAVOR=fedora rh-commit-configs".
"make FLAVOR=fedora dist-commit-configs".
All the configuration options for each arch and variant can be found

View File

@ -4,7 +4,7 @@
#
# For help, run ./editconfig -h
#
# TODO: Is there a way to verify the output? Maybe run 'make rh-configs' &
# TODO: Is there a way to verify the output? Maybe run 'make dist-configs' &
# the process_configs.sh -c tool on the modified CONFIG? This would
# require a modification to process_configs.sh to take a single
# CONFIG option but is do-able.

View File

@ -499,7 +499,7 @@ fi
# Find configs that are requested but do not exist in the final .configs
#
if [ "$FINDDEAD" ]; then
(cd ..; make rh-configs)
(cd ..; make dist-configs)
awk '
/is not set/ {

View File

@ -40,7 +40,7 @@ Once GitLab finishes forking the repository (this can take a while):
git checkout upstream/ark-latest
# If you're on Fedora, you need to run:
# ln -s /usr/bin/python3 /usr/libexec/platform-python
make rh-srpm
make dist-srpm
sudo dnf builddep -y redhat/rpm/SPECS/kernel.spec
@ -60,8 +60,8 @@ patches) , a sub-system maintainer's tree, or your own creation.
git merge -m "Merge branch 'os-build'" os-build
# Fedora carries a patch to alter this setting, so we need to change the configuration to build a vanilla tree.
sed -i 's/=13/=11/g' redhat/configs/fedora/generic/arm/aarch64/CONFIG_FORCE_MAX_ZONEORDER
# If you're targeting RHEL and have brew/rhpkg installed, use "make DIST=.elrdy rh-srpm" instead
make rh-srpm
# If you're targeting RHEL and have brew/rhpkg installed, use "make DIST=.elrdy dist-srpm" instead
make dist-srpm
You can now build the SRPM however you like:
@ -73,7 +73,7 @@ You can now build the SRPM however you like:
koji build --scratch rawhide redhat/rpm/SRPMS/kernel*src.rpm
Want to add a patch? Just git-cherry-pick it or apply it with git-am and
re-run ``make rh-srpm``. Change configurations in ``redhat/configs/``
re-run ``make dist-srpm``. Change configurations in ``redhat/configs/``
(consult the repository layout for details on this).

View File

@ -156,8 +156,8 @@ Snapshot Release
git merge -m "Merge configuration and build scripts" os-build
# If there's a temporary fix you want in just this build, you can run git-cherry-pick here.
touch localversion
make rh-release
make rh-release-tag
make dist-release
make dist-release-tag
git push upstream $(git describe)
git branch -D build-branch
@ -170,8 +170,8 @@ Upstream Release
git checkout -b ark/"$UPSTREAM_REF" ark/patches/"$UPSTREAM_REF"
git merge -m "Merge configuration and build scripts" os-build
touch localversion
make rh-release
make rh-release-tag
make dist-release
make dist-release-tag
git push $(git describe) ark/"$UPSTREAM_REF" ark/patches/"$UPSTREAM_REF"
git checkout ark-latest && git reset --hard ark/"$UPSTREAM_REF" && git push -f upstream ark-latest
@ -200,7 +200,7 @@ From the release branch/tag, run:
# localversion sets the buildid, releases should have an empty build id
rm localversion
touch localversion
make rh-dist-git
make dist-dist-git
cd /tmp/RHEL*/kernel
git commit -a -s -F ../changelog
@ -219,7 +219,7 @@ From the release branch/tag, run:
# localversion sets the buildid, releases should have an empty build id
rm localversion
touch localversion
make DIST=.elrdy rh-dist-git
make DIST=.elrdy dist-dist-git
cd /tmp/RHEL-8*/kernel
git commit -a -s -F ../changelog
git push

View File

@ -27,7 +27,7 @@ buildid: notes
sources: buildid
echo $(BUILDID) > ../../localversion
$(MAKE) -C ../ rh-sources
$(MAKE) -C ../ dist-sources
mv -f ../rpm/SOURCES/* .
rm -f ./$(PACKAGE_NAME).spec
mv ../rpm/SPECS/$(PACKAGE_NAME).spec .

View File

@ -1,4 +1,4 @@
This is a dummy spec file. It will be replaced by the sources target of the
Makefile in this directory. That target will replace this file with the real
kernel.spec file in ../rpm/SPECS as generated by make -C ../ rh-sources
kernel.spec file in ../rpm/SPECS as generated by make -C ../ dist-sources

View File

@ -27,8 +27,8 @@ fi
if [ -n "$BASE_RELEASE" ]; then
printf "There's already a release for %s (tagged as %s); if you're trying \
to create a new release check out that tag, apply any commits you \
want, and then run \"touch localversion && make rh-release && make \
rh-release-tag\".\n" "$UPSTREAM_REF" "$BASE_RELEASE"
want, and then run \"touch localversion && make dist-release && make \
dist-release-tag\".\n" "$UPSTREAM_REF" "$BASE_RELEASE"
exit 3
fi
@ -55,8 +55,8 @@ for patch_url in $MR_PATCHES; do
done
touch localversion
make rh-release
make rh-release-tag
make dist-release
make dist-release-tag
RELEASE=$(git describe)
git checkout ark-latest
git reset --hard "$RELEASE"

View File

@ -47,8 +47,8 @@ if ! git merge -m "Merge '$UPSTREAM_REF' into 'os-build'" "$UPSTREAM_REF"; then
exit 1
fi
make FLAVOR=fedora rh-configs-commit
make FLAVOR=rhel rh-configs-commit
make FLAVOR=fedora dist-configs-commit
make FLAVOR=rhel dist-configs-commit
if git show -s --oneline HEAD | grep -q "AUTOMATIC: New configs"; then
./redhat/gen_config_patches.sh

View File

@ -18,7 +18,7 @@ get_configarch()
# to the srcarch used in the $RHCP_RHEL/pending-common/generic path.
file=$1
# make rh-configs-prep uses <package-name>-<arch>-<variant>.config
# make dist-configs-prep uses <package-name>-<arch>-<variant>.config
# the trick is to get the <package-name> and filter it out
arch="$(echo "$file" | sed "s/$PACKAGE_NAME-\([^-]*\).*.config/\1/")"
@ -159,5 +159,5 @@ generate_rh_config()
rm -rf $WORK
}
make rh-configs-prep > /dev/null || die "Failed make rh-prep"
make dist-configs-prep > /dev/null || die "Failed make dist-prep"
generate_rh_config

View File

@ -26,7 +26,7 @@ fi
# if we're not root, all we can do now is see what's installed
if [ "$(whoami)" != "root" ]; then
echo "Checking for RHEL7 cross compile packages. If this fails, run \"make rh-cross-download\" as root."
echo "Checking for RHEL7 cross compile packages. If this fails, run \"make dist-cross-download\" as root."
rpm -q $@
if [ $? == 0 ]; then
echo "Compilers found."