Version 9.1 by christoph_lechleitner@iteg_at on 2023-03-24 08.59:28

Hide last authors
christoph_lechleitner@iteg_at 1.1 1 = {{id name="AdaptingPBAtonewDebianRelease-Introduction"/}}Introduction =
2
3 About every 2 years Debian introduces a new release.
4
christoph_lechleitner@iteg_at 7.1 5 The following notes shall provide a step-by-step-plan for adapting the [[PBA Package Builder + Archiver>>doc:PBA.WebHome]] to a new Debian release and shall make it more efficient for the next Debian.
christoph_lechleitner@iteg_at 1.1 6
christoph_lechleitner@iteg_at 8.1 7 The first version of this page was created when Debian [[Buster>>url:https://wiki.debian.org/DebianBuster||shape="rect"]] was on it's way from Full Freeze to GA, we were still using {{code language="none"}}svn{{/code}} back then (mostly {{code language="none"}}git{{/code}} now).
christoph_lechleitner@iteg_at 1.1 8
christoph_lechleitner@iteg_at 8.1 9 Currently we are in the progress of adapting from [[Bullseye>>url:https://wiki.debian.org/DebianBullseye||shape="rect"]] to [[Bookworm>>url:https://wiki.debian.org/DebianBookworm||shape="rect"]], so this is __WORK IN PROGRESS__ rg. Bookworm.
christoph_lechleitner@iteg_at 7.1 10
christoph_lechleitner@iteg_at 2.1 11 = {{id name="AdaptingPBAtonewDebianRelease-AdaptingpbatonewDebianRelease"/}}Adapting pba to new Debian Release =
christoph_lechleitner@iteg_at 1.1 12
christoph_lechleitner@iteg_at 9.1 13 == {{id name="AdaptingPBAtonewDebianRelease-AdaptPBAandcreatePBA-Buildertarballs"/}}Adapt PBA and create PBA-Builder tarballs ==
christoph_lechleitner@iteg_at 1.1 14
christoph_lechleitner@iteg_at 9.1 15 See [[https:~~/~~/iteg.atlassian.net/l/cp/SGt5wKvo>>url:https://iteg.atlassian.net/l/cp/SGt5wKvo||shape="rect"]] (access ITEG only for now).
christoph_lechleitner@iteg_at 1.1 16
christoph_lechleitner@iteg_at 8.1 17 === {{id name="AdaptingPBAtonewDebianRelease----currentpointofadaptiontoDebianBookworm---"/}}**~-~-- current point of adaption to Debian Bookworm ~-~--** ===
18
christoph_lechleitner@iteg_at 9.1 19 \\
christoph_lechleitner@iteg_at 8.1 20
christoph_lechleitner@iteg_at 9.1 21 = {{id name="AdaptingPBAtonewDebianRelease-AdaptHelloWorldProjects"/}}Adapt HelloWorld Projects =
christoph_lechleitner@iteg_at 8.1 22
christoph_lechleitner@iteg_at 4.1 23 {{code language="none"}}
24 cd ~/sources/pba/trunk/pba-helloworld
christoph_lechleitner@iteg_at 2.1 25
christoph_lechleitner@iteg_at 7.1 26 git checkout main ; git pull ; git checkout main
27
28 git branch ${BRANCHNAME} && git checkout ${BRANCHNAME} && git status
29
30 git push --set-upstream origin ${BRANCHNAME}
31
32 pba-raiseversion
33 # decide next version
34 pba-raisversion -b 1.2.3 "Adding new Debian target distro ${NEWDN}"
35
36 git add debian*/control debian*/changelog
37
christoph_lechleitner@iteg_at 6.1 38 PBAO="."
christoph_lechleitner@iteg_at 4.1 39 # or
christoph_lechleitner@iteg_at 6.1 40 PBAO="arch|unix"
christoph_lechleitner@iteg_at 7.1 41 # or in phase 2 or when combining
christoph_lechleitner@iteg_at 6.1 42 PBAO="arch|unix|7"
christoph_lechleitner@iteg_at 2.1 43
christoph_lechleitner@iteg_at 7.1 44 #pba-builddeps -i -o ${PBAO}
christoph_lechleitner@iteg_at 4.1 45
christoph_lechleitner@iteg_at 6.1 46 #pba-instdeps -i -o ${PBAO}
christoph_lechleitner@iteg_at 4.1 47
christoph_lechleitner@iteg_at 6.1 48 pba-build -u -i -o ${PBAO}
christoph_lechleitner@iteg_at 4.1 49
50 # solve eventual problems
51
christoph_lechleitner@iteg_at 6.1 52 PBADD=$(ls -1d debian* |grep -v mingw |head -1)
53 ${EDITOR:-vi} ${PBADD}/changelog ${PBADD}/control
christoph_lechleitner@iteg_at 4.1 54
christoph_lechleitner@iteg_at 7.1 55 pba-localbuild -u -o ${PBAO}
christoph_lechleitner@iteg_at 4.1 56
christoph_lechleitner@iteg_at 7.1 57 # evtl.
58 #pba-localrpmbuild -u -o ${PBAO}
christoph_lechleitner@iteg_at 4.1 59
60 # wait for success
61
christoph_lechleitner@iteg_at 7.1 62 git commit -m "Adding support for new Debian distro ${NEWDN}"
63 git push
christoph_lechleitner@iteg_at 4.1 64
christoph_lechleitner@iteg_at 7.1 65 # optional, eventually after merge in main
christoph_lechleitner@iteg_at 6.1 66 pba-release -o ${PBAO}
christoph_lechleitner@iteg_at 4.1 67
68
69 {{/code}}
70
christoph_lechleitner@iteg_at 7.1 71 LATER (after adapting Fancylibs below) repeat for {{code language="none"}}pba-helloworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
christoph_lechleitner@iteg_at 4.1 72
christoph_lechleitner@iteg_at 7.1 73 Repeat for {{code language="none"}}pba-hellolib-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
christoph_lechleitner@iteg_at 4.1 74
christoph_lechleitner@iteg_at 7.1 75 Repeat for {{code language="none"}}pba-hellobigworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
christoph_lechleitner@iteg_at 4.1 76
christoph_lechleitner@iteg_at 7.1 77 ... with (% style="letter-spacing: 0.0px;" %){{code language="none"}}-o unix{{/code}}(%%) or later (% style="letter-spacing: 0.0px;" %){{code language="none"}}-o "unix|9"{{/code}}(%%).
78
christoph_lechleitner@iteg_at 9.1 79 = {{id name="AdaptingPBAtonewDebianRelease-AdaptFANCYLIBS"/}}Adapt [[doc:FANCYLIBS.WebHome]] =
christoph_lechleitner@iteg_at 4.1 80
christoph_lechleitner@iteg_at 7.1 81 See [[Adapting FancyLibs & MinGW-Pkg from Debian 9 Stretch to 10 Buster, Mingw-7 to Mingw-8>>doc:FANCYLIBS.Adapting FancyLibs & MinGW-Pkg from Debian 9 Stretch to 10 Buster, Mingw-7 to Mingw-8.WebHome]].
82
christoph_lechleitner@iteg_at 9.1 83 = {{id name="AdaptingPBAtonewDebianRelease-Adaptpba-helloworld-portable"/}}Adapt pba-helloworld-portable =
christoph_lechleitner@iteg_at 4.1 84
christoph_lechleitner@iteg_at 7.1 85 See above, use {{code language="none"}}-o unix{{/code}}.
christoph_lechleitner@iteg_at 4.1 86
christoph_lechleitner@iteg_at 9.1 87 = {{id name="AdaptingPBAtonewDebianRelease-AdaptMinGWifnotdownduringFancyLibsadaptionabove"/}}Adapt [[MinGW>>doc:MINGW64.WebHome]] if not down during FancyLibs adaption above =
christoph_lechleitner@iteg_at 2.1 88
89 See [[doc:MINGW64.mingw 6 rebuild order.WebHome]].
90
christoph_lechleitner@iteg_at 7.1 91 === {{id name="AdaptingPBAtonewDebianRelease-MinGW-Adaptpba-hello*-portable"/}}MinGW-Adapt pba-hello*-portable ===
christoph_lechleitner@iteg_at 4.1 92
christoph_lechleitner@iteg_at 7.1 93 See above, with -o "unix|9" instead of "-o unix".
christoph_lechleitner@iteg_at 4.1 94
christoph_lechleitner@iteg_at 9.1 95 = {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase2,oncenewreleaseissettled"/}}Adaptions for phase 2, once new release is settled =
christoph_lechleitner@iteg_at 2.1 96
97 Once the new Debian release is settled and all VIP libraries and current projects can be built for it, we can declare it the new default value for {{code language="none"}}DefaultDistribution{{/code}} in {{code language="none"}}pba-builder.conf{{/code}}.
98
99 {{code}}
100 ${EDITOR:-vi} debian/changelog src/etc/pba/builder.conf.template src/lib/build-functions.pl
101
102 # commit
christoph_lechleitner@iteg_at 7.1 103 git commit -m "Making new Debian distro ${NEWDN} default for DefaultDistribution in pba-builder.conf"
christoph_lechleitner@iteg_at 2.1 104
105 # release it
106 pba-release
107 {{/code}}