[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Result: Octave-UPM on Windows :-(
From: |
Ben Abbott |
Subject: |
Re: Result: Octave-UPM on Windows :-( |
Date: |
Sat, 10 Nov 2012 18:49:56 -0500 |
On Nov 10, 2012, at 6:06 PM, Alexander Hansen wrote:
> 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.
Thanks.
I wrote a short script in Octave to locate the dependencies in /usr and then
check to see if they were under the APSL, and not FreeBSD. The APSL include
files listed in my src/.deps/octave-main.Po are ...
/usr/include/Availability.h
/usr/include/AvailabilityInternal.h
/usr/include/AvailabilityMacros.h
/usr/include/_structs.h
/usr/include/_types.h
/usr/include/architecture/i386/math.h
/usr/include/crt_externs.h
/usr/include/i386/_structs.h
/usr/include/i386/_types.h
/usr/include/i386/setjmp.h
/usr/include/i386/signal.h
/usr/include/libkern/_OSByteOrder.h
/usr/include/libkern/i386/_OSByteOrder.h
/usr/include/mach/i386/_structs.h
/usr/include/machine/_structs.h
/usr/include/machine/_types.h
/usr/include/machine/endian.h
/usr/include/machine/setjmp.h
/usr/include/machine/signal.h
/usr/include/machine/types.h
/usr/include/math.h
/usr/include/pthread.h
/usr/include/pthread_impl.h
/usr/include/sched.h
/usr/include/setjmp.h
/usr/include/sys/_posix_availability.h
/usr/include/sys/_select.h
/usr/include/sys/_structs.h
/usr/include/sys/_symbol_aliasing.h
/usr/include/sys/_types.h
/usr/include/sys/appleapiopts.h
As I'm on a MacBook with MacPorts installed this list may not be the same as it
would be for Fink.
I assume this means that distributing an Octave binary built this way is a
violation of the GPL?
Ben
- Re: Result: Octave-UPM on Windows :-(, (continued)
- Re: Result: Octave-UPM on Windows :-(, Alexander Hansen, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(, Jordi Gutiérrez Hermoso, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(, Alexander Hansen, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(, Benjamin Abbott, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(, Benjamin Abbott, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(, Alexander Hansen, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(, Ben Abbott, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(, Alexander Hansen, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(, Ben Abbott, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(, Alexander Hansen, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(,
Ben Abbott <=
- Re: Result: Octave-UPM on Windows :-(, Ben Abbott, 2012/11/10
- Re: Result: Octave-UPM on Windows :-(, Pedro, 2012/11/11
- Re: Result: Octave-UPM on Windows :-(, Pedro, 2012/11/11
- Re: Result: Octave-UPM on Windows :-(, Israel Herraiz, 2012/11/11
Re: Result: Octave-UPM on Windows :-(, Philip Nienhuis, 2012/11/10