Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com Date: Tue, 22 Aug 2000 01:12:20 -0400 From: Chris Faylor To: cygwin-developers AT sources DOT redhat DOT com Subject: Re: Eliminating monolithic winsup.h Message-ID: <20000822011220.A22359@cygnus.com> Reply-To: cygwin-developers AT sources DOT redhat DOT com Mail-Followup-To: cygwin-developers AT sources DOT redhat DOT com References: <20000822010347 DOT A21166 AT cygnus DOT com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.3.6i In-Reply-To: <20000822010347.A21166@cygnus.com>; from cgf@cygnus.com on Tue, Aug 22, 2000 at 01:03:47AM -0400 On Tue, Aug 22, 2000 at 01:03:47AM -0400, Chris Faylor wrote: >I've been slowly moving all of the cygwin header files out of winsup.h. >The goal is to improve compile times and to allow better dependency >checking. > >I was inspired by DJ's recent windows header file changes. > >One thing that I'm not 100% sure about is relying on header file >ordering. Currently, I've tried to keep everything flat. That means >that .h files do not include other .h files even if they depend on >them. > >I'm noticing that some header files like sigproc.h and shared.h are >still too monolithic for their own good and probably need to be broken >down more. That will be a later step. I forgot to add that I've also changed the cygwin Makefile.in to always generate dependencies for .cc files using the -MD option to gcc. This means that there will be a bunch of .d files in addition to .o files in your build directory. I'm not 100% certain that this is the best way to do this but it was quick and easy and it seems to work without noticeably slowing down the build. Does anyone have any other suggestions for how to do this? I'd love to only generate the .d files when a .c or .cc changes but that's not really easy to do. cgf