Re: ppp source
Re: ppp source
- Subject: Re: ppp source
- From: Terry Lambert <email@hidden>
- Date: Mon, 6 Aug 2007 12:30:48 -0700
On Aug 6, 2007, at 7:55 AM, Mike Gargano wrote:
you want errors? you got 'em :) (included below of course)
as I've described on some of the other lists, I was under the
impression that the stuff you download from opensource.apple.com was
the same code used in the corresponding distribution. This project,
however, still has a pbproj file, so I don't know if it just hasn't
been touched in so long that I shouldn't even expect it to compile.
Any help is appreciated. Thanks in advance.
-Mike
CompileC "build/ppp.build/Deployment/PPTP (Kernel Extension).build/
Objects-normal/ppc/pptp_domain.o" /Users/mrg/Documents/ppp/
ppp-233.0.6/Drivers/PPTP/PPTP-extension/pptp_domain.c normal ppc c
com.apple.compilers.gcc.4_0
cd /Users/mrg/Documents/ppp/ppp-233.0.6
/usr/bin/gcc-4.0 -x c -arch ppc -pipe -Wno-trigraphs -fasm-
blocks -g -Os -Wno-pointer-sign -fmessage-length=0 -mtune=G4 -
mmacosx-version-min=10.4 -I/Users/mrg/Documents/ppp/ppp-233.0.6/
build/ppp.build/Deployment/PPTP\ (Kernel\ Extension).build/PPTP.hmap
-Wmost -Wno-four-char-constants -Wno-unknown-pragmas -F/Users/mrg/
Documents/ppp/ppp-233.0.6/build/Deployment -I/Users/mrg/Documents/
ppp/ppp-233.0.6/build/Deployment/include -I/System/Library/
Frameworks/Kernel.framework/PrivateHeaders -I/Developer/SDKs/
MacOSX10.4u.sdk/System/Library/Frameworks/Kernel.framework/Headers -
I/Users/mrg/Documents/ppp/ppp-233.0.6/build/ppp.build/Deployment/PPTP
\ (Kernel\ Extension).build/DerivedSources -fno-common -nostdinc -
fno-builtin -finline -fno-keep-inline-functions -
force_cpusubtype_ALL -fno-exceptions -msoft-float -static -mlong-
branch -DKERNEL -DKERNEL_PRIVATE -DDRIVER_PRIVATE -DAPPLE -DNeXT -
isysroot /Developer/SDKs/MacOSX10.4u.sdk -c /Users/mrg/Documents/ppp/
ppp-233.0.6/Drivers/PPTP/PPTP-extension/pptp_domain.c -o /Users/mrg/
Documents/ppp/ppp-233.0.6/build/ppp.build/Deployment/PPTP\ (Kernel\
Extension).build/Objects-normal/ppc/pptp_domain.o
In file included from /Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/
PPTP/PPTP-extension/pptp_domain.c:47:
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_proto.h:30: warning: 'struct domain' declared inside parameter
list
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_proto.h:30: warning: its scope is only this definition or
declaration, which is probably not what you want
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_proto.h:31: warning: 'struct domain' declared inside parameter
list
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_domain.c: In function 'pptp_domain_init':
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_domain.c:123: warning: passing argument 1 of 'pptp_add' from
incompatible pointer type
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_domain.c: In function 'pptp_domain_terminate':
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_domain.c:187: warning: passing argument 1 of 'pptp_remove' from
incompatible pointer type
You do not have an include line like:
-I<path to nonstandard place where I put the xnu headers I built>
This indicates to me that you maybe took them as-is.
As part of the xnu build process, there are some headers which are
filtered to result in different headers based on include path. Unless
you have built xnu, you are not going to end up with the same heades
we end up with.
In this particular case, I would expect that:
#ifndef _SYS_DOMAIN_H_
#define _SYS_DOMAIN_H_
#ifdef PRIVATE
^^^^^^^^^^^^^^^^^^^^
This is likely what's getting you in <sys/domain.h>, because you
haven't gone through this post-processing process as part of building
xnu, which would run this header through "unifdef" with "PRIVATE"
defined.
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_ip.c:72: error: invalid application of 'sizeof' to incomplete
type 'struct protosw'
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_ip.c:73: error: invalid use of undefined type 'struct protosw'
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_ip.c:74: error: invalid use of undefined type 'struct protosw'
/Users/mrg/Documents/ppp/ppp-233.0.6/Drivers/PPTP/PPTP-extension/
pptp_ip.c:74: error: 'PR_PROTOLOCK' undeclared (first use in this
function)
Same thing, but applied to <sys/protosw.h>.
-
To forestall the inevitable question, the reason we do this is because
we are in general unwilling to support data interfaces, and in
particular reserve the right to change unpublished data structures out
from under you at any time in any software update. If we were to
publish them, it would tend to imply a willingness on our part to let
you use them, and tend to imply a tacit compact with the developer
that we wouldn't change them in ways that would break code you wrote
that depended on them.
Note that I have been very careful here to say "tend to imply" rather
than "imply": there are no guarantees for things not documented as
KPI, and under extraordinary circumstances, we reserve the right to
change KPI as well. In other words, just because you can see a
structure without jumping through the hoops you are seeing here,
doesn't mean that it won't change at some point.
Ordinarily, this isn't a problem (of course), because we rev certain
system components at the same time as the kernel when we do a software
update, so the distributed code is always self-consistent; so if a
structure changes out from under someone, we know that at build/test
time.
-- Terry
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden