Active Topics

 


Reply
Thread Tools
Posts: 1,808 | Thanked: 4,272 times | Joined on Feb 2011 @ Germany
#1061
Originally Posted by sixwheeledbeast View Post
Seamless doesn't have to be stripped for a more Community orientated Software Update.
I know. I just re-defined seamless to mean "whatever we do we do it as if Nokia had done it". Nokia left us, we can leave them as well. The N900 is free enough to allow us modding the fvck out it.

Removing an unnecessary package dependency is like the least we can do!
 

The Following 5 Users Say Thank You to reinob For This Useful Post:
Posts: 3,074 | Thanked: 12,960 times | Joined on Mar 2010 @ Sofia,Bulgaria
#1062
Originally Posted by ketmar View Post

first, seems that 'sb-conf in -edL' should be 'sb-conf in -edLF' to avoid installing libfakeroot manually.
I skipped that part ('F') on purpose, for some reason installing libfakeroot as part of sb-conf parameters didn't work for me.

then everything went smooth (except that i can't understand why i should do 'rm -rf /targets/FREMANTLE_ARMEL_GCC472/opt' -- i ommited that step, there were only some perl crap which shouldn't hurt anything).
this comes from SB install instructions, read them carefully

another thing i stepped in is alot of messages about duplicate functions (on a real project, not on 'hello_world.c'). some googling, and i found that i can add '-fgnu89-inline' to CFLAGS. i did that and then i was able to build my projects with this shiny new gcc 4.7!
yep, some projects require that, it depends on configure scripts, i.e. it detects c99 compatible compiler and passes -std=c99, gcc tries to use inlines, but they are not supported in current glibc. Hopefully this will be solved when new (well, the same version but with fixed ppoll()/pselect() and support for inlines) glibc comes in CSSU.

See, the difference between gcc 4.2.1 and 4.7.2 is big, there are lots of changes and usually one needs to play a bit with compiler flags.

the other VERY useful flag is -mword-relocations, use that if linker aborts with some cryptic error message.

Every project is different, I don't think there is a way to write on wiki a full set of instructions. However, feel free to edit the page if you feel something should go there
__________________
Never fear. I is here.

720p video support on N900,SmartReflex on N900,Keyboard and mouse support on N900
Nothing is impossible - Stable thumb2 on n900

Community SSU developer
kernel-power developer and maintainer

 

The Following 7 Users Say Thank You to freemangordon For This Useful Post:
Posts: 3,074 | Thanked: 12,960 times | Joined on Mar 2010 @ Sofia,Bulgaria
#1063
Originally Posted by reinob View Post
I know. I just re-defined seamless to mean "whatever we do we do it as if Nokia had done it". Nokia left us, we can leave them as well. The N900 is free enough to allow us modding the fvck out it.

Removing an unnecessary package dependency is like the least we can do!
Sure. But the idea of CSSU-thumb is not to redefine what CSSU is or is not. As maybe you see, I am trying to follow "upstream" . So, if CSSU-testing drops some dependencies, CSSU-thumb will follow shortly. But I don't want to create some dependency mess, just because I can, or just for the purpose of freeing 20-30k in rootfs. Pester merlin1991, I will follow
__________________
Never fear. I is here.

720p video support on N900,SmartReflex on N900,Keyboard and mouse support on N900
Nothing is impossible - Stable thumb2 on n900

Community SSU developer
kernel-power developer and maintainer

 

The Following 8 Users Say Thank You to freemangordon For This Useful Post:
Posts: 50 | Thanked: 135 times | Joined on Nov 2012
#1064
>See, the difference between gcc 4.2.1 and 4.7.2 is big, there are lots of changes
>and usually one needs to play a bit with compiler flags.

yes, i know that the difference is big. and while i have used gcc since... let me think... v2.95, i always was too lazy to study all it's options.

not that i'm ranting, i just described what i found while installing the things. and yes, i'm actively using c99 (gnu99, to be honest). and sorry... i just forgot about it, it is natural as breathing. so yes, it's my bad with inlining and standards. thank you for clarification.

btw, is there any need to use PIC code for ARM .so (except that relocations kills page sharing)? it's the first time i'm writing/porting something for ARM.

>However, feel free to edit the page if you feel something should go there
nope, i'm still new to scratchbox, and i'm not ready for building my own cross-compiling toolchain (it's not *that* hard to build gcc suite, but all that -dev .debs one need to compile reasonably big project for n900...). that's why i came to ask what i missed. thank you for your answers, i see some light now. %-)

