blob: c75f2f57789be2d067b2f300bbe46a261e22c42d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
|
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=codeblocks
pkgver=20.03
pkgrel=0
pkgdesc="Cross-platform C/C++ and Fortran IDE"
url="https://codeblocks.org"
# riscv64: ftbfs
arch="all !riscv64"
license="GPL-3.0-or-later"
# coreutils is needed because ./bootstrap calls a rm parameter that is not supported in BusyBox
makedepends="
libtool automake autoconf coreutils imagemagick zip
boost-dev hunspell-dev wxgtk3-dev tinyxml-dev
"
subpackages="$pkgname-dev $pkgname-doc $pkgname-contrib"
source="https://sourceforge.net/projects/codeblocks/files/Sources/$pkgver/codeblocks-$pkgver.tar.xz
0001-v20.03-r12008.patch
0002-v20.03-r12012.patch
0003-fix-missing-sentinel.patch
0004-delete-wxpropgrid.patch
0005-fix-pkgconfig-codeblocks-version.patch
0006-fix-openfileslistplugin-gcc11.patch
"
options="!check" # No test suite
prepare() {
default_prepare
# wxpropgrid fails building. Remove the directory and patch files
# Upstream has deleted it due to unmanteinance
rm -vr src/sdk/wxpropgrid
convert src/mime/codeblocks.png +set date:create +set date:modify -background none -extent 64x64 src/mime/codeblocks.png
sed -i 's|$(datadir)/pixmaps|$(datadir)/icons/hicolor/64x64/apps|' src/mime/Makefile.am
sed -i 's|$(datarootdir)/appdata|$(datarootdir)/metainfo|' Makefile.am src/plugins/contrib/appdata/Makefile.am
./bootstrap
# Patch auto_revision's Makefile.am to use the host compiler and flags
cd src/build_tools/autorevision
sed -i Makefile.am \
-e "/noinst_PROGRAMS = auto_revision/a CC = gcc" \
-e "/noinst_PROGRAMS = auto_revision/a CXX = g++" \
-e "/noinst_PROGRAMS = auto_revision/a LD = g++" \
-e "/noinst_PROGRAMS = auto_revision/a CFLAGS = -O2 -pipe" \
-e "/noinst_PROGRAMS = auto_revision/a CXXFLAGS = -O2 -pipe" \
-e "/noinst_PROGRAMS = auto_revision/a LDFLAGS = -s"
}
build() {
# Deactivate wxsmith-related plugins because they depend on wxpropgrid
./configure \
--build=$CBUILD \
--host=$CHOST \
--with-boost-libdir=/usr/lib \
--with-contrib-plugins=all,-FileManager,-wxsmith,-wxsmithcontrib,-wxsmithaui \
--with-wx-config=/usr/bin/wx-config-gtk3 \
--prefix=/usr
sed -i 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
package() {
make DESTDIR="$pkgdir" install
# Replace pkgconfig file for 20.03 version (Reason: 20.03svn version is invalid)
find "$pkgdir" -type f -exec sed -i 's/20.03svn/20.03/g' {} +
}
dev() {
default_dev
pkgdesc="$pkgdesc (SDK)"
}
contrib() {
pkgdesc="$pkgdesc (contrib plugins)"
mkdir -p "$subpkgdir"/usr/share/metainfo
mkdir -p "$subpkgdir"/usr/share/codeblocks/images
# Move plugins and wxContribItems to this subpackage
amove usr/lib/codeblocks
# Move contrib metainfo file
# While at it, also place it in the correct directory
mv -v "$pkgdir"/usr/share/metainfo/codeblocks-contrib.metainfo.xml \
"$subpkgdir"/usr/share/metainfo/codeblocks-contrib.metainfo.xml
# Move optional plugins to this subcategory
mv -v "$pkgdir"/usr/share/codeblocks/AutoVersioning.zip \
"$subpkgdir"/usr/share/codeblocks/AutoVersioning.zip
mv -v "$pkgdir"/usr/share/codeblocks/BrowseTracker.zip \
"$subpkgdir"/usr/share/codeblocks/BrowseTracker.zip
mv -v "$pkgdir"/usr/share/codeblocks/Cccc.zip \
"$subpkgdir"/usr/share/codeblocks/Cccc.zip
mv -v "$pkgdir"/usr/share/codeblocks/CppCheck.zip \
"$subpkgdir"/usr/share/codeblocks/CppCheck.zip
mv -v "$pkgdir"/usr/share/codeblocks/Cscope.zip \
"$subpkgdir"/usr/share/codeblocks/Cscope.zip
mv -v "$pkgdir"/usr/share/codeblocks/DoxyBlocks.zip \
"$subpkgdir"/usr/share/codeblocks/DoxyBlocks.zip
mv -v "$pkgdir"/usr/share/codeblocks/EditorConfig.zip \
"$subpkgdir"/usr/share/codeblocks/EditorConfig.zip
mv -v "$pkgdir"/usr/share/codeblocks/EditorTweaks.zip \
"$subpkgdir"/usr/share/codeblocks/EditorTweaks.zip
mv -v "$pkgdir"/usr/share/codeblocks/HexEditor.zip \
"$subpkgdir"/usr/share/codeblocks/HexEditor.zip
mv -v "$pkgdir"/usr/share/codeblocks/IncrementalSearch.zip \
"$subpkgdir"/usr/share/codeblocks/IncrementalSearch.zip
mv -v "$pkgdir"/usr/share/codeblocks/MouseSap.zip \
"$subpkgdir"/usr/share/codeblocks/MouseSap.zip
mv -v "$pkgdir"/usr/share/codeblocks/NassiShneiderman.zip \
"$subpkgdir"/usr/share/codeblocks/NassiShneiderman.zip
mv -v "$pkgdir"/usr/share/codeblocks/Profiler.zip \
"$subpkgdir"/usr/share/codeblocks/Profiler.zip
mv -v "$pkgdir"/usr/share/codeblocks/ProjectOptionsManipulator.zip \
"$subpkgdir"/usr/share/codeblocks/ProjectOptionsManipulator.zip
mv -v "$pkgdir"/usr/share/codeblocks/RegExTestbed.zip \
"$subpkgdir"/usr/share/codeblocks/RegExTestbed.zip
mv -v "$pkgdir"/usr/share/codeblocks/ReopenEditor.zip \
"$subpkgdir"/usr/share/codeblocks/ReopenEditor.zip
mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentCpp.zip \
"$subpkgdir"/usr/share/codeblocks/SmartIndentCpp.zip
mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentFortran.zip \
"$subpkgdir"/usr/share/codeblocks/SmartIndentFortran.zip
mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentHDL.zip \
"$subpkgdir"/usr/share/codeblocks/SmartIndentHDL.zip
mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentLua.zip \
"$subpkgdir"/usr/share/codeblocks/SmartIndentLua.zip
mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentPascal.zip \
"$subpkgdir"/usr/share/codeblocks/SmartIndentPascal.zip
mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentPython.zip \
"$subpkgdir"/usr/share/codeblocks/SmartIndentPython.zip
mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentXML.zip \
"$subpkgdir"/usr/share/codeblocks/SmartIndentXML.zip
mv -v "$pkgdir"/usr/share/codeblocks/SpellChecker \
"$subpkgdir"/usr/share/codeblocks/SpellChecker
mv -v "$pkgdir"/usr/share/codeblocks/SpellChecker.zip \
"$subpkgdir"/usr/share/codeblocks/SpellChecker.zip
mv -v "$pkgdir"/usr/share/codeblocks/SymTab.zip \
"$subpkgdir"/usr/share/codeblocks/SymTab.zip
mv -v "$pkgdir"/usr/share/codeblocks/ThreadSearch.zip \
"$subpkgdir"/usr/share/codeblocks/ThreadSearch.zip
mv -v "$pkgdir"/usr/share/codeblocks/ToolsPlus.zip \
"$subpkgdir"/usr/share/codeblocks/ToolsPlus.zip
mv -v "$pkgdir"/usr/share/codeblocks/Valgrind.zip \
"$subpkgdir"/usr/share/codeblocks/Valgrind.zip
mv -v "$pkgdir"/usr/share/codeblocks/abbreviations.zip \
"$subpkgdir"/usr/share/codeblocks/abbreviations.zip
mv -v "$pkgdir"/usr/share/codeblocks/byogames.zip \
"$subpkgdir"/usr/share/codeblocks/byogames.zip
mv -v "$pkgdir"/usr/share/codeblocks/cb_koders.zip \
"$subpkgdir"/usr/share/codeblocks/cb_koders.zip
mv -v "$pkgdir"/usr/share/codeblocks/codesnippets.zip \
"$subpkgdir"/usr/share/codeblocks/codesnippets.zip
mv -v "$pkgdir"/usr/share/codeblocks/codestat.zip \
"$subpkgdir"/usr/share/codeblocks/codestat.zip
mv -v "$pkgdir"/usr/share/codeblocks/copystrings.zip \
"$subpkgdir"/usr/share/codeblocks/copystrings.zip
mv -v "$pkgdir"/usr/share/codeblocks/dragscroll.zip \
"$subpkgdir"/usr/share/codeblocks/dragscroll.zip
mv -v "$pkgdir"/usr/share/codeblocks/envvars.zip \
"$subpkgdir"/usr/share/codeblocks/envvars.zip
mv -v "$pkgdir"/usr/share/codeblocks/exporter.zip \
"$subpkgdir"/usr/share/codeblocks/exporter.zip
mv -v "$pkgdir"/usr/share/codeblocks/headerfixup.zip \
"$subpkgdir"/usr/share/codeblocks/headerfixup.zip
mv -v "$pkgdir"/usr/share/codeblocks/help_plugin.zip \
"$subpkgdir"/usr/share/codeblocks/help_plugin.zip
mv -v "$pkgdir"/usr/share/codeblocks/images/codesnippets \
"$subpkgdir"/usr/share/codeblocks/images/codesnippets
mv -v "$pkgdir"/usr/share/codeblocks/keybinder.zip \
"$subpkgdir"/usr/share/codeblocks/keybinder.zip
mv -v "$pkgdir"/usr/share/codeblocks/lib_finder \
"$subpkgdir"/usr/share/codeblocks/lib_finder
mv -v "$pkgdir"/usr/share/codeblocks/lib_finder.zip \
"$subpkgdir"/usr/share/codeblocks/lib_finder.zip
mv -v "$pkgdir"/usr/share/codeblocks/occurrenceshighlighting.zip \
"$subpkgdir"/usr/share/codeblocks/occurrenceshighlighting.zip
mv -v "$pkgdir"/usr/share/codeblocks/rndgen.zip \
"$subpkgdir"/usr/share/codeblocks/rndgen.zip
}
sha512sums="
f97c1a02d31f0be4dc08b1f19b57bd0d3cba375ab5f33ab91b2a2df7817018f5b3e3063ed07199a3970644f1caa7c7e511db2034c73264f5f4963046d65b0097 codeblocks-20.03.tar.xz
98584a93790974481a669cb86a01efe42690fe4a4e0a6c04abc15e3ea0c037be0b0cdc63164907e0c9f51414bb32b2879f6a06117d1374a4288a0a03bec4080f 0001-v20.03-r12008.patch
1580f63e559470f58990831c49c8885ba980416326bc66a5564a47681d9f33124809824d7e6caab2ebfbde8bf57def4e9e06a41d30379bb7aa5a2deaee3803c1 0002-v20.03-r12012.patch
d8ef0d5fd0605b00d72833591df78b6160bd4d3ae02523b0eba796bc6e375384b241bb24c3a44b45df7a47bf47bf58f1f94eb8459d177ab516383617955e0dd0 0003-fix-missing-sentinel.patch
1b642ad9e4c479fb81674c4fa412e3c6d169bad9cad4b6748433004e5e0c31f1d1aba9a81eb02eb6ffd8927ae96d56a8fd90f009b7aa0925ae2e397794fedbac 0004-delete-wxpropgrid.patch
792fcb9b570e5ee0fbadc2ab68b17f3f76c667b6b0822b6e4a89ce5e40c2afcd8744bbaa65fb3252fc36d9343d7c439df3f759c4fbc9980fcf851f5cad6be178 0005-fix-pkgconfig-codeblocks-version.patch
56e649ae3cde529fdc9e6b11eac652c692b381bdb803cc476f536b28904f724cb0446974a3bed2d95740dff7ad9d026d1987800aef1f462a02ee1d81c6bd0318 0006-fix-openfileslistplugin-gcc11.patch
"
|