All of lore.kernel.org
 help / color / mirror / Atom feed
* Building on case-insensitive filesystems
@ 2004-10-16 19:35 Dan Kegel
  2004-10-18 13:42 ` Harald Welte
  0 siblings, 1 reply; 3+ messages in thread
From: Dan Kegel @ 2004-10-16 19:35 UTC (permalink / raw)
  To: netfilter-devel

$ ls {include/linux/netfilter_ipv4,net/ipv4/netfilter}/*.{h,c}
shows eight pairs of files whose names differ only in case.
For example:
$ more include/linux/netfilter_ipv4/ipt_{mark,MARK}.h
::::::::::::::
include/linux/netfilter_ipv4/ipt_mark.h
::::::::::::::
#ifndef _IPT_MARK_H
#define _IPT_MARK_H

struct ipt_mark_info {
     unsigned long mark, mask;
     u_int8_t invert;
};

#endif /*_IPT_MARK_H*/

::::::::::::::
include/linux/netfilter_ipv4/ipt_MARK.h
::::::::::::::
#ifndef _IPT_MARK_H_target
#define _IPT_MARK_H_target

struct ipt_mark_target_info {
         unsigned long mark;
};

#endif /*_IPT_MARK_H_target*/

Seems like ipt_mark_target.h might be a better name for
that latter file.  That would let developers who have
MacOSX or Windows laptops successfully unpack the
Linux source tree on their computers' case-insensitive filesystems.

I maintain http://kegel.com/crosstool, which is a script
that builds arbitrary combinations of gcc + {g,uc}libc + binutils + linux headers + target.
As a check on the resulting cross toolchains, I try building
a Linux kernel.  This works great in general, but on
operating systems with case-insensitive filesystems
(MacOSX, Cygwin), building the linux kernel understandably fails on these files.

Here's the patch I've been using to do a rename and fix Makefiles to match:
   http://www.kegel.com/crosstool/linux-2.6.8-netfilter-case-insensitive.patch
It renames the uppercase variants to add a _u suffix, but I would
gladly rework the patch to use a nicer suffix (like _target) if
that would help make the rename happen.

This is part of a larger effort to make life easier for
embedded Linux developers who are stuck developing on Windows
or Mac systems; see discussion at
http://marc.theaimsgroup.com/?l=linux-kernel&m=109713211417106&w=2
(Summary: Sam Ravnborg is helping; Russel King is skeptical.)
- Dan

-- 
Trying to get a job as a c++ developer?  See http://kegel.com/academy/getting-hired.html

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2004-10-18 15:28 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-10-16 19:35 Building on case-insensitive filesystems Dan Kegel
2004-10-18 13:42 ` Harald Welte
2004-10-18 15:28   ` Dan Kegel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.