1 # The following targets are for the maintainer only! do not run if you don't
4 .PHONY
: printenv updateconfigs printchanges insertchanges startnewrelease diffupstream help updateportsconfigs editportsconfigs autoreconstruct finalchecks
7 @echo
"These are the targets in addition to the normal $(DEBIAN) ones:"
9 @echo
" printenv : Print some variables used in the build"
11 @echo
" updateconfigs : Update core arch configs"
13 @echo
" editconfigs : Update core arch configs interractively"
14 @echo
" genconfigs : Generate core arch configs in CONFIGS/*"
16 @echo
" updateportsconfigs : Update ports arch configs"
18 @echo
" editportsconfigs : Update ports arch configs interactivly"
19 @echo
" genportconfigs : Generate ports arch configs in CONFIGS/*"
21 @echo
" printchanges : Print the current changelog entries (from git)"
23 @echo
" insertchanges : Insert current changelog entries (from git)"
25 @echo
" startnewrelease : Start a new changelog set"
27 @echo
" diffupstream : Diff stock kernel code against upstream (git)"
29 @echo
" help : If you are kernel hacking, you need the professional"
30 @echo
" version of this"
32 @echo
"Environment variables:"
34 @echo
" NOKERNLOG : Do not add upstream kernel commits to changelog"
35 @echo
" CONCURRENCY_LEVEL=X"
36 @echo
" : Use -jX for kernel compile"
37 @echo
" PRINTSHAS : Include SHAs for commits in changelog"
42 updateconfigs defaultconfigs editconfigs genconfigs dumpconfigs
:
44 $(SHELL
) $(DROOT
)/scripts
/misc
/kernelconfig
$@
47 updateportsconfigs defaultportsconfigs editportsconfigs genportsconfigs askconfigs
:
49 $(SHELL
) $(DROOT
)/scripts
/misc
/kernelconfig
$@ ports
54 @echo
"src package name = $(src_pkg_name)"
55 @echo
"release = $(release)"
56 @echo
"revisions = $(revisions)"
57 @echo
"revision = $(revision)"
58 @echo
"uploadnum = $(uploadnum)"
59 @echo
"prev_revisions = $(prev_revisions)"
60 @echo
"prev_revision = $(prev_revision)"
61 @echo
"abinum = $(abinum)"
62 @echo
"upstream_tag = $(upstream_tag)"
63 @echo
"gitver = $(gitver)"
64 @echo
"flavours = $(flavours)"
65 @echo
"skipabi = $(skipabi)"
66 @echo
"skipmodule = $(skipmodule)"
67 @echo
"skipdbg = $(skipdbg)"
68 @echo
"ubuntu_log_opts = $(ubuntu_log_opts)"
69 @echo
"CONCURRENCY_LEVEL = $(CONCURRENCY_LEVEL)"
70 @echo
"bin package name = $(bin_pkg_name)"
71 @echo
"hdr package name = $(hdrs_pkg_name)"
72 @echo
"doc package name = $(doc_pkg_name)"
73 @echo
"do_doc_package = $(do_doc_package)"
74 @echo
"do_doc_package_content = $(do_doc_package_content)"
75 @echo
"do_source_package = $(do_source_package)"
76 @echo
"do_source_package_content = $(do_source_package_content)"
77 @echo
"do_libc_dev_package = $(do_libc_dev_package)"
78 @echo
"do_flavour_image_package = $(do_flavour_image_package)"
79 @echo
"do_flavour_header_package = $(do_flavour_header_package)"
80 @echo
"do_common_headers_indep = $(do_common_headers_indep)"
81 @echo
"do_full_source = $(do_full_source)"
82 @echo
"do_tools = $(do_tools)"
83 @echo
"do_any_tools = $(do_any_tools)"
84 @echo
"do_linux_tools = $(do_linux_tools)"
85 @echo
" do_tools_cpupower = $(do_tools_cpupower)"
86 @echo
" do_tools_perf = $(do_tools_perf)"
87 @echo
" do_tools_x86 = $(do_tools_x86)"
88 @echo
" do_tools_host = $(do_tools_host)"
89 @echo
"do_cloud_tools = $(do_cloud_tools)"
90 @echo
" do_tools_hyperv = $(do_tools_hyperv)"
91 @echo
"any_signed = $(any_signed)"
92 @echo
" uefi_signed = $(uefi_signed)"
93 @echo
" opal_signed = $(opal_signed)"
94 @echo
"full_build = $(full_build)"
95 @echo
"libc_dev_version = $(libc_dev_version)"
96 @echo
"DEB_HOST_GNU_TYPE = $(DEB_HOST_GNU_TYPE)"
97 @echo
"DEB_BUILD_GNU_TYPE = $(DEB_BUILD_GNU_TYPE)"
98 @echo
"DEB_HOST_ARCH = $(DEB_HOST_ARCH)"
99 @echo
"DEB_BUILD_ARCH = $(DEB_BUILD_ARCH)"
100 @echo
"arch = $(arch)"
101 @echo
"kmake = $(kmake)"
104 @baseCommit
=$$(git log
--pretty
=format
:'%H %s' | \
105 gawk
'/UBUNTU: '".*Ubuntu-.*`echo $(prev_fullver) | sed 's/+/\\\\+/'`"'(~.*)?$$/ { print $$1; exit }'); \
106 if
[ -z
"$$baseCommit" ]; then \
107 echo
"WARNING: couldn't find a commit for the previous version. Using the lastest one." >&2; \
108 baseCommit
=$$(git log
--pretty
=format
:'%H %s' | \
109 gawk
'/UBUNTU:\s*Ubuntu-.*$$/ { print $$1; exit }'); \
111 git log
"$$baseCommit"..HEAD | \
112 $(DROOT
)/scripts
/misc
/git-ubuntu-log
$(ubuntu_log_opts
)
114 insertchanges
: autoreconstruct finalchecks
115 @perl
-w
-f
$(DROOT
)/scripts
/misc
/insert-changes.pl
$(DROOT
) $(DEBIAN
)
118 $(DROOT
)/scripts
/misc
/gen-auto-reconstruct
$(upstream_tag
) $(DEBIAN
)/reconstruct
$(DROOT
)/source
/options
121 $(DROOT
)/scripts
/misc
/final-checks
"$(DEBIAN)" "$(prev_fullver)"
124 @git diff-tree
-p refs
/remotes
/linux-2.6
/master..HEAD
$(shell ls | grep
-vE
'^(ubuntu|$(DEBIAN)|\.git.*)')
128 @
[ -f
"$(DEBIAN)/etc/update.conf" ] && .
"$(DEBIAN)/etc/update.conf"; \
129 if
[ -n
"$$BACKPORT_SUFFIX" ]; then \
130 ver
="$$(dpkg-parsechangelog -l"$$DEBIAN_MASTER/changelog
" -SVersion)~$${BACKPORT_SUFFIX}.1"; \
131 prev_ver
="$$(dpkg-parsechangelog -l"$(DEBIAN
)/changelog
" -SVersion)"; \
132 if
[ "$${ver%.*}" = "$${prev_ver%.*}" ]; then \
133 ver
="$${ver%.*}.$$(( $${prev_ver##*.} +1 ))"; \
136 ver
="$(release)-$$(echo "$(revision
)" | \
137 perl -ne 'if (/^(\d*)\.(\d*)(.*)?$$/) { printf("%d.
%d
%s
\n", $$1 + 1, $$2 +1, $$3) }')"; \
139 now
="$(shell date -R)"; \
140 echo
"Creating new changelog set for $$ver..."; \
141 echo
-e
"$(src_pkg_name) ($$ver) UNRELEASED; urgency=medium\n" > $(DEBIAN
)/changelog.new
; \
142 echo
" CHANGELOG: Do not edit directly. Autogenerated at release." >> \
143 $(DEBIAN
)/changelog.new
; \
144 echo
" CHANGELOG: Use the printchanges target to see the curent changes." \
145 >> $(DEBIAN
)/changelog.new
; \
146 echo
" CHANGELOG: Use the insertchanges target to create the final log." \
147 >> $(DEBIAN
)/changelog.new
; \
148 echo
-e
"\n -- $$DEBFULLNAME <$$DEBEMAIL> $$now\n" >> \
149 $(DEBIAN
)/changelog.new
; \
150 cat
$(DEBIAN
)/changelog
>> $(DEBIAN
)/changelog.new
; \
151 mv
$(DEBIAN
)/changelog.new
$(DEBIAN
)/changelog