From: Benno <benjl@cse.unsw.edu.au>
To: linux-kernel@vger.kernel.org, roms@tilp.info
Subject: [PATCH] Re: Building on platforms other than Linux
Date: Thu, 12 Aug 2004 10:22:20 +1000 [thread overview]
Message-ID: <20040812002220.GF24657@cse.unsw.edu.au> (raw)
In-Reply-To: <20040811185453.GA7217@mars.ravnborg.org>
[-- Attachment #1: Type: text/plain, Size: 1798 bytes --]
On Wed Aug 11, 2004 at 20:54:53 +0200, Sam Ravnborg wrote:
>On Wed, Aug 11, 2004 at 07:13:49PM +1000, Benno wrote:
>> Hi,
>>
>> I was wondering if there were any, in priniciple, objections
>> to making the Linux kernel buildable on different Unix-like
>> platforms?
>
>The userbase for building kernels are only increasing and there
>continue to be more focus from the embedded people.
>Having experince in this field first-hand tells me that a kernel
>that can be build on several paltforms are a good thing.
This is the direction I am coming from.
>For kbuild you will at some point start to see patches so at least
>the build system does not restrict us to Linux alone.
Great.
>People on this list usually reply: "shift development to a Linux
>based platform". This is for many developers a nice dream,
>but they are restricted by coporate rules etc.
>
>So please feed patches to this list with your findings.
>
>>
>> I am currently compiling on MacOSX and this, for the most part was
>> fairly straightforward and simple. The biggest gotcha I had was
>> that libkconfig is compiled as a shared library, and unfortunately shared
>> libraries are done quite different on different systems. Specifically MacOSX
>> doesn't support gcc -shared.
>
>Please submit a patch for this and make sure to include Roman Zippel, he
>is the maintainer of kconfig.
Attached is a patch to avoid using shared libraries in the build system.
It is very simple, instead of [m]conf linked against libkconfig.so, they
directly link against $(libkconfig-objs).
For (g|q)conf they no longer use dl_open and also directly link against
$(libkconfig-objs). (Achieved by export LKC_DIRECT_LINK to the compile.)
(Give this change one could also get rid of rules to build .so files
in Makefile.lib)
Cheers,
Benno
[-- Attachment #2: no_shared.diff --]
[-- Type: text/plain, Size: 1342 bytes --]
--- ../../../linux-2.6.7/scripts/kconfig/Makefile 2004-06-16 15:20:26.000000000 +1000
+++ Makefile 2004-08-12 09:53:15.000000000 +1000
@@ -68,8 +68,8 @@
libkconfig-objs := zconf.tab.o
host-progs := conf mconf qconf gconf
-conf-objs := conf.o libkconfig.so
-mconf-objs := mconf.o libkconfig.so
+conf-objs := conf.o $(libkconfig-objs)
+mconf-objs := mconf.o $(libkconfig-objs)
ifeq ($(MAKECMDGOALS),xconfig)
qconf-target := 1
@@ -81,11 +81,11 @@
ifeq ($(qconf-target),1)
qconf-cxxobjs := qconf.o
-qconf-objs := kconfig_load.o
+qconf-objs := $(libkconfig-objs)
endif
ifeq ($(gconf-target),1)
-gconf-objs := gconf.o kconfig_load.o
+gconf-objs := gconf.o $(libkconfig-objs)
endif
clean-files := libkconfig.so lkc_defs.h qconf.moc .tmp_qtcheck \
@@ -96,10 +96,10 @@
HOSTCFLAGS_zconf.tab.o := -I$(src)
HOSTLOADLIBES_qconf = -L$(QTLIBPATH) -Wl,-rpath,$(QTLIBPATH) -l$(QTLIB) -ldl
-HOSTCXXFLAGS_qconf.o = -I$(QTDIR)/include
+HOSTCXXFLAGS_qconf.o = -DLKC_DIRECT_LINK -I$(QTDIR)/include
HOSTLOADLIBES_gconf = `pkg-config gtk+-2.0 gmodule-2.0 libglade-2.0 --libs`
-HOSTCFLAGS_gconf.o = `pkg-config gtk+-2.0 gmodule-2.0 libglade-2.0 --cflags`
+HOSTCFLAGS_gconf.o = -DLKC_DIRECT_LINK `pkg-config gtk+-2.0 gmodule-2.0 libglade-2.0 --cflags`
$(obj)/conf.o $(obj)/mconf.o $(obj)/qconf.o $(obj)/gconf.o: $(obj)/zconf.tab.h
prev parent reply other threads:[~2004-08-12 0:37 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-08-11 9:13 Benno
2004-08-11 18:54 ` Sam Ravnborg
2004-08-11 19:03 ` Arjan van de Ven
2004-08-11 19:19 ` Sam Ravnborg
2004-08-12 0:22 ` Benno [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040812002220.GF24657@cse.unsw.edu.au \
--to=benjl@cse.unsw.edu.au \
--cc=linux-kernel@vger.kernel.org \
--cc=roms@tilp.info \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®