Last modified by christoph_lechleitner@iteg_at on 2018-01-03 03.50:49

From version 9.1
edited by christoph_lechleitner@iteg_at
on 2014-01-02 03.27:43
Change comment: Optimizations
To version 3.1
edited by christoph_lechleitner@iteg_at
on 2012-07-20 06.31:00
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -6,11 +6,11 @@
6 6  
7 7  These are the steps for an ultra fast bootstrapping of a portable project relying on pba-cbs and [[our incarnation of the MinGW cross compilation toolchain>>doc:MINGW64.WebHome]].
8 8  
9 -===== {{id name="PBA-cbsbootstrappingofportableC++project-Preparations"/}}Preparations =====
9 +===== {{id name="PBA-cbsbootstrappingofportableC++project-Prepare"/}}Prepare =====
10 10  
11 -You need deb sources for {{code language="none"}}pba{{/code}} ({{code language="none"}}any-pba-1.0{{/code}}) and //distro//{{code language="none"}}-mingw-5{{/code}} (i.e. {{code language="none"}}squeeze-mingw-5{{/code}} or {{code language="none"}}wheezy-mingw-5{{/code}}), see [[https:~~/~~/deb.clazzes.org>>url:https://deb.clazzes.org/||shape="rect"]].
11 +Just to avoid frustration: You need the {{code language="none"}}pba-cbs{{/code}} package installed, using i.e. the {{code language="none"}}pba{{/code}} debsource from [[https:~~/~~/deb.clazzes.org>>url:https://deb.clazzes.org||shape="rect"]].
12 12  
13 -For starters, You need to install the packages {{code language="none"}}pba-cbs{{/code}} and {{code language="none"}}subversion{{/code}}.
13 +{{code language="none"}}pba-cbs{{/code}} depends on required packages, but do not forget {{code language="none"}}subversion{{/code}}, {{code language="none"}}gcc{{/code}}, ...
14 14  
15 15  ===== {{id name="PBA-cbsbootstrappingofportableC++project-Retrievethesceleton"/}}Retrieve the sceleton =====
16 16  
... ... @@ -34,44 +34,52 @@
34 34  cd $MYAPPNAME
35 35   
36 36  scripts/rename_main_files.sh $MYAPPNAME
37
38 -rm scripts/rename_main_files.sh
39 39  {{/code}}
40 40  
41 -===== {{id name="PBA-cbsbootstrappingofportableC++project-Optional:Removewindowsstuff"/}}Optional: Remove windows stuff =====
39 +===== {{id name="PBA-cbsbootstrappingofportableC++project-Adaptdebianinformation..."/}}Adapt debian information ... =====
42 42  
43 -If you do not want windows binaries, remove it:
41 +If you want debian-packages, edit them, change my name and e-mail to yours and adapt the description:
44 44  
45 -(((
46 46  {{code language="none"}}
47 -rm -rf src/include-mingw.mk src/*.nsi src/*.rc debian-mingw* build/win* nsis
44 +$EDITOR debian*/control debian*/changelog
48 48  {{/code}}
49 -)))
50 50  
51 -===== {{id name="PBA-cbsbootstrappingofportableC++project-Adaptdebianinformation"/}}Adapt debian information =====
47 +===== {{id name="PBA-cbsbootstrappingofportableC++project-...ordropdebian/"/}}... or drop debian/ =====
52 52  
53 -Change my name and e-mail to yours and adapt the description:
49 +If you do not want debian packages, just remove the debian directory:
54 54  
55 55  {{code language="none"}}
56 -$EDITOR debian*/control debian*/changelog
52 +rm -rf debian*
57 57  {{/code}}
58 58  
59 -===== {{id name="PBA-cbsbootstrappingofportableC++project-Optional:AdapttheWindowsrctemplate..."/}}Optional: Adapt the Windows rc template ... =====
55 +===== {{id name="PBA-cbsbootstrappingofportableC++project-AdapttheWindowsrctemplate..."/}}Adapt the Windows rc template ... =====
60 60  
61 -If you want windows binaries, edit the templates for .rc file and NSIS installer script:
57 +If you want windows binaries, edit the resoure template:
62 62  
63 63  {{code language="none"}}
64 -$EDITOR src/*.rc src/*.nsi
60 +$EDITOR src/*.rc
65 65  {{/code}}
66 66  
67 67  Do not forget to change the icon, too!
68 68  
69 -===== {{id name="PBA-cbsbootstrappingofportableC++project-Optional:Activatesvnoranotherrevisioncontrolsystem"/}}(% style="line-height: 1.6666666;" %)Optional: Activate svn or another revision control system(%%) =====
65 +===== {{id name="PBA-cbsbootstrappingofportableC++project-...orremoveit"/}}... or remove it =====
70 70  
67 +If you do not want windows binaries, remove it:
68 +
69 +(((
70 +{{code language="none"}}
71 +rm src/*.rc
72 +{{/code}}
73 +
74 +In most cases you just broke the windows build!
75 +
76 +===== {{id name="PBA-cbsbootstrappingofportableC++project-Optional:Activatesvnoranotherrevisioncontrol"/}}Optional: Activate svn or another revision control =====
77 +)))
78 +
71 71  Now (and before any build activity) is a very good time to put your project under subversion control:
72 72  
73 73  {{code language="none"}}
74 -svn add `pwd`
82 +svn add .
75 75  {{/code}}
76 76  
77 77  You might also want to fill {{code language="none"}}svn:ignore{{/code}} properties of some directories:
... ... @@ -80,41 +80,26 @@
80 80  scripts/set_svn_ignore.sh
81 81  {{/code}}
82 82  
83 -===== {{id name="PBA-cbsbootstrappingofportableC++project-Optional:Installrequiredlibsandbuildthepackage"/}}Optional: Install required libs and build the package =====
91 +===== {{id name="PBA-cbsbootstrappingofportableC++project-Optional:buildit"/}}Optional: build it =====
84 84  
85 -To produce the debian packages, just:
93 +To produce a debian package, just:
86 86  
87 87  {{code language="none"}}
88 -# this needs sudo privileges
89 -pba-builddeps -i
90
91 91  pba-build -u
92 -
97 + 
93 93  # or dpkg-build*
94 94  {{/code}}
95 95  
96 -To only build the linux packages or only the windows packages, add {{code language="none"}}-o unix{{/code}} resp. {{code language="none"}}-o mingw{{/code}} to the pba-commands.
101 +We will soon add {{code language="none"}}debian-mingw-*/{{/code}} directories and NSIS installers, for now for Windows just use make:
97 97  
98 -===== {{id name="PBA-cbsbootstrappingofportableC++project-Optional:CreateWindowsInstallers"/}}Optional: Create Windows Installers =====
99 -
100 -First, edit the {{code language="none"}}.nsi{{/code}} script template and replace all instances of "{{code language="none"}}Clazzes.org{{/code}}" with something of your choice:
101 -
102 102  {{code language="none"}}
103 -$EDITOR src/*.nsi
104 -{{/code}}
104 +make -C build/win32/release/
105 105  
106 -Then "make" the {{code language="none"}}nsis{{/code}} directory:
107 -
108 -{{code language="none"}}
109 -make -C nsis && ls -ltr nsis/*.exe
106 +make -C build/win64/release/
110 110  {{/code}}
111 111  
112 -===== {{id name="PBA-cbsbootstrappingofportableC++project-FinallyupdatetheReadMe"/}}Finally update the ReadMe =====
109 +
113 113  
114 -At least remove the link to this page ...
111 +
115 115  
116 -{{code language="none"}}
117 -$EDITOR doc/ReadMe.txt
118 -{{/code}}
119 -
120 -... or the complete ReadMe file.
113 +
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -659173
1 +659174
URL
... ... @@ -1,1 +1,1 @@
1 -https://clazzes.atlassian.net/wiki/spaces/PBA/pages/659173/PBA-cbs bootstrapping of portable C++ project
1 +https://clazzes.atlassian.net/wiki/spaces/PBA/pages/659174/PBA-cbs bootstrapping of portable C++ project