From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <43C00044.7000109@domain.hid> Date: Sat, 07 Jan 2006 18:54:12 +0100 From: Jan Kiszka MIME-Version: 1.0 References: <43BFB26F.8020409@domain.hid> <43BFF568.2030804@domain.hid> <43BFF69C.4040705@domain.hid> <43BFF919.60706@domain.hid> In-Reply-To: <43BFF919.60706@domain.hid> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enig7EE4CECD455D3B10410D439D" Sender: jan.kiszka@domain.hid Subject: [Xenomai-core] Re: [PATCH] move RTDM headers List-Id: "Xenomai life and development \(bug reports, patches, discussions\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Philippe Gerum Cc: xenomai-core This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig7EE4CECD455D3B10410D439D Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 7bit Philippe Gerum wrote: > Jan Kiszka wrote: > >> Philippe Gerum wrote: >> >>> Jan Kiszka wrote: >>> >>> >>>> Hi Philippe, >>>> >>>> this patches cleans up the include/rtdm folder by moving internal >>>> headers to ksrc/skins/rtdm, leaving only rtdm.h, rtdm_driver.h, the two >>>> profile headers, and syscall.h there. The latter is still only needed >>>> for building Xenomai itself, thus it will not be installed. >>>> Successfully >>>> built for 2.4 and 2.6. Additionally, I compiled latest RTnet SVN >>>> against >>>> it without problems (x86, PPC is currently being fixed by Wolfgang). >>>> >>>> Please apply/move the involved headers and run bootstrap. >>>> >>> >>> This one broke the build here: >>> >>> -- >>> CC kernel/xenomai/skins/rtdm/core.o >>> kernel/xenomai/skins/rtdm/core.c:36:18: core.h: No such file or >>> directory >>> kernel/xenomai/skins/rtdm/core.c:37:20: device.h: No such file or >>> directory >>> -- >> >> >> >> Updated your repos? As you forgot to apply the moving, I also got >> problems and applied my local versions of core.h, device.h, and proc.h, >> also removing the three from their previous location. >> > > The problem is that the patch does not recreate those files in > ksrc/skin/rtdm, but only deletes them from include/rtdm. > Oops, indeed. I was sure "svn diff" will include locally added files in the output, but it didn't -- ah, my svn version is too old! :) >> >>> Additionally, it's a really very bad idea to start including things like >>> "core.h" removing the rtdm/ prefix, while other include files like >>> nucleus/core.h exist. For the sake of readability, I'm going to revert >>> this particular change at least. >>> >> >> >> That's why I use #include "core.h", which -for me- clearly states: "Pick >> the local one!" > > > Nope, it "states pick the first one you find outside of the system dirs > depending on the order of the directories listed by -I in your > Makefile", which is quite different, and leads to all sort of > braindamage issues if you happen to screw up your CFLAGS in your Makefile. #include "file.h" -> start searching for file.h in that place you found the file containing this statement. Likely one can overwrite this behaviour with some strange gcc flags. > > You will now have to tweak the Makefiles again... > >> > > That's ok, I will do that. The prefix rule is enforced everywhere for > internal headers so that nobody gets mad trying to find why the wrong > one is included, and the best way not to depend on "-I" pecularities is > to avoid playing with them in the first place. Additionally, this leaves > no doubt about which header you wanted to include, regardless of the > sanity of your Makefile. Ok, it's a matter of taste, and if you like to keep it this way for all skins, I'm fine with it. Jan --------------enig7EE4CECD455D3B10410D439D Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFDwABEniDOoMHTA+kRAkEVAJ4ilJIOzJm614fTrrbB9dKaUvtfrQCePri/ NunWg/SybyYeasy7IZlM1Y0= =qnIz -----END PGP SIGNATURE----- --------------enig7EE4CECD455D3B10410D439D--