btw, is there any 'standard' flag in DEB_BUILD_OPTIONS (or something) that i can use to detect thumb2 builds? sure, i can check gcc version, but it looks like a dirty trick. and some of my projects (my build system is one of that) just can't be built with optimisations and pointer aliasing on gcc 4.2.

if there will be some flag in DEB_BUILD_OPTIONS -- something like "thumb2", for example, i can easily check it in debian/rules and have automated builds for both 'arm' and 'thumb' for free. sure, i added such flag in my scratchbox config, but if it will be standardized some way, any developer can use it. %-)
 

The Following 2 Users Say Thank You to ketmar For This Useful Post:
Posts: 3,074 | Thanked: 12,960 times | Joined on Mar 2010 @ Sofia,Bulgaria
#1065
@ketmar: yep, there is, guess how it's called

example debian/rules snippet:

Code:
ifneq (,$(findstring thumb,$(DEB_BUILD_OPTIONS)))
  CFLAGS += -mthumb
endif

BTW, be careful when building for non-thumb, this is enabled by default

EDIT:

Having executable pages shared is enough reason on n900(256MB RAM) for -fPIC
__________________
Never fear. I is here.

720p video support on N900,SmartReflex on N900,Keyboard and mouse support on N900
Nothing is impossible - Stable thumb2 on n900

Community SSU developer
kernel-power developer and maintainer


Last edited by freemangordon; 2012-11-15 at 07:26.
 

The Following 4 Users Say Thank You to freemangordon For This Useful Post:
Posts: 1,808 | Thanked: 4,272 times | Joined on Feb 2011 @ Germany
#1066
Originally Posted by freemangordon View Post
Sure. But the idea of CSSU-thumb is not to redefine what CSSU is or is not. As maybe you see, I am trying to follow "upstream" . So, if CSSU-testing drops some dependencies, CSSU-thumb will follow shortly. But I don't want to create some dependency mess, just because I can, or just for the purpose of freeing 20-30k in rootfs. Pester merlin1991, I will follow
Of course of course I tend to rant about CSSU in general, this time it happened to be in thumb-branch but was in no way directed to thumb itself.
 

The Following 4 Users Say Thank You to reinob For This Useful Post:
joerg_rw's Avatar
Posts: 2,222 | Thanked: 12,651 times | Joined on Mar 2010 @ SOL 3
#1067
Originally Posted by reinob View Post
Define "dropping". I suggested that



i.e. that the *dependency* be removed. All N900s need pulseaudio. Many/most N900 don't need esd. Hence esd should not be a dependency of pulseaudio, but a recommendation or suggestion or whatever you want to call it.

Every user would still have the freedom of apt-get install'ing esd or whatever other package he or she may want to install.

Personally I don't care about esd, and that's why I took it as an example. CSSU should be more "C" and less (first) "S". Open-sourced versions of Nokia closed-source programs should not be clones, they should bring improvements. Otherwise I *personally* don't care if the source code of a program is available or not (unless I want to modify it myself)

The same goes for dependencies. If Nokia decided that modest needs intellisync or exchange as a dependency, that doesn't mean that they are real dependencies, and hence CSSU should fix those dependencies and make them optional. [ This is just a ficticious example, I don't know if, but I guess that, those dependencies are actually there ]

But hey, as long as each user has the freedom to remove or install a package, what CSSU does or does not is irrelevant..
(Sorry for not shortening the quote above)

Basically that's what I'm pushing for since quite some time.
Original Nokia concept of one MetaPackage containing all was tailored to fit their idea of rolling out a complete system every once in a while, while same time Nokia doesn't need to care too much about proper dependencies - at least that's my humble guess. Now while maintaining stuff in CSSU, this MP more and more becomes an annoyance and a PITA.

So while we noticed that, Merlin1991 and me thought about a way to overcome those problems. See this IRC meeting protocol for related info about making stuff optional.
In CSSU we should strive to move more and more packages out of the MP blob and make them proper autonomous packages with a working set of dependencies.
CSSU is "seamless" (as in your definition) regarding allowing user to benefit from bugfixes while not forcing any UI/UX changes on her/him. It however is "Community" (again in your definition) in trying to allow user more freedom of choice than original Nokia MP concept did. By no way we're going to replace Nokia's set of forced components and settings by our own deemed improved set that's similarly restrictive regarding freedom of choice. In your above example, ESD would need to become an optional (original Nokia-)package, while for example the new camera-ui would become an optional-alternative CSSU package, since it replaces the original Nokia package, introduces UX changes, and fremantle needs one of both, thus "-alternative".

