octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Result: Octave-UPM on Windows :-(


From: Alexander Hansen
Subject: Re: Result: Octave-UPM on Windows :-(
Date: Sat, 10 Nov 2012 16:06:28 -0700
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:16.0) Gecko/20121026 Thunderbird/16.0.2

On 11/10/12 3:05 PM, Ben Abbott wrote:
> 
> On Nov 10, 2012, at 4:39 PM, Alexander Hansen wrote:
> 
>> On 11/10/12 1:59 PM, Ben Abbott wrote:
>>>
>>> On Nov 10, 2012, at 12:44 PM, Benjamin Abbott wrote:
>>>
>>>> On Nov 10, 2012, at 12:31 PM, Jordi Gutiérrez Hermoso <address@hidden> 
>>>> wrote:
>>>>
>>>>> On 10 November 2012 12:30, Alexander Hansen <address@hidden> wrote:
>>>>>> On 11/10/12 10:14 AM, Jordi Gutiérrez Hermoso wrote:
>>>>>>> On 10 November 2012 06:03, Jacob Dawid <address@hidden> wrote:
>>>>>>>> The problem is that we are collecting experience with using VS and by 
>>>>>>>> doing
>>>>>>>> that we promote non-free software.
>>>>>>>
>>>>>>> There's also a practical problem with distribution here, since given
>>>>>>> Visual Studio's non-free nature, our users have to go and chase
>>>>>>> additional libraries on their own, since we are not free to give them
>>>>>>> those libraries ourselves.
>>>>>>>
>>>>>>> A similar problem occurs with Xcode and free distribution on Mac OS X.
>>>>>>
>>>>>> Except that Xcode *doesn't install libraries*.
>>>>>
>>>>> It installs headers, right? What's in the "command line tools for
>>>>> Xcode" that we can't distribute freely?
>>>>>
>>>>> - Jordi G. H.
>>>>
>>>> I've been meaning look at the copyright for the headers used by Xcode, but 
>>>> keep forgetting.  Has anyone taken a peek?
>>>>
>>>> Ben
>>>
>>> I'm not sure which headers Octave uses when build on MacOS X.   I looked 
>>> through several .h files in /usr/include to see what was there.  Some 
>>> include a FSF copyright.
>>>
>>>> This file is part of GCC.
>>>>
>>>> GCC is free software; you can redistribute it and/or modify it under
>>>> the terms of the GNU General Public License as published by the Free
>>>> Software Foundation; either version 2, or (at your option) any later
>>>> version.
>>>>
>>>> GCC is distributed in the hope that it will be useful, but WITHOUT ANY
>>>> WARRANTY; without even the implied warranty of MERCHANTABILITY or
>>>> FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
>>>> for more details.
>>>>
>>>> You should have received a copy of the GNU General Public License
>>>> along with GCC; see the file COPYING.  If not, write to the Free
>>>> Software Foundation, 59 Temple Place - Suite 330, Boston, MA
>>>> 02111-1307, USA.  */
>>>
>>> Some a FreeBSD Copyright (?)
>>>
>>>> // Copyright (c) 1993 The Regents of the University of California.
>>>> // All rights reserved.
>>>> //
>>>> // This code is derived from software contributed to Berkeley by
>>>> // Kent Williams and Tom Epperly.
>>>> //
>>>> //  Redistribution and use in source and binary forms, with or without
>>>> //  modification, are permitted provided that the following conditions
>>>> //  are met:
>>>>
>>>> //  1. Redistributions of source code must retain the above copyright
>>>> //  notice, this list of conditions and the following disclaimer.
>>>> //  2. Redistributions in binary form must reproduce the above copyright
>>>> //  notice, this list of conditions and the following disclaimer in the
>>>> //  documentation and/or other materials provided with the distribution.
>>>>
>>>> //  Neither the name of the University nor the names of its contributors
>>>> //  may be used to endorse or promote products derived from this software
>>>> //  without specific prior written permission.
>>>>
>>>> //  THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
>>>> //  IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
>>>> //  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
>>>> //  PURPOSE.
>>>
>>> Some the Apple Public Source License (not GPL compatible)
>>>
>>>> * This file contains Original Code and/or Modifications of Original Code
>>>> * as defined in and that are subject to the Apple Public Source License
>>>> * Version 2.0 (the 'License'). You may not use this file except in
>>>> * compliance with the License. Please obtain a copy of the License at
>>>> * http://www.opensource.apple.com/apsl/ and read it before using this
>>>> * file.
>>>> * 
>>>> * The Original Code and all software distributed under the License are
>>>> * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
>>>> * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
>>>> * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
>>>> * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
>>>> * Please see the License for the specific language governing rights and
>>>> * limitations under the License.
>>>
>>> Is there a way to determine which include files Octave uses ?
>>>
>>> Ben
>>
>> If you use --enable-dependency-tracking at configure time (I don't
>> remember if that's default or not), that information gets cached in
>> files in the build tree.
> 
> Forgive my ignorance, but after the build completes, how to I determine the 
> dependencies?
> 
> Ben
> 
> 

No problem

What you're looking for is files with a ".Po" or ".Plo" extension.
They're just text files, and have entries like:

main.o: main.c ../config.h ../libgnu/stdint.h \
  /usr/bin/../lib/clang/4.1/include/stdint.h /usr/include/stdint.h \
  ../libgnu/sys/types.h /usr/include/sys/types.h \
  /usr/include/sys/appleapiopts.h /usr/include/sys/cdefs.h \
  /usr/include/sys/_symbol_aliasing.h \
  /usr/include/sys/_posix_availability.h /usr/include/machine/types.h \
  /usr/include/i386/types.h /usr/include/i386/_types.h \
  /usr/include/sys/_types.h /usr/include/machine/_types.h \
  /usr/include/machine/endian.h /usr/include/i386/endian.h \
  /usr/include/sys/_endian.h /usr/include/libkern/_OSByteOrder.h \
  /usr/include/libkern/i386/_OSByteOrder.h /usr/include/sys/_structs.h \
  /usr/bin/../lib/clang/4.1/include/limits.h /usr/include/limits.h \
  /usr/include/machine/limits.h /usr/include/i386/limits.h \
  /usr/include/i386/_limits.h /usr/include/sys/syslimits.h \
  /usr/include/inttypes.h /usr/include/_types.h \
  ../libcruft/misc/f77-fcn.h ../libcruft/misc/quit.h ../libgnu/stdio.h \
  /usr/include/stdio.h /usr/include/Availability.h \
  /usr/include/AvailabilityInternal.h /usr/include/secure/_stdio.h \
  /usr/include/secure/_common.h \
  /usr/bin/../lib/clang/4.1/include/stdarg.h \
  /usr/bin/../lib/clang/4.1/include/stddef.h ../libgnu/signal.h \
  /usr/include/signal.h /usr/include/sys/signal.h \
  /usr/include/machine/signal.h /usr/include/i386/signal.h \
  /usr/include/i386/_structs.h /usr/include/machine/_structs.h \
  /usr/include/mach/i386/_structs.h /usr/include/setjmp.h \
  ../liboctave/lo-ieee.h octave.h

../config.h:

../libgnu/stdint.h:

/usr/bin/../lib/clang/4.1/include/stdint.h:

<...>

I believe the reiteration of the headers is to show what headers _they_
drag in.

So it's pretty human-readable or processable via scripts.
-- 
Alexander Hansen, Ph.D.
Fink User Liaison
My package updates: http://finkakh.wordpress.com/


reply via email to

[Prev in Thread] Current Thread [Next in Thread]