After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 91867 - need a doc on portability
need a doc on portability
Status: RESOLVED FIXED
Product: website
Classification: Infrastructure
Component: developer.gnome.org
current
Other Linux
: Normal normal
: ---
Assigned To: Malcolm Tredinnick
Malcolm Tredinnick
Depends on:
Blocks: 91873
 
 
Reported: 2002-08-28 12:36 UTC by Telsa Gwynne
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Telsa Gwynne 2002-08-28 12:36:42 UTC
This should actually go in gnome-docu/whitepapers I think, then
get built automatically for the website.

Stuff like bashisms, gnuisms, linux-kernelisms. They don't worry
me cos I use all three, but people on other OSes object to them.

I have a starting list of "stuff to avoid and why" from gmorten
and frb and Alan, but this is hardly something I can write myself.
Comment 1 Malcolm Tredinnick 2002-09-02 01:19:40 UTC
I had already started one of these, so I pulled it out and updated it
over the weekend. It's now mostly done, so I guess this bug is mine.
Comment 2 Malcolm Tredinnick 2002-09-04 01:38:41 UTC
I have checked in the first version under
gnome-devel-docs/articles/portable-programming/C. I have not yet added
it to the build process, since I want to encourage a few developers to
read it first (anybody have any dirt on Gman that I can use to
blackmail him?).

Btw, scrollkeeper's categories are fairly pitiful, so it is classified
as GNOME|Development|Tutorial at the moment, since that is the closest
fit. We really need a GNOME|Development|Articles category, I think.
Comment 3 Peter Williams 2002-09-04 05:17:07 UTC
One very small comment: fnmatch() is made portable in glib with the
g_pattern_* functions, and directory reading is portablized with
g_dir_* (though I think that's more aimed at Win32 portability than
Unix portability).
Comment 4 Peter Williams 2002-09-04 17:00:35 UTC
Also, there should be a bit about

   printf ("%s", NULL);

causing segfaults on Solaris (but resulting in "(nil)" on Linux).

And maybe that lots of foo_r (reentrant libc functions) seem to take
differing numbers of arguments depending on platform. Cf the Evolution
configure.in
Comment 5 Malcolm Tredinnick 2002-09-08 03:14:58 UTC
Both of Peter's changes have been merged into the latest draft in CVS. 

We now need to work out what to do with this document so that we can
close the bug. Putting it up on the website somewhere (along with the
session management one that Federico and Havoc wrote) would be a good
idea. It is not sufficient to just package it for distribution -- we
should both package it and post it online somewhere.
Comment 6 Malcolm Tredinnick 2003-03-06 05:06:27 UTC
Closing this, since the document has been written and not too many
complaints have come in. Of course, it's an invisible document, since
it is only available from CVS at the moment, but there is not really
anything I can do about this (whining on mailing lists has had sod all
effect).