From http://www.jwz.org/xscreensaver/xscreensaver-5.35.tar.gz
[xscreensaver] / OSX / README
1
2 This directory contains the MacOS-specific code for building a Cocoa
3 version of xscreensaver without using X11.
4
5 To build it, just type "make", or use the included XCode project.  The
6 executables will show up in the "build/Release/" and/or "build/Debug/"
7 directories.
8
9 If you build using anything later than Xcode 5.0.2, the resultant savers
10 will require MacOS 10.7 or later.  To support 10.4 through 10.6, you must
11 use Xcode 5.0.2 or earlier.
12
13 This is how you add a new screen saver to the Xcode project. It's a
14 ridiculously long list of steps!
15
16   1: Duplicate a target (Dangerball for GL, or Attraction for X11).
17   2: Rename it, and drag it to the right spot in the list.
18   3: Delete the dangerball.c and dangerball.xml files from Build Phases.
19   4: Delete the "DangerBall copy-Info.plist" file that got created.
20   5: Delete the "DangerBall copy-Info.plist" from the Build Settings too.
21   6: Change PRODUCT_NAME in Build Settings (maybe this automatic now?)
22   7: Manage Schemes, rename "DangerBall Copy".
23   8: Move to the right place in the list.
24   9: Scheme / Run / Info: Executable: SaverTester.app.
25  10: Scheme / Run / Arguments: set SELECTED_SAVER environment variable.
26  11: File / Add Files / the new .c and .xml.
27  12: Select each file in the left pane; see Target Membership in the right
28      pane and add them to the new target, and to "XScreenSaver-iOS".
29  13: Re-order them in the file list.
30  14: In target "All Savers (OpenGL)" add the new target as Build Phases /
31      Target Dependency.
32  15: In target "XScreenSaver-iOS", reorder new files in Build Phases /
33      "Copy" and "Compile", since they showed up in a random place.
34  16: In target "XScreenSaver-iOS", add "-DUSE_GL" to the new file's options.
35  17: Put a 200x150 screen shot in ~/www/xscreensaver/screenshots/
36  18: ln -s ../../src/xscreensaver/OSX/build/Debug/NEW.saver \
37            ~/Library/Screen\ Savers/
38  19: git add xscreensaver.xcodeproj/xcuserdata/*/xcschemes/*.xcscheme
39  20: Don't forget to create a man page from the XML with xml2man.pl,
40      and update Makefile.in.
41  21: Make a video: -record-animation 3600 -delay 1 -geom 1920x1080+128+64
42      ./upload-video.pl NAME