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
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
|
TODO (Prio A)
=============
[.] ipkg with dependecies
update: 20090614 mkl:
ipkg are created with dependencies now, image creation still works.
however online update is still untested, though.
[ ] mol, rsc: improve user database concept. Especially for the system
users we currently have the problem how to generate system users which
are only necessary for certain services. Maybe some kind of
/etc/passwd.d/* mechanism could be a solution? Discuss with team.
Discuss UUID/GID of "rpcuser" and other important system users
[ ] rsc: GDB__VERSION: shouldn't this be taken from the toolchain, in
order to be consistent with the gdb which is provided there? Discuss
with mkl.
[ ] jbe: If someone adds a project local menu (*.in) file and uses
'project_specific' as its SECTION name ptxdist should automatically
generate an additional submenu "Project Specific Configuration" and
include this menu into it. This should avoid a local "Kconfig" copy
in each ptxdist project for such a simple addition.
[ ] lfu: some mountable devices are available after udev has started.
hence we need an extra mount script to mount all entries in fstab
instead out of rcS.
[ ] jbe: all test scripts should check if their interaction with the filesystem
where successfull. If a file copy to /tftpboot fails, it should *not* continue.
TODO (Prio B)
=============
[ ] jbe: mplayer.compile: It seems very PXA specific now?
i586-unknown-linux-gnu-gcc [...] -c -o vo_pxa.o vo_pxa.c
vo_pxa.c: In function 'draw_osd':
vo_pxa.c:964: error: unknown register name 'r5' in 'asm'
vo_pxa.c:964: error: unknown register name 'r4' in 'asm'
[...]
vo_pxa.c: In function 'config':
vo_pxa.c:964: error: unknown register name 'r5' in 'asm'
vo_pxa.c:964: error: unknown register name 'r4' in 'asm'
[...]
make[2]: *** [vo_pxa.o] Error 1
make[2]: Leaving directory `[...]/platform-i586/build-target/MPlayer-1.0rc2/libvo'
--> menu contains pxa specific stuff. Maybe this should be modified?
Even with disabled PXA specific options a build for x86 still fails:
libvo/libvo.a(video_out.o):(.data+0x20): undefined reference to `video_out_x11'
libvo/libvo.a(video_out.o):(.data+0x24): undefined reference to `video_out_xover'
libvo/libvo.a(video_out.o):(.data+0x28): undefined reference to `video_out_pxa'
[...] and much more
Update 20090118 rsc: not reproducable, switched on again and we wait
for sisyphus to explode.
[ ] http://www.osadl.org/Single-View.111+M52e8d0c2b2f.0.html
[ ] rsc: add "ptxdist export_bsp <dir>", similar to
"ptxdist export_src <dir>".
Structure:
<dir>/README.txt
<dir>/LICENSE.txt
<dir>/Autostart.bat (optional)
<dir>/index.html (optional)
<dir>/install.sh
<dir>/documentation/
<dir>/images/oselas.bsp-phytec-phycore-12-root-full.jffs2 (optional)
<dir>/images/oselas.bsp-phytec-phycore-12-root-headless.jffs2 (optional)
<dir>/keys/ (optional)
<dir>/packages/<platform>/foo_1.2.3_armel.ipk (optional)
<dir>/sources/public/md5sums
<dir>/sources/public/foo-1.2.3.tar.gz
<dir>/sources/public/foo-1.2.3.tar.gz.md5 (optional)
<dir>/sources/public/foo-1.2.3.tar.gz.asc (optional)
<dir>/sources/private/bar-0.0.1.tar.gz
<dir>/sources/unknown/baz-42.23.0.tar.bz2
<dir>/oselas/ptxdist-1.99.12.tar.gz
<dir>/oselas/ptxdist-1.99.12-patches.tar.gz
<dir>/oselas/oselas.bsp-phytec-phycore-12.tar.gz
<dir>/oselas/oselas.toolchain-1.99.3.2.tar.gz
<dir>/oselas/oselas.toolchain-1.99.3-arm-v5te-linux-gnueabi-gcc-4.3.2-java-glibc-2.8-binutils-2.18-kernel-2.6.27-sanitized_i386.tar.bz2
<dir>/oselas/oselas.toolchain-1.99.3-arm-v5te-linux-gnueabi-gcc-4.3.2-java-glibc-2.8-binutils-2.18-kernel-2.6.27-sanitized_i386.tar.deb
- take care of all platforms: configs/*/platformconfig
- images: images for all collections
- for all optional packages: ask back if images, ipkgs etc. shall
be bundled (with --force)
[ ] jbe: Shown pathes are much too long in "ptxconfig" and "platformconfig"
while running "ptxdist menu"
[ ] jbe: We should provide a solution if someone selects "ptx" or
"platform" while running "ptxdist menu" and these files are not new enough.
(happens if someone wants to upgrade his ptxdist-1 based BSP). Currently
there is only a error message, one should use "--force". Its correct, but
is doesn't help! M$ help level!
-> integrate --force into dialogs
[ ] jbe: most of the time thttpd does not respond to the USR1 signal.
- the start/stop script fails to stop this service
[ ] bbu, lfu, rsc, sha: "bspfix feature"
Usecase:
* create BSP config with "ptxdist menuconfig"
* "ptxdist bspfix [bspfix-name]" (creates 2nd config internally)
* user makes changes to the software config (menuconfig) and saves
* some kind of "diff" is made between "selected_platformconfig" and
bspfix-config
* if user has one or several "bspfixes" around, they are patched into
his ptxconfig on the fly
Aims:
* developer: can create their own local modifications of the bsp,
without destroying the official one
* customer: can make his own changes ontop of our releases; changes
are easy to move forward
Before Release
--------------
[ ] rsc: we need a "tested distros" strategy for 2.0.0, with
pre-packaged toolchains.
[ ] rsc: run dependency hunter and fix all remaining dependency problems
[ ] update ChangeLog from git
[ ] jbe, rsc: provide demo projects, including website documentation,
maybe even elinux.org docs.
Release tarballs in a way that they can be installed with ptxdist, which
means that they have to be installed into the "projects/" directory in
the toplevel dir, to be able to clone them.
Provide debian packages of ptxdist, ptxdist-patches, toolchains and
demo directories.
[ ] bbu: check ptxdist first-time-usage scenario for chicken-egg problems
e.g. if you don´t set sane defaults for PTXCONF_SETUP_PROJECTPATH,
ptxdist won´t find its own projects.
[ ] jbe: Would there be a solution to supress sysroot-* folders for target system
(for example bare metall) that do not need a Unix filesystem?
[ ] jbe: it must be possible to force some userland components from inside the
platformconfig. For example a platform specific kernel driver module
needs a special component of the UDEV. Currently it does not work.
Duplicating symbols in both config files may work, but it will be
"BROKEN BY DESIGN".
Update 20091017 rsc: Would it be possible to add that platform specific
package in the platform?
[ ] rsc: configure continues, even if a test breaks. Example:
checking lex library... sed: couldn't write 76 items to stdout: No space left on device
grep: write error: No space left on device
sed: couldn't write 46 items to stdout: No space left on device
none needed
checking whether yytext is a pointer... sed: couldn't write 29 items to stdout: No space left on device
no
[...anything proceeds...]
[ ] jbe: working with hd.img is very delicate. The incomplete partition
table confuses the linux kernel, so any rewrite of the image after done
one time fails with "no space left on device". Also fdisk fails when
trying to repair this partition table. Only Windows can rewrite the
partition table in this case. After this, also Linux is able to write to
the hard disk again! But the BIOS and Kernel on target side are
successfull. Problem happend on SUSE-10.1 on host side and an USB to IDE
adapter to initial write the hd.img to the harddisk.
TODO somewhen
=============
[ ] rsc: evaluate http://dolt.freedesktop.org
[ ] rsc: license management:
- generate license dependency graph (based on objdump info?)
- bundle GPL sources automatically
[ ] rsc: add sparse support
[ ] jbe: review samba configure stage. For a non-root and cross-compile run it
seems to omit many tests and switches of many features in the final
application. Check if samba_cv_HAVE_IFACE_IFCONF=yes and samba_cv_HAVE_MMAP=yes
can be used all over all architectures as defaults
[ ] bbu: add minimal documentation for internal vars (useful for
customer makefiles) -> see manual (not quickstart)
[ ] jbe: samba fails to run with:
sys_gethostbyname: Unknown host. eth0
can't determine netmask for eth0
WARNING: no network interfaces found
Seems to be a failure with current glibc
[ ] jbe: audit packages which are marked to be BROKEN
[ ] lfu: often used config files for X like xorg.conf or xinitrd shall be
integrated into ptxdist generic files. the installation shall follow
the scheme of other rootfs configuration files
[ ] jbe: audit all packages if they change the target CPU (with --march
or --mtune); openssl does so
[ ] jbe: uRamdisk should be built from ipkg packages instead of root/ content!
[ ] jbe: why does fam-2.7.0 always try to run the autotools? It fails on most
modern systems -> mark as broken. rsc: real fix: find out why and fix.
[ ] feature request: add profiling support (kernel and userspace)
best with host visualisation
[ ] jbe: more help texts
[ ] bbu: reimplement cuckoo-test
- files w/ wrong build-arch
- missing libs
- statistics
- stripped / non stripped files
[ ] bbu: reimplement generic pre- and post-flight checks
- dependency checks
- cuckoo-test
- user defined checks
- package tests
- in-system test -> ltp
[ ] bbu: generic logging aproach w/ single and combined logs
- combined log for normal use
- build-logs per package, test-suite, etc would support features like
- "quiet build", while still providing the full error
output of the failing target
- helpdesk notification fetaures
- build statistics
- better support for GUI driven builds
[ ] bbu,rsc,mkl: brain storming session
Discussion about the whole PTXdist build-,
deployment- and testing-mechanics:
- Support different target package formats
Rationale: - Some standardization aproaches like carrier grade linux
or the linux standard base make rpm or dpk packages
mandatory.
- Users asked for it
Which package formats would be useful ?
- ipkg
- deb
- rpm
- openpkg
- plain directory tree / tar[.gz]
! Depends: Check rpm and deb database footprint
! Depends: Discussion about the current installation scheme
- Support binary package distribution
Rationale: Most Customers don´t want to build the
base System on their own. They want a
well defined base system and then apply
some changes, add files (probably on the fly)
by installing binary packages.
! Problem: This might break the current PTXdist philosophy
(executeable documentation)
! Depends: We would need some kind of install-filter or exclude-list
- Deployment / Testing Frontend (maybe GUI driven)
Rationale: needed in a binary package distribution scenario
to customize the installation from a generic
binary package.
- Support precompiled customer environment
Rationale: This would reduce compile times for
the customer, since he would start
directly w/ his own application
w/o the need for a full ptxdist run.
! Problem: Build Hierarchy is not relocateable
-> libtool problems
! Problem: Make depends on timestamps
Possible solutions:
- create intermediate build labels / paths
- tweak things during installation
(dirty, dirty ... how do we handle updates?)
- Provide a "full blown" toolchain with all
host-tools and chroot into it
(dirty, dirty ... needs root privileges)
- Provide a "full blown" toolchain with all
host-tools inside a virtual machine,
vmware image or CoLinux
(dirty, slow, but runs even with Windows)
(nasty, since it would be some kind of closed box solution)
(problem: how do we handle alternative toolchains in this case?)
- Support Partitioned Images
! Problem: We don´t want to use root privileges
! Problem: Generate valid Partition Tables
! Problem: ipkg list has to work inside the
target system, so we would need
two or more diffenrent installation "views":
- The partition image generation view,
which
a) respects partition boundaries
b) rewrites the resulting installation
paths respectively.
- The binary target package view (i.e. ipkg)
which
a) generates apropriate pre- and post-
installation scripts to i.e. remount
the partitions read/write
b) creates binary packages, rooted in
"/" on the target.
- An optional "user-view", where something
else can happen, i.e. transfering stuff
to an ftp server or mounting an image
with root privileges or as user via fuse.
- TODO:
- Create Use Cases:
- What is covered by the current design
- What would be nice, well designed and sane
- What does $JON_DOE_HACKER want
- What does $JON_DOE_HACKER _need_
- What does $CUSTOMER want
- What does $CUSTOMER _need_
- Draw the big picture :-)
- Create Roadmap
[ ] mol: add possibility to 'ptxdist print' more than one variable in
one make call bbu: maybe some kind of "ptxdist env" as in env(1) ?
[ ] check if ${PTXCONF_SYSROOT_TARGET} can be written to and barf if not
[ ] add sanity checks for all user configurable variables (especially
paths)
[ ] Problem: When doing things like "PKG_CONFIG_PATH=bla something",
something does not inherit the environment variable PKG_CONFIG_PATH.
To achieve this properly, we need to export these variables to the
calling shell. The same applies to lots of variables from
Rules.make.
[ ] image build mechanism tries to access data and infos from already
disabled targets! (if they where enabled before). It does so
unless a manually delete of the remaining and (now) useless targets
in "state/"
[ ] Tree Structure
rsc: Find sane place for generic files from projects/generic
ero: Make subdirectories, e.g. for x.org stuff. Might use symlinks
to avoid changing the scripts.
sha: push make and in files into subdirs, add patches to that dirs
as well.
[ ] rsc: add some useful statistics at the end of build (root size, image
size etc.).
[ ] rsc: add checksums for download
Interesting packages
====================
[ ] rsc: http://en.opensuse.org/Icecream
[ ] rsc: http://cryptmount.sourceforge.net/
[ ] rsc: http://stapgui.sourceforge.net
[ ] rsc: bashdiff: http://home.eol.ca/~parkw/index.html
[ ] rsc: http://podgorny.cz/moin/UnionFsFuse
[ ] rsc: http://clpbar.sourceforge.net/
[ ] rsc: http://xmlrpc-c.sourceforge.net/
[ ] rsc: http://www.vanheusden.com/httping/
[ ] rsc: http://urunlevel.sourceforge.net/
[ ] rsc: http://www.freshmeat.net/projects/bootutils
[ ] rsc: http://www.reportlab.com/ftp/
[ ] rsc: http://rlib.sicompos.com/
[ ] rsc: MatrixSSL
[ ] mkl: lilo, tinylogin targetinstall (rsc: find out what MKL means here)
[ ] rsc: finish integration of quagga
Test suite components to be added
=================================
[ ] rsc: mutrace (mutex trace)
[ ] rsc: http://ltp.sourceforge.net/tooltable.php
[ ] rsc: Add more test suite stuff:
http://gcc.gnu.org/install/test.html
http://www.plumhall.com/stec.html
[ ] rsc: lmbench
[ ] rsc: audit for LSB compatiblity; are there any handable tests for
checking compliance?
[ ] rsc: have a look at http://asic-linux.com.mx/~izto/checkinstall/
DONE
====
[x] rsc: fix python 3.x
update 20100428 rsc: done by mol
[x] rsc: 'ptxdist images' for the i586 target sometimes does not work,
the generated image is incorrect and grub stops booting.
update 20100428 rsc: done
[x] rsc: multi stage BSPs: platform team releases a BSP, users use it.
May involve 'apt-get install OSELAS.BSP-phyCORE-12'
update 20100428 rsc: done
[x] jbe, rsc -> mgr: provide a "bare metal" project for Stellaris/Cortex-M3,
to show how to use ptxdist-2 for non-Linux targets.
update 20100428 rsc: done
[x] rsc: verify 'ptxdist newpackage' mechanics. Check all use cases,
especially when creating new packages in ptxdist itself (not in the
project). Workspace check needs more sophistication.
update 20100428 rsc: seems to be fixed in the meantime
[x] rsc: port python 2.6 patches to 3.x -> mkl
update 20100428 rsc: done by mol
[x] Write macros $(call compile) and $(call configure).
update 20100419 mol: done
[x] libxslt crypto support is broken
update 20100419 mol: done
[x] jbe: org-server fails if no xkbfile is selected
update 20100419 mol: not sure what the problem was, but it seems to be gone.
[x] jbe: alsa-lib creates funny pathes at the install stage
update 20100419 mol: done
[x] rsc: xorg-app-xkbcomp needs xorg-lib-xkbfile, but dependency doesn't
work
update 20100419 mol: not sure what the problem was, but it seems to be gone.
[x] rsc: xorg-data-xkbdata needs xkbcomp on the host - otherwhise we get
a circular dependency ...
update 20100419 mol: obsolete: xorg-data-xkbdata is gone.
[x] bbu: add more real GNU coreutils
update 20100419 mol: done
[x] mol: bash configure --enable-job-control does not work when cross compiling
posible fix in:
https://iocaste.extern.pengutronix.de/svn/oselas/bsp/johndeere/OSELAS.BSP-JohnDeere-ComPC-trunk/rules/bash.make
explained here:
http://www.mail-archive.com/bug-bash%40gnu.org/msg03107.html
update 20100419 mol: done
[x] rsc: http://www.nongnu.org/failmalloc/
[x] rsc: sysstat: http://perso.wanadoo.fr/sebastien.godard/
[x] rsc: ethtool: http://sourceforge.net/project/showfiles.php?group_id=3242&package_id=19201
[x] rsc: ntpclient: http://doolittle.faludi.com/ntpclient/
[x] rsc: openntpd: http://www.openntpd.org/
[x] rsc: install e2fsck
[x] rsc: LTT-ng
[x] download strategy: oe can be configured to download from a central
server first and only fallback to the internet if packet is not there
Update 20091019 rsc: The community has found that we already have this
feature :-)
[x] ringlej. When the architecture is arm-ixp-big this message occurs:
$ ptxdist kernelconfig
<bla>/rules/ffmpeg.make:189: Please define the config options for this CPU type!
20090625: fixed with:
git: 2724dc0cd74b716b1ef770d847a5509291ce4bef
svn: 10028
[x] rsc@thebe:OSELAS.BSP-Phytec-phyCORE-trunk$ ./p compile sw-ek-lm3s3748.compile
/home/rsc/git/ptxdist/scripts/libptxdist.sh: line 125: unset: `PTXCONF_SW_EK_LM3S3748.COMPILE': not a valid identifier
ptxdist: error: 'sw-ek-lm3s3748.compile' is not selected in
/home/rsc/svn/oselas/bsp/phytec/phyCORE/OSELAS.BSP-Phytec-phyCORE-trunk/selected_ptxconfig
PTXdist: fatal error ... cannot start, sorry!
update: 20090614 mkl:
[frogger@hardanger:OSELAS.BSP-Pengutronix-AllYes-trunk]$ ./p compile sw-ek-lm3s3748.compile
ptxdist: error: 'sw-ek-lm3s3748.compile' is not a valid package name
PTXdist: fatal error ... cannot start, sorry!
[x] some_autotool_fan: shebang-line of awk-scripts should use the $AWK
value obtained from configure.
20090610 wsa: we hardcoded gawk where needed. configure checks now
for gawk explicitly.
[x] jbe: udev seems to load kernel modules by its own. How to disable it?
20090610 lfu: the 80-drivers rule causes such behaviour. We don't install it
to target, since it's mostly useless for embedded targets.
[x] bbu, lfu, rsc, sha: "collections"
Observations / Ideas:
* "modularity" doesn't fit our needs; we don't only want to build
the base packages plus all modules; it is more something like:
"build minimum set", or "build minimu set + feature x"
* "collections" are lists of packages
Use Cases:
* "ptxdist --collectionconfig=base go" builds the package set "base"
* "ptxdist --collectionconfig=headless_rt go" builds the package set "headless_rt"
* "ptxdist --collectionconfig=all go" builds all selected packages
* "ptxdist collection <pkgset>" creates "selected_collection" and makes it
the default for subsequent commands
Necessary:
* separate "targetinstall" stage from "ipkg -> root/image"
* How to call this?
* API? "ptxdist --pkgset=<pkgset> foobar" installs root/ and image.blub from ipkgs
[x] jbe: Would it be possible to omit the "ptxconfig" and "platformconfig" menu entries
when run "ptxdist menu" when the "selected_ptxconfig" and "selected_platformconfig"
are real files than links (or not exist yet)? If they are real files, the project
is a single platform one. There is no need for this step!
Update 2009610 mkl: done
[x] rsc: fix 'ptxdist newpacket host'; find out what mkl intended with
this "class" mechanism and make sure it produces sane output. Check
with mkl.
Example: ptxdist newpacket host-existing-target:
- asks for version number, which should be derived from existing
target version
- asks for URL, but we want to use the download mechanics from
target
- should output warning that you have to change := into = for
corresponding target packet
mkl: this is not true!
jbe: discuss the templeate rules and their content with mkl to shrink them or
to adapt them to the current ptxdist behaviour
[x] mkl/jbe: Host's environment variable PKG_CONFIG_PATH leaks in.
We want a whitelist instead of the current blacklist.
Update 20090610 mkl: done
[x] jbe: fuse can be build without libiconv. The glibc iconv() works for
it. But its configure is so stupid, it continues to detect a libiconv
even if disabled and link against it. (for example if libiconv is
already built by accident)
Update 20090610 rsc: done
[x] jbe: host-glib can be build against the iconv() in the host's glibc.
There is no need for a host-libiconv!
Update 20090610 rsc: fixed
[X] jbe: Running "ptxdist menu" shows always a "u-boot-v2" entry that fails
if called even if the platformconfig do not use u-boot-v2
[x] mkl/jbe: The 'ps' command from the procps package outputs
"Unknown HZ value! (xx) Assume 100."
on a recently started system. Doing it later again, this message does
not occur again. Kernel detection failure?
Update 20090609: (mkl) fixed
[x] jbe: dropbear's init script seems to fail to do a simple "restart". For example
if one changes the SSH portnumber in the script and try a restart, nothing changes!
Update 20090609 rsc: fixed
[x] jbe: the libiconv package fails to build, if a libiconv library is
present on the host system (for example in /usr/lib). In this case it
tries to link against this library, instead of its own. In one link
step:
../srclib/libicrt.a /usr/lib/libiconv.so
versus (if no libiconv is present on the host)
../srclib/libicrt.a ../lib/.libs/libiconv.so
Update 20090609 mkl: fixed
[x] bbu: default path to generic projects seems not to work
Update 20090603 rsc: please provide test case, seems to work here.
[-] jbe: if ipkg building crashes, PTXdist doesn't break. rsc: see
pipeline error fixing in scripts/libptxdist.sh
Update 20090603 rsc: we need a testcase, bug closed.
[x] bbu: Discuss the whole definition of "package". At the moment,
most package options are scattered across two or more
*.in or *.make files, making "drop-in replacements" nearly
impossible.
Update 20090603 rsc: obsoleted by package model in ptxdist 2.0.
[x] rsc: find out why iproute2 needs berkeley-db
Update 20090603 rsc: fixed with recent iproute2 patches from jbe
[x] rsc: iproute2 -> arpd needs db-44, but the select DB_44 does not work.
Update 20090603 rsc: seems to be fixed in trunk, close.
[-] jbe: classpath.compile fails
[...]
../external/sax/org/xml/sax/helpers/NewInstance.java:70: warning: non-varargs call of
varargs method with inexact argument type for last parameter;
cast to java.lang.Object for a varargs call
cast to java.lang.Object[] for a non-varargs call and to suppress this warning
return (ClassLoader) m.invoke(Thread.currentThread(), null);
^
Note: * uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
8 errors
2 warnings
Update 20090603 rsc: not reproducable, tested on i586 and arm1136.
Please add proper info how to reproduce in case this problem does still
persist.
[x] jbe: phyton24 states this but does not stop the build (in the install stage):
cannot find -lncursesw
collect2: ld returned 1 exit status
cannot find -lpanelw
collect2: ld returned 1 exit status
[x] rsc: dbus-python doesn't compile, needs either python-config or asks
python for -I and -L paths.
While being there, we should update to python-2.6, because this is
the stable series we want to have in ptxdist-2.0.
update 20090512: should work now
[x] jbe: INITMETHOD_BBINIT_ETC_INITD_LOGROTATE makes no sence with busybox's syslog.
Doesn't work, because it does not create any *.log files, which logrotate tries
to handle.
20090420: update mkl: handles now messages, *.log, *.err
[x] mkl: remove inetd.conf leftovers
[frogger@hardanger:rules]$ wcgrep inetd.conf|grep -v "inetd.conf.d"|grep -v postinst
./fam.in:52: the /etc/inetd.conf a line like this:
./dnsmasq.in:47: /etc/inetd.conf a line like this:
./dnsmasq.in:71: This string is added to inetd's configuration /etc/inetd.conf.
./portmap.make:132: # /etc/inetd.conf sniplet
./cvs.in:124: This string is added to inetd's configuration /etc/inetd.conf. @ROOT@
./rsync.make:108: # /etc/inetd.conf sniplet
./rsync.in:69: the /etc/inetd.conf a line like this:
./rsync.in:95: This string is added to inetd's configuration /etc/inetd.conf. @CONFIG@
Update 20090603 rsc: done
[x] mkl: fix startscript leftovers
update: 20090512: mkl: done
[x] mkl:
16:46 < ringlej> /opt/tools/lib/ptxdist-1.99.11/config/collection/Kconfig:10: can't open file "generated/ptx_collection.in"
16:47 < ringlej> That was it. I had none marked as "M"
Update 20090603 rsc: fixed
[x] jbe: if one starts ptxdist with the --ptxconfig=<...> option and the
given path and filename is at least in the form "selected/ptxconfig"
(was a typo here, should be "selected_ptxconfig") ptxdist states:
/opt/lib/ptxdist-trunk/scripts/libptxdist.sh: line 415: cd: selected: No such file or directory
Should be a more reasonable error message.
Update 20090603 rsc: fixed
[x] jbe: slang.compile fails while compiling png-module.c
[...]
pcre-module.c:6:18: error: pcre.h: No such file or directory
[...]
update 20090512: mkl: should work now
[x] mkl: fix startscript leftovers
update: 20090512: mkl: done
[x] jbe: INITMETHOD_BBINIT_ETC_INITD_LOGROTATE makes no sence with busybox's syslog.
Doesn't work, because it does not create any *.log files, which logrotate tries
to handle.
20090420: update mkl: handles now messages, *.log, *.err
[x] jbe: slang.compile fails while compiling png-module.c
[...]
pcre-module.c:6:18: error: pcre.h: No such file or directory
[...]
update 20090512: mkl: should work now
[-] jbe: libmad tries to re-generate the configure script and fails if system's
version is not the correct one
[...]
missing --run automake-1.10 --foreign
aclocal.m4:16: warning: this file was generated for autoconf 2.61.
You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically `autoreconf'.
configure.ac:29: version mismatch. This is Automake 1.10,
configure.ac:29: but the definition used by this AM_INIT_AUTOMAKE
configure.ac:29: comes from Automake 1.10.1. You should recreate configure.ac:29: aclocal.m4 with aclocal and run automake again.
Update 20090420 rsc: not reproducable, neither @mkl nor @rsc
[x] Dioptik: freetype 2.3.8 web link is dead
From the freetype website "Don't use this version! This is a bugfix release
for the 2.3 series. All users should upgrade. See this page for the release notes."
Update: 20090417 mkl: done
[x] jbe: tcpdump fails when IPv6 is enabled:
checking getaddrinfo bug... buggy
Fatal: You must get working getaddrinfo() function.
or you can specify "--disable-ipv6".
Update: 20090417 mkl: done
[x] jbe: SDL menu: Unsure if SDL mixer and SDL image must depend on SDL?
mkl: no they must select SDL
[x] rsc: if 'ptxdist setup' points to the wrong JDK, jvisu claims that
it needs a set JAVA_HOME. A better error message would involve 'ptxdist
setup'.
mkl: fixed by mol
[x] jbe: Running 'ptxdist go' with an enabled but not yet configured
kernel should give a reasonable error message. It should not just
fail while downloading a nonexisting kernel.
(happens when ptxconfig components forcing a kernel not yet configured
in the platformconfig)
Update 20090316 rsc: error message added
[x] rsc: check jvisu, it has a FIXME that ant may be needed as a host
tool. Remove, use the same mechanism as with Perl::XML
Update 20090313: fixed by mol and mkl
[x] jbe: It seems now be possible to install a /etc/rc.d/*telnetd link to
/etc/init.d/telned without intalling a /etc/init.d/telnetd
[x] Sisyphus:
[...]
----------------------
target: glibmm.compile
----------------------
[...]
make[6]: Entering directory
`[...]/glibmm-2.14.1/glib/glibmm'
[...]
convert.cc: In constructor 'Glib::IConv::IConv(const std::string&, const std::string&)':
convert.cc:52: error: 'g_assert' was not declared in this scope
make[6]: *** [convert.lo] Error 1
make[6]: *** Waiting for unfinished jobs....
date.cc: In member function 'Glib::ustring Glib::Date::format_string(const Glib::ustring&) const':
date.cc:311: error: 'g_assert' was not declared in this scope
make[6]: *** [date.lo] Error 1
rsc: glib has recently been updated to a newer 2.12 version; find out
which glibmm version fits the new one and adapt it.
Update 20090303 rsc: updated all gtk stack components to latest stable.
[x] jbe: if one enters "ptxdist platformconfig" one can earn this message:
error: The config file 'selected_platformconfig'
is missing the symbol: 'PTXCONF_PLATFORMCONFIG_VERSION',
which means it is broken.
But also the "--force" option does not help. Only "--sledgehammer" helps
to create this symbol. Intended behaviour?
mkl: 20090302:
"--force" works now as expected
[x] rsc: add 'quiet' support to start scripts (probably centralized in rcS)
[x] mkl: reactiveate new install_copy feature (no explicid destination)
rsc: ask mkl what kind of problems have been observed with the old
implementation that has been thrown out again
update: 2009-01-25: mkl:
rsc has upgraded the install_copy macro to handle this
[x] jbe: e2fsprogs: HTREE can be disabled, but at least mkfs.ext2 creates (silently)
a HTREE based filesystem! e2fsck will fail on such a filesystem unless HTREE
support will be activated in the menu!
mkl: 2009-2-27:
htree enable i.e. hardcode htree supprt
btw: disabling affects only the fsck tool, not mk2efs
[x] jbe: avoid the "make: Nothing to be done for `world'." message when running
a "ptxdist images".
[x] jbe: xorg-lib-fontenc.compile: What does it mean? Intervention needed?
[...]/arm-v5te-linux-gnueabi/bin/ld: warning: creating a DT_TEXTREL in object.
[x] jbe: same in cairo.compile
[x] jbe: xorg-lib-fontenc.compile (but this time seen on PowerPC)
mkl: 2009-02-27:
this means that we link a static lib into a shared one,
and this should be avoided.
[x] jbe: it seems to extract a kernel always touches the local
kernelconfig.target (or similar). This confuses svn, as
this file always changes without calling "ptxdist kernelconfig"
rsc: mol has a patch for this, integrate
mkl: 20090626
no problem with with ptxdist-1.99.11,
probably in the whole 1.99.x series of ptxdist
[x] rsc: network handling with qemu does not work reliably; it works
when being run with sudo (see start/stop/connect scripts in i586) and
/dev/net/tun must be made rwrwrw.
[x] rsc: in x86 simulation: ipkg list doesn't work?
mkl: 20090226: works
root@phyCORE:~ ipkg list
alsa-lib - 1.0.18 -
alsa-utils - 1.0.18 -
atk - 1.20.0 -
atop - 1.23 -
[...]
[x] jbe: avoid the convenience stage question, when running "pxtdist images".
jbe: avoid the convenience stage question again and again and again....
[x] jbe: host-fontconfig.compile
if gcc [...] -c -o fc-case.o fc-case.c; \
then
mv -f ".deps/fc-case.Tpo" ".deps/fc-case.Po";
else
rm -f ".deps/fc-case.Tpo";
exit 1;
fi
In file included from fc-case.c:25:
../src/fcint.h:118:21: error: fcalias.h: No such file or directory
make[3]: *** [fc-case.o] Error 1
mkl: 20090226
works on himalia
[x] jbe: host-glade.prepare
[x] Bo Hansen: util-linux fails to build more.c when no curses library is
present. Different development platforms are behaving differently.
jbe's host detects the lack of curses and omits more.c to build in this
case. So the build does not fail. Bo's host decide to build more.c
even if curses is not present and fails.
[x] jbe: if one enable the "Local kernel tree" by accident but hasn't been setup
the "Prefix for kernel trees", ptxdist should output a more useful error message
than just:
----------------------
target: kernel.extract
----------------------
Error: empty parameter to 'extract()'
mkl: 20090226: done:
[frogger@hardanger:OSELAS.BSP-phyCORE-trunk]$ ./p go
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:43: ***
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:44: *** PTXCONF_KERNEL_LOCAL_FLAG feature activated, but
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:45: *** PTXCONF_SETUP_KERNELDIR_PREFIX is unset!
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:46: ***
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:47: *** This feature is mainly for developers, who to want have their kernel sources
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:48: *** outside of ptxdist. You can turn it off by deselecting "Local kernel tree":
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:49: *** "ptxdist platformconfig" -> "Linux kernel" -> "Local kernel tree"
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:50: ***
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:51: *** If you want to use the feature, please enter a propper prefix
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:52: *** to your kernel tree
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:53: *** "ptxdist setup" -> "Source Directories"
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:54: *** -> "Prefix for kernel trees"
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:55: *** and specify where to look for your kernel tree
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:56: ***
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/kernel.make:57: *** . Stop.
[x] jbe: host-intltool.prepare
checking for XML::Parser... configure: error: XML::Parser perl module is required for intltool
Update 20090118 rsc: add a function to 'ptxdist go' that can run
stuff depending on ptxconfig; I don't want to add a ptxdist dependency
to XML::Parser and perl, just for glade. Something that runs on 'ptxdist
go' or 'ptxdist <some_stage>' (FIXME which one?) and can output something
like "error: need perl and XML::Parser to build glade".
Update 2009-01-20: jbe: add a test for perl XML::Parser into these
makefiles and fail gracefully with a nice error
message. So this test runs on demand only.
[x] jbe: "ptxdist platformconfig" moans:
error: The configfile version and ptxdist version do not match:
configfile version:
ptxdist version: 1.99.svn
Users current focus is on "selected_platformconfig". But ptxdist
moans about an empty 'selected_ptxconfig' here!
Instead it should:
- output the correct filename which is causing the problem here
- silently does its job, because the platformconfig is all right here
- should output this message, when running a "ptxdist menuconfig"
[x] Whenever a new packet dependency is added to the menus and one does not
update the used ptxconfig file, the next build will only detect the
"<packet_name>.install" dependency and fail due to the fact the
"<packet_name>.[get|extract|prepare|compile]" are still missing. When
ptxdist is able to detect the dependency to "<packet_name>.install", it
should also add the other targets (get|extract|prepare|compile) from inside
the <packet_name> silently. The current error is confusing, because it
occures even the user didn't change anything in his/her project.
[x] jbe: Would it be possible to delete a directory defined by PTXCONF_SYSROOT_TARGET
in the form "${PTXDIST_WORKSPACE}/local/${PTXCONF_ARCH_STRING}"
Currently the "local" part still exists when running "ptxdist clean".
This is for ptxdist-1 backward compatibility.
Update 20090126: the correct is path is:
"${PTXDIST_WORKSPACE}/local/${PTXCONF_GNU_TARGET}"
and it is cleaned now
[x] jbe: host-dbus-glib.compile
../../dbus/dbus-binding-tool: error while loading shared libraries:
libdbus-glib-1.so.2: cannot open shared object file: No such file or directory
[x] jbe: Adding "ant" to the required host tools. Emit a warning if its not
present, but not fail (required only to build jvisu)
Update 2007-01-24: rsc: rejected. Ant is only needed by tools which
use Java, and we don't want a prerequisite to
java in PTXdist. Maybe add some loud warning if
packets are built which use java, such as jvisu.
Update 2009-01-20: jbe: add a test for 'ant' into jvisu's makefile and
fail gracefully with a nice error message. So this test
runs on demand only.
Update 2009-01-26: done, no tests in the configure script for now.
looks this way now, everybody happy???
Update 2009-02-05: jbe is happy now.
make: *** [/home/frogger/pengutronix/bsp/OSELAS.BSP-Pengutronix-AllYes-trunk/platform-phyCORE-MPC5200B-tiny/state/jvisu.compile] Error 127
[frogger@hardanger:OSELAS.BSP-Pengutronix-AllYes-trunk]$ ./p compile jvisu
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/jvisu.make:18: *** ant is mandatory to build JVisu
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/jvisu.make:19: *** please install ant
/home/frogger/pengutronix/ptxdist/ptxdist-trunk/rules/jvisu.make:20: *** . Stop.
[x] jbe: /usr/share/apache2/libexec/mod_python.so
Misses libpython2.4.so.1.0 at runtime
Update: 2009-01-29: mkl broke it
mol fixed it
[x] jbe: These libs/executeables are including host library search paths (RPATH)
Check selected_toolchain/powerpc-603e-linux-gnu-readelf -d <binary>
for long host paths:
[x] mod_python from the Apache2 package
[x] inotifywait from the inotify-tools package
[x] jbe: These libs/executeables are including host library search paths (RPATH)
Check selected_toolchain/powerpc-603e-linux-gnu-readelf -d <binary>
for long host paths:
[x] libcpufreq from the cpufrequtils package
[x] mc from the Midnight Commander package
[x] jed from the JED package
[x] jbe: correct the ouput of "ptxdist menuconfig" when configuration is finished.
The output of
*** End of configuration.
*** Execute 'make' to build the project or try 'make help'.
is outdated...
rsc: while doing this, update to a recent kconfig version, with
saner colours instead of this unreadable yellow.
[x] JBE: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27363
[x] jbe: timezone files installation doesn't work as expected
[x] jbe, rsc: add sane minimal in-system documentation: README
[x] jbe: review all READMEs, COMPILE-TESTs, SPECIFICATIONs and so on files
in the ptxdist install folder. Most of them are trash only
[x] jbe: use tmpfs everywhere instead of the ramfs
[x] jbe: Current implementation of "screen" is useless due to lack of
generic configuration
[x] jbe: replacing an *.make file for project use is easy. But how to
replace a *.in file? rsc: no 0.10.6 issue, defer
[...] same as below:
[x] bbu: Discuss the future kconfig include scheme. At the moment, overriding
single *.in files is a real pain.
- There should be a way to autogenerate the needed files
before starting kconfig or kconfig should just ignore
double definitions (which might be a bad idea)
Features needed:
- override *.make as well as *.in
- create a sane menu structure
[x] rsc: 'ptxdist print <variable>' is pretty slow now; shall work with retval=0
if variable exists and retval!=0 if not
[x] RSC: http://htop.sourceforge.net/
now part of ptxdist
[x] jbe: Working with local sources seems broken, when a <PACKET_NAME>_SOURCE
is defined to the regular $(SRCDIR)/<PACKET_NAME>. The get stage fails in
this case. Our template will always create and fill this variable. Don't
know if this is intended and the failure is elsewhere.
Update 20090120 jbe: *_SOURCE is now defined to an empty variable.
[p] jbe: fltk.compile
In file included from ../FL/Fl_Single_Window.H:29,
from doublebuffer.cxx:37:
../FL/Fl_Window.H: In member function 'void Fl_Window::size_range(int, int, int, int, int, int, int)':
../FL/Fl_Window.H:91: warning: conversion to 'uchar' from 'short int' may alter its value
../FL/Fl_Window.H:91: warning: conversion to 'uchar' from 'short int' may alter its value
../FL/Fl_Window.H:91: warning: conversion to 'uchar' from 'short int' may alter its value
../fluid/fluid: ../fluid/fluid: cannot execute binary file
make[2]: *** [fast_slow.cxx] Error 126
make[2]: *** Waiting for unfinished jobs....
finished: fltk.compile
---> but it does not fail
Update 20090120 rsc: nobody is using fltk right now @ ptx, so mark it broken
[p] jbe: fltk.install
cp: cannot create regular file `/usr/lib/libfltk_jpeg.a': Permission denied
make[2]: *** [install] Error 1
cp: cannot create regular file `/usr/lib/libfltk_jpeg.a': Permission denied
make[2]: *** [install] Error 1
---> but it does not fail
Update 20090120 rsc: nobody is using fltk right now @ ptx, so mark it broken
[x] jbe: grep.compile: Host leakage
[...]/arm-v5te-linux-gnueabi/bin/ld: skipping incompatible
/usr/lib/libpcre.so when searching for -lpcre
[...]/arm-v5te-linux-gnueabi/bin/ld: skipping incompatible
/usr/lib/libpcre.a when searching for -lpcre
[...]/arm-v5te-linux-gnueabi/bin/ld: cannot find -lpcre
collect2: ld returned 1 exit status
Update 20090119 rsc: added a well defined switch to the grep packet; we are
not sure if this is the whole fix; until somebody shows us something different,
we assume it to be fixed.
[x] jbe: proftpd.compile
i586-unknown-linux-gnu-gcc [...] -I.. -I../include -O2 -Wall -c pr_fnmatch.c
In file included from [...]/sysroot-i586-unknown-linux-gnu/usr/include/asm/sigcontext.h:5,
from [...]/sysroot-i586-unknown-linux-gnu/usr/include/bits/sigcontext.h:28,
from [...]/sysroot-i586-unknown-linux-gnu/usr/include/signal.h:333,
from [...]/sysroot-i586-unknown-linux-gnu/usr/include/sys/wait.h:31,
from ../include/conf.h:95,
from pr_fnmatch.c:38:
[...]/sysroot-i586-unknown-linux-gnu/usr/include/asm/types.h:8:
error: conflicting types for 'mode_t'
[...]/sysroot-i586-unknown-linux-gnu/usr/include/sys/types.h:72:
error: previous declaration of 'mode_t' was here
Update 20090118 rsc: later toolchain uncover this bug; we upgrade
from 1.3.0a to 1.3.2rc3 which fixes the issue.
[x] jbe: madwifi.compile: Kernel version dependend
on x86: Emits a huge amount of errors about wrong pointers and
parameter counts.
Update 20090118 rsc: madwifi doesn't build with current kernels any
more, so we mark it BROKEN.
[x] jbe: valgrind.prepare
checking the libc version... unsupported version
configure: error: Valgrind requires glibc version 2.2 - 2.7
Update 20090118 rsc: fixed, we use a newer valgrind version now
[x] jbe: libx86.compile
i586-unknown-linux-gnu-gcc [...] -c -o lrmi.o lrmi.c
lrmi.c: In function 'set_regs':
lrmi.c:191: error: 'IF_MASK' undeclared (first use in this function)
lrmi.c:191: error: (Each undeclared identifier is reported only once
lrmi.c:191: error: for each function it appears in.)
lrmi.c:191: error: 'IOPL_MASK' undeclared (first use in this function)
lrmi.c: In function 'run_vm86':
lrmi.c:613: error: 'VIF_MASK' undeclared (first use in this function)
lrmi.c:613: error: 'TF_MASK' undeclared (first use in this function)
lrmi.c: In function 'LRMI_int':
lrmi.c:840: error: 'IF_MASK' undeclared (first use in this function)
lrmi.c:840: error: 'IOPL_MASK' undeclared (first use in this function)
make[2]: *** [lrmi.o] Error 1
Update 20090118 rsc: fixed
[x] jbe: Busybox: (on PowerPC and X86 only)
[...]
cc1: warnings being treated as errors
In file included from util-linux/fdisk.c:622:
util-linux/fdisk_osf.c: In function 'xbsd_writelabel':
util-linux/fdisk_osf.c:961: error: unused parameter 'p'
[x] jbe: chrony.compile
powerpc-603e-linux-gnu-gcc -O2 -g -DFEAT_RTC=1 [...] -c rtc_linux.c
In file included from rtc_linux.c:61:
io_linux.h:39:2: error: #error "I don't know the values of the _IOC_* constants for your architecture"
rtc_linux.c: In function 'switch_interrupts':
rtc_linux.c:680: error: 'CHRONY_IOC_NONE' undeclared (first use in this function)
rtc_linux.c:680: error: (Each undeclared identifier is reported only once
rtc_linux.c:680: error: for each function it appears in.)
rtc_linux.c:680: error: 'CHRONY_IOC_NRBITS' undeclared (first use in this function)
rtc_linux.c:680: error: 'CHRONY_IOC_TYPEBITS' undeclared (first use in this function)
rtc_linux.c:680: error: 'CHRONY_IOC_SIZEBITS' undeclared (first use in this function)
[...]
Update 20090118 rsc: fixed
[-] jbe: busybox.compile (on PowerPC)
[...]
CC util-linux/volume_id/ext.o
cc1: warnings being treated as errors
In file included from util-linux/fdisk.c:622:
util-linux/fdisk_osf.c: In function 'xbsd_writelabel':
util-linux/fdisk_osf.c:961: warning: unused parameter 'p'
make[2]: *** [util-linux/fdisk.o] Error 1
make[1]: *** [util-linux] Error 2
Update 20090118 rsc: this is a duplicate, also reported above.
[x] jbe: gwt.extract (at least a PowerPC) This stage seems to run the
autotools.
Update 20090118 rsc: it runs autotools because it is instructed to
do so without any deeper sense, in the .make file. Fixed.
[x] jbe: Segmentation fault?
-----------------------
target: locales.install
-----------------------
generating "en_US" - this can take some time
/work/ptxdist-trunk/scripts/make_locale.sh: line 29: 14673 Segmentation fault \
I18NPATH=${SYSROOT_USR}/share/i18n ${LOCALEDEF} ${ENDIAN} -i $LOCALE_DEF \
-f ${CHARMAP} --prefix=${PREF} $LOCALE_NAME
calling localedef binary failed
[x] jbe: directfb.compile
powerpc-603e-linux-gnu-gcc -DHAVE_CONFIG_H [...] -c ppcasm_memcpy_cachable.S -fPIC -DPIC -o .libs/ppcasm_memcpy_cachable.o
ppcasm_memcpy_cachable.S:37:26: error: linux/config.h: No such file or directory
[x] jbe: libtheora.prepare
"[x] sdl support" results into a:
[...]
checking for sdl... yes
checking for sdl >= fix.me.now... configure: error: *** sdl >= fix.me.now not found
by pkg-config on your system
[x] jbe: libcgicc: Runs host's autotools when the compile stage starts on some
systems (*not* on himalia). On system where it does not run the autotools
the compile stage fails with:
make[3]: Entering directory `[....]/platform-i586/build-target/cgicc-3.2.7/doc'
if test ! -d html; then \
mkdir html; \
fi;
DATE=`date '+%-d %b %Y'` VERSION=3.2.7 /bin/echo Doxyfile
Doxyfile
cp cgicc.png gnu-head-sm.jpg cgicc-doc.css html
mv html/index.html html/index.html.bak
mv: cannot stat `html/index.html': No such file or directory
[x] migrate libc from ptxconfig to platform
[x] rsc: config dependency dropper doesn't work yet; it assumes that all
labels correspond to their package names, but that's not true for
busybox, so the dropping doesn't work for bb. The right solution would be
to change PTXCONF_BB_ to PTXCONF_BUSYBOX__, but that would break all
migrations of old projects. Can only be done with a proper migration
script.
[x] Subject: Re: [ptxdist-commit] ptxdist r9228 - in trunks/ptxdist-trunk/patches:
libffi-3.0.7 libffi-3.0.7/generic
I am not sure this is the correct fix. The problem seems that ptxdist
uses ac_cv_sizeof_long_double with a value of 8, and that is where the
problem is, because that should be 12 on x86 and 16 on x86_64. That
error results in double and long double to have the same size and
configure to conclude there is no long double. And since that is never
true on x86 with gcc, there was no need for the ifdef with
HAVE_LONGDOUBLE in the x86 case.
- Erwin
rsc: add proper definitions according to platform definition
(PTXCONF_SIZEOF_LONG_DOUBLE)
[x] rsc: fix install_copy without source+destination; it worked before
with destination-only, but there was some problem. Ask mkl.
Update 20081228: rsc: seems like it works in the current trunk.
[x] rsc: autogenerated menues with overwriting.
20081109 mkl:
[x] directfb
[x] xorg
[x] gtk
[x] bluez
[x] crosstools
[x] debug
[x] gdb
[x] gtk
[x] host-gtk
[x] hosttools
[x] libc
[x] ltp
[x] net-sec
[x] networking
[x] ntp
[x] sdl
[x] tests
[x] wireless
[x] xorg
still have to be migrated
[x] jbe: Getting the value of an internal ptxdist variable returns always 1 as
its exit code ("ptxdist print ROOTDIR" returns with the correct value on stdout
but with exit code = 1)
Update 20081227: rsc: fixed, but now 'ptxdist print' is pretty slow.
[x] when the drop command is used without a stage, complain about that
and suggest to use clean instead
[x] jbe: When someone do not need a Linux kernel one earns:
<ptxdist/install/path>rules/kernel.make:109: warning: ignoring old commands for target
`<path/to/current/BSP/directory>'
[x] rsc: fallback server for udev
[x] rsc: toolchain selection doesn't work if gcc revision is empty=nocheck
[x] rsc: platformconfig: check what about PTXCONF_IMAGE_IPKG_ARCH; it
should go to the platformconfig code.
arm -> oabi
armel -> eabi little endian
armeb -> eabi big endian
This would make our packages compatible with maemo + debian
[x] 20081107 mkl: we use not PTXDIST_IPKG_ARCH_STRING which is generated in
scripts/lib/ptxd_make_install.sh
[x] rsc: we don't seem to have a target option for the endianess!
[x] rsc: SuSE has an old stat version which doesn't support --printf;
this breaks building of hd.img. Add test to configure.
[x] 20081107 mkl: we use "stat -c" now
[x] jbe: When someone do not need u-boot-v2 one earns:
<ptxdist/install/path>/rules/u-boot-v2.make:80: warning: overriding commands for
target `<path/to/current/BSP/directory>'
[x] jbe: Fix the too many --without-pam and the always --without-sendmail given
in the sudo.make in the prepare step
rsc: fixed by cleaning up package and disabling all untested things
[x] jbe: if the kernel.extract stage fails, ptxdist returns with exit code 0
Can be replicated by deleting the configures series file for the patch
stack in use.
[x] BBU: Implement scheme for alternative download-URLs as
fallback (e.g. mirrors)
[x] add menu entry for user local config files in /etc
[x] mol: ptxdist commands behave differently for arguments which exceed
the "current" command; some continue parsing and some exit.
[-] Start a "Global Patch Repository Unification Project". Potential
members:
* PTXdist
* T2
* OpenEmbedded
http://www.openembedded.org/repo/org.openembedded.dev/packages/
* Gentoo
* Debian
[x] bbu: audit *.in and *.make files, broken install definitions everywhere [tm]
(mostly c&p errors, probably)
[x] repair make makro 'install'; there are sometimes three """.
See procps.install for reference.
[x] jbe: reduce directory count on top level, combine build-* and
local-* into a shared subdir rsc: we've agreed on this variant:
build-host/
build-target/
build-cross/
local/
local-target/
local-cross/
[x] jbe: cleanup rules/other/Toplevel.make
[x] jbe: remove ptxdist's documentation from the installation.
It's now useless and outdated as a better alternative
is present with the application notes
[x] jbe: hd images must be built from ipkgs to support the ipkg tool
on the target
[x] if a packet is not selected, it's dependencies are not generated. If
you kick a stage then, the dependend stages are not executed.
Solution: generate the stages as well, so we get an error in that
case.
[x] RSC:is "select GLIBC_DEBUG" in gdb.in necessary??
[x] jbe: Switching from generating hd image to jffs2 image _rebuilds_
the the whole project!
Known Problem: the virtual-cross-tools depends on host-mtd-utils,
which is selected by JFFS2. this must depend on images somewhere.
mkl knows how to fix it...
[x] jbe: current trunk complains
glib.make:40: warning: overriding commands for target `/home/all_src/glib-2.8.6.tar.bz2'
host-glib.make:38: warning: ignoring old commands for target `/home/all_src/glib-2.8.6.tar.bz2'
[x] jbe: if the "ptxdist toolchain" step was omited, ptxdist complains
about toolchain vendor instead of missing toolchain
[x] jbe: if ptxdist was called with wrong parameters (and complains about it) it
should return also an error return code (so something like
"ptxdist clen kernel && ptxdist go" fails)
[x] jbe: ipkg does not work on the target anymore. Cannot install anything.
[x] jbe: suppress cross toolchain and toolchain vendor check while --native build
[x] rsc: put export LANG=C somewhere into PTXdist, to make compiler
output more readable
[x] jbe: libxcb depends on host's xslt installation! Current fix is to be checked.
[x] jbe: xcb-proto depends on host's xmllint!
[x] jbe:
ptxdist: platformconfig...
platforms/images.in:14:warning: 'select' used by config symbol 'IMAGE_HD' refers to undefined symbol 'HOST_GENPART'
platforms/images.in:193:warning: 'select' used by config symbol 'IMAGE_JFFS2' refers to undefined symbol 'HOST_MTD_UTILS'
platforms/images.in:226:warning: 'select' used by config symbol 'IMAGE_UIMAGE' refers to undefined symbol 'HOST_UMKIMAGE'
platforms/images.in:271:warning: 'select' used by config symbol 'IMAGE_EXT2' refers to undefined symbol 'HOST_GENEXT2FS'
[x] jbe: add help what symbol "PTXCONF_PLATFORM" should contain (or what it
means if this entry is still empty)
[x] jbe: "ptxdist help" does not output the new option "platformconfig"
[x] jbe: if the ptx dialog will be called from within the menu dialog the loop
should stop, if calling the ptx dialog resturns with an error. In one case
one of the *.in files was missed and the error message can't be read
because the menu dialog overwrite it immediately
[x] jbe: udev. Generic startscript complains about a missing udev-adm
[x] jbe: fakeroot seems to have problems to run in a 64 bit environment. Not
at the image creation stage, only at the "install" stage
Update:
- fakeroot fails on all glibc 2.5 based systems
[x] jbe: rules file for zlib is broken since ptxdist-0.10.6!
What the hell means libz.so.0.0.0???? In ptxdist-0.10.5 it was libz.so.1.2.3!
[x] jbe: transfer ipkg's runtime configuration to the ipkg packet itself
-> its not rootfs
[x] jbe: uboot-1.2.0's build system is not multi processor save
-> supress -j option
[x] pureftp's configure runs twice and needs host's autotools!
[x] audit the logfile of AllYesArm for autotool calls
Update 2007-01-24: rsc: the solution is simple: just add
AM_MAINTAINER_MODE to the configure.in/ac if the
autotools are re-run. This avoids that the
maintainer dependencies are put into the packet.
[x] util-linux: re-calls automake during compile;
[x] libxslt: re-calls automake during compile
[x] pure-ftpd: re-calls automake during compile
[x] jbe: all local sources (file://) are still do a touch into the package directory.
(into "Source Directory"). If this file gets deleted, ptxdist builds the whole
package again (and recreate the file in the Source Directory).
Update 2007-01-24: fixed; order of PACKET-empty check in extract
was changed.
[x] jbe: Chrony fails to compile
Update 2007-01-25: jbe: better fix; force chrony to use the wide ncurses lib
if present, else the non wide one
Update 2007-01-19: rsc: fixed; ncurses didn't install the
non-widechar variants of the libraries.
[x] OSELAS.BSP-Pengutronix-TechPool-trunk$ p select ptxconfig.dotgnu
/home/rsc/svn/ptxdist-trunk/scripts/libptxdist.sh: line 26:
/media/rscusb1_plain/svn/oselas/bsp/pengutronix/huettinger/OSELAS.BSP-Pengutronix-TechPool-trunk/ptxconfig:
No such file or directory
Update 2007-01-19: rsc: fixed
[x] jbe: starting with a new and empty project should provide the user with
a generic (and default) ptxconfig instead of an error message.
But it should not do it automatically! It should ask before doing it!
Otherwise we will end up with many ptxconfig files in many directories...
Update 2007-01-19: rsc: it's not so easy as "touch ptxconfig &&
ptxdist oldconfig". Error message is improved
the preferred way to start a new project is
cloning.
[x] jbe: host-mknbi fails to build
Update 2007-01-19: rsc: doesn't work, hasn't for ages, deleted
[x] jbe: liboldX fails to build the ipkg but the build continues!
Update 2007-01-19: rsc: fixed
[x] unbreak host-zlib; it is necessary for host-umkimage if there is no
zlib devel packet installed on the host.
[x] omitting glibc installation should be possible, first hack attempt
done
Update 2007-01-12: No idea what the reason was; we don't have a
concept for anything else than shared libs and
glibc.
[x] rsc: fakeroot-the-hosttool seems not to be found - reported by wrap. It
looks to me as if $(PTXDIST_WORKSPACE)/local/bin has to be included
into the path somehow. Ask mkl.
[x] Our current host tools use their target counterparts for getting the
sources; if the target counterpart is not selected, the dependencies
are not created correctly! Test: switch off ipkg but activate
host-ipkg.
[x] audit 'get' stage
[x] Menu Structure
JBE: Use menuconfig instead of menu + configs whereever possible.
It looks nicer in "menuconfig" and its much better supported when using
"xconfig"
[x] ptxdist should reject working as ROOT
[x] add prerequisite checks to configure script; find out which
prerequisites we really need.
[x] Toolchain selection
JBE: add an identifier to a (central) toolchain (in "make setup").
It should be possible to use more than one toolchain in a local
ptxdist folder (for different targets/projects). So the idetifier
selects the right toolchain for this project. This identifier
simplifies the toolchain selection. There could be a central
folder in the system with all informations (and identifiers)
about any available toolchain installed on this system.
--> done: "ptxdist toolchain path" per project
[x] discuss UID of user "nobody" and GID of "nogroup"
[x] jbe: ptxdist images fails for jffs2 fileimage creation
it seems local-host/sbin is not in the PATH
[x] jbe: procps.install stage fails with:
make: Ungültige Option -- y
make: Ungültige Option -- y
make: Ungültige Option -- L
make: Ungültige Option -- /
make: Ungültige Option -- L
make: Ungültige Option -- /
Seems the install macro emits: make [...] CFLAGS=""" LDFLAGS=""" [...]
[x] jbe: udev needs rules to control permissions on device nodes; jbe
currently writes docs for this.
[x] jbe/rsc: /etc/resolv.conf and /etc/nsswitch.conf:
Find a solution to generate DNS configuration files from other sources
like boardsetup (I have no clue what this means).
"Then either have no resolv.conf at all (use /etc/hosts only), or generate
resolv.conf from 'ptxdist boardsetup' information and generate a
sane nsswitch.conf."
[x] rsc: check if we can update mtd-utils from 1.0.0 to 1.0.1; mkl has
already prepared the patches; find out why the revision number was
not bumped. mkl: 1.0.1 needs acl, so we stay with 1.0.0
[x] ssh: server start scripts are missing
[x] ssh: key gen mechanics needed
[x] dbus needs user messagebus -> /etc/passwd; jbe: needs other user,
non-root; add this user to /etc/passwd. Debian has a user called
"messagebus", we should do it the same way. Define a sane UID (ask
jbe)
[x] rsc: find out why mkl added this new dependency mechanism which
searches for ${${LABEL}_DIR}/.ptx-extract.
[x] rsc: merge mkl's host/cross/target-pkg-config fixes. We need this to
have a proper x.org and host-dbus.
[x] jbe: make DHCP client useful on the target. Currently only the binary
will be built and copied, but does not work on the target
[x] jbe: update DHCP tp 3.0.5 or correct path to 3.0.4
[x] jbe: creating links into non existent directories fails, but does
not break the build!
Update 2007-01-12: rsc/mkl: the install_link macro has mkdir -p
calls in all relevant places; should not
happen -> jbe: retest.
TODO.rsc
--------
[ ] connman:
[ ] add configure switch for glib detection
[ ] if connecting dbus doesn't work, we get no output; seems
like daemon() doesn't connect to syslog first
|