From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeff Garzik Subject: Re: [PATCHv2] cld: use XDR for all messages Date: Tue, 26 Jan 2010 17:11:31 -0500 Message-ID: <4B5F6893.3070906@garzik.org> References: <1263577788-2081-1-git-send-email-cmccabe@alumni.cmu.edu> <4B57B01F.5080903@garzik.org> <436f52801001201838l450fbe09i6f2f9d2b6ceebe6d@mail.gmail.com> <436f52801001261322k4f6273ccl9f6a21f6ccb123df@mail.gmail.com> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=/2SJXcBl4ebgAFkqUJJXCVCiaXY+0FCekfzhe9E+7bU=; b=Iv8sQBjXC2xzOO9Fwg2zvn1RjZHGRN4DJSNO5QjdQE5PP5Oak0uxzisd85FDHFUCyy 2LdfpZ6iXZpgJa+eZ3Dujbr/zpj8Odl8Tr8/a5OJjFIsWOFb48H+zpaqbGlm8Zd1OdEq DqCWcDKKSsK7M3OqDFLw3Q6nHJTDHV+jXodao= In-Reply-To: <436f52801001261322k4f6273ccl9f6a21f6ccb123df@mail.gmail.com> Sender: hail-devel-owner@vger.kernel.org List-ID: Content-Type: text/plain; charset="us-ascii"; format="flowed" To: Colin McCabe Cc: Project Hail List , Pete Zaitcev On 01/26/2010 04:22 PM, Colin McCabe wrote: > Hi all, > > I'm currently reworking this patch to address the concerns mentioned > here (mostly autotools-related). I'm also going to separate it into > multiple patches. > > A few questions: > > I would really like cld_msg_rpc.h to show up in "include," for > consistency with the other headers. > > Is it possible for cld_msg_rpc.x to live in lib/ and export the header > into the include/ directory? > I've been reading everything I can about automake, but I still haven't > been able to figure out if this kind of cross-directory dependency > between two directories at the same depth is possible. > > I really don't want to put cld_msg_rpc_xdr.c in include/. But so far I > can't figure out how to have the header there, without the .c file... Actually I poked at it this weekend, and was about to finish up. So hold off for another day, if you would. The answer is, there are two different build environments to consider for headers: the in-tree build environment, and the installed-header build environment. That is why including "lib/foo.h" does not work, particularly in nested headers. You need to fiddle INCLUDES in Makefile.am to get the header path correct at build time, and then ensure that all headers are installed in the proper location (by default, $includedir) using include_HEADERS. That way, cld_msg_rpc* remains in lib/ while the other headers remain in include/ Also, while splitting this up, I noticed that ping_open is no longer set to true. Jeff