]> err.no Git - sope/blob - sopex/SOPEX/README
fixed a warning
[sope] / sopex / SOPEX / README
1 # $Id: README 1 2004-08-20 11:17:52Z znek $
2
3
4 ABSTRACT
5 ========
6
7 SOPEX provides basic infrastructure for developing SOPE applications
8 using Xcode on Mac OS X. SOPEX consists of a framework, a project
9 template and several file templates. The SOPEX.framework provides functionality 
10 for launching and debugging SOPE applications. SOPEX applications can be 
11 launched as normal Desktop applications and provide their own, integrated web 
12 browser (using Apple's WebKit). Doing so, SOPEX applications are fully 
13 functional stand-alone HTML applications.
14
15
16 PREREQUISITES
17 =============
18
19 SOPEX depends on the following frameworks to be properly installed:
20
21 a) SxXML
22 b) SxCore
23 c) SOPE
24  
25 Please note that in order for SOPE to run properly you need to have
26 installed at least one SaxDriver in /Library/SaxDrivers. The SOPE
27 installer should take care of this, however.
28
29
30 DEBUGGING
31 =========
32
33 When debugging SOPEX apps in Xcode, you'll pretty soon experience that
34 gdb doesn't attach to the process you're expecting to ... that is because
35 gdb attaches itself to the frontmost process which is the application wrapper.
36 The web application is a process which gets forked off the application
37 wrapper. So if you want to debug the web process, you have two options:
38
39 a) attach gdb to this process manually (the process's pid is available from the
40 statistics panel)
41 b) launch the application from Xcode with the --daemon option set. Something
42 like this will do the trick (all arguments in a single row):
43 --daemon -WOProjectDirectory
44 /Network/Users/znek/Projects/unchecked/znek/MulleCMS2/ -WOCachingEnabled NO
45 -WODebuggingEnabled YES -WODebugComponentLookup YES 
46
47 It's totally clear to me that a) and b) aren't perfect. A perfect solution
48 would probably be to attach gdb on demand (via a menu command). I don't know
49 if Xcode is scriptable enough to do this. Someone with more knowledge on the
50 subject please elaborate!
51
52
53 USEFUL DEBUGGING DEFAULTS
54 =========================
55
56 At present there's a limited set of NSUserDefaults aiding in the debugging
57 of SOPEX applications. Please note that all user defaults for SOPE applications
58 will work as well.
59
60 -WOPort <number>:
61  if set, forces the child process to be launched on this specific port.
62  Useful for debugging with tcpdump.
63                       
64 -SNSPort <number>:
65  if set, forces the parent process to listen on this port number for
66  SNS connections. Useful for debugging with tcpdump.
67
68 -SOPEXDebugEnabled <bool>:
69  Global debug message trigger.
70
71 -SOPEXDebugWebConnection <bool>:
72  Use this to trigger debug messages in SOPEXWebConnection.
73
74
75 TODO
76 ====
77
78 - preferences (optional debugging options, etc.)
79 - session statistics, resource consumption (real mem, virtual mem)
80 - working auth panel
81 - SOPEXBrowserWindow: make favIcon work
82
83
84 Known BUGS
85 ==========
86
87
88
89 Prebinding Notes
90 ================
91
92 General technical information about prebinding is available from Apple at
93 http://developer.apple.com/documentation/Performance/Conceptual/LaunchTime/Tasks/Prebinding.html#//apple_ref/doc/uid/20001858.
94
95 OGo frameworks currently use the range from 0xC0000000 to 0xCFFFFFFF.
96
97 Any questions and feedback regarding our use of this range should go to
98 Marcus Müller <znek@mulle-kybernetik.com>.
99
100
101 SOPEX: 0xC6000000 - 0xC6FFFFFF
102 =============================
103
104 0xC6FF0000 SOPEX