cheers
jOERG
__________________
Maemo Community Council member [2012-10, 2013-05, 2013-11, 2014-06 terms]
Hildon Foundation Council inaugural member.
MCe.V. foundation member

EX Hildon Foundation approved
Maemo Administration Coordinator (stepped down due to bullying 2014-04-05)
aka "techstaff" - the guys who keep your infra running - Devotion to Duty http://xkcd.com/705/

IRC(freenode): DocScrutinizer*
First USB hostmode fanatic, father of H-E-N

Last edited by joerg_rw; 2012-11-18 at 19:02.
 

The Following 8 Users Say Thank You to joerg_rw For This Useful Post:
Posts: 466 | Thanked: 335 times | Joined on Jan 2010 @ Vienna, Austria
#1068
hello, I just upgraded CSSU from 38-1Tmaemo5.1+thumb4 to 38-1Tmaemo6 (non-thumb it seems?), because I was assuming if I got an update pushed it would be thumb as well and didn't double-check the version number.
I'd like to keep running thumb though, is there an easy way to go back? Or will You make a thumb version of this update soon?
Thanks, Ben
 
Posts: 3,074 | Thanked: 12,960 times | Joined on Mar 2010 @ Sofia,Bulgaria
#1069
Originally Posted by bennypr0fane View Post
hello, I just upgraded CSSU from 38-1Tmaemo5.1+thumb4 to 38-1Tmaemo6 (non-thumb it seems?), because I was assuming if I got an update pushed it would be thumb as well and didn't double-check the version number.
I'd like to keep running thumb though, is there an easy way to go back? Or will You make a thumb version of this update soon?
Thanks, Ben
Keep it that way, AFAIK only hildon-desktop should be updated to non-thumb version.

I will wait for 1-2 weeks to see if everything is ok with latest -testing and if it is, will issue a new -thumb update.
__________________
Never fear. I is here.

720p video support on N900,SmartReflex on N900,Keyboard and mouse support on N900
Nothing is impossible - Stable thumb2 on n900

Community SSU developer
kernel-power developer and maintainer

 

The Following 15 Users Say Thank You to freemangordon For This Useful Post:
Posts: 159 | Thanked: 217 times | Joined on Oct 2011
#1070
Originally Posted by freemangordon View Post
Keep it that way, AFAIK only hildon-desktop should be updated to non-thumb version.

I will wait for 1-2 weeks to see if everything is ok with latest -testing and if it is, will issue a new -thumb update.
Also something else replaced with vanilla versions maybe....

Code:
Preparing to replace libssl0.9.8 0.9.8n-1+maemo4+0m5+0cssu0+thumb1 (using .../libssl0.9.8_0.9.8n-1+maemo4+0m5+0cssu1_armel.deb) ...
Unpacking replacement libssl0.9.8 ...
Preparing to replace hildon-desktop 1:2.2.142-22+thumb0 (using .../hildon-desktop_1%3a2.2.142-23_armel.deb) ...
Unpacking replacement hildon-desktop ...
Preparing to replace ke-recv 3.19-15.2 (using .../ke-recv_3.19-15.6_armel.deb) ...
Unpacking replacement ke-recv ...
Preparing to replace obexd 0.46-1maemo3+0cssu2 (using .../obexd_0.46-1maemo5+0cssu1_armel.deb) ...
Unpacking replacement obexd ...
Preparing to replace openssl 0.9.8n-1+maemo4+0m5+0cssu0+thumb1 (using .../openssl_0.9.8n-1+maemo4+0m5+0cssu1_armel.deb) ...
Unpacking replacement openssl ...
Preparing to replace status-area-orientationlock-applet 1.0+0cssu3 (using .../status-area-orientationlock-applet_1.0+0cssu4_armel.deb) ...
Unpacking replacement status-area-orientationlock-applet ...
Preparing to replace camera-ui 1.1.29.2+0cssu14+thumb0 (using .../camera-ui_1.1.29.2+0cssu15_armel.deb) ...
Unpacking replacement camera-ui ...

Last edited by Kossuth; 2012-11-23 at 17:52.
 
Reply

Tags
code size, dinosaurs, fmg ftw!, fmg.da.king, performance, thumb, thumb life


 
Forum Jump


All times are GMT. The time now is 19:27.