From f1e92861ed9808599dffbad48560c28f409b19ed Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Fri, 28 Jan 2011 10:37:36 -0800 Subject: [PATCH] Updated main.c for API changes Kees Bakker to sdl The main.c for the template is still targeting SDL1.2. Here is the patch to make it work for SDL1.3 (I'm hoping the mailing lists accepts attachments.) In this patch I have also changed the shell script that assembles the Template. Since there is now only one lib target (same name for "device" and "simulator" version) I copy the simulator library to the destination with the name libSDLSimulator.a. This is not a satisfactory solution, because both libraries are included in the project while only one is needed (depending on the selected environment). However, I'm not fluent with Xcode to say what a better solution would be. Kind regards, Kees Bakker --- Xcode-iPhoneOS/SDL/SDLiPhoneOS.xcodeproj/project.pbxproj | 2 +- Xcode-iPhoneOS/Template/SDL Application/main.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Xcode-iPhoneOS/SDL/SDLiPhoneOS.xcodeproj/project.pbxproj b/Xcode-iPhoneOS/SDL/SDLiPhoneOS.xcodeproj/project.pbxproj index cf1f37235..06043549d 100755 --- a/Xcode-iPhoneOS/SDL/SDLiPhoneOS.xcodeproj/project.pbxproj +++ b/Xcode-iPhoneOS/SDL/SDLiPhoneOS.xcodeproj/project.pbxproj @@ -1352,7 +1352,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "# clean up the framework, remove headers, extra files\n\ntemp=$BUILD_DIR/$BUILD_STYLE-template\ndest=\"/Developer/Platforms/iPhoneOS.platform/Developer/Library/XCode/Project Templates/SDL\"\ntemplate_dir_name=\"SDL Application\"\n\nrsync_flags=\"--exclude *.svn --links -r\"\n\n# mkdir -p $dest\nmkdir -p $temp\nmkdir -p \"$temp/$template_dir_name/lib/\"\nmkdir -p \"$temp/$template_dir_name/include\"\n\n#copy template\nrsync $rsync_flags \"../template/$template_dir_name\" $temp/\n\n#copy iPhone OS library\nrsync $rsync_flags -r $BUILD_DIR/$BUILD_STYLE-iphoneos/libSDLiPhoneOS.a \"$temp/$template_dir_name/lib/\"\n\n#copy iPhone Simulator Lib\nrsync $rsync_flags -r $BUILD_DIR/$BUILD_STYLE-iphonesimulator/libSDLSimulator.a \"$temp/$template_dir_name/lib/\"\n\n#copy headers\nrsync $rsync_flags ../../include/ \"$temp/$template_dir_name/include\"\n\n#install (nah, don't install)\n# cp -fr \"$temp/$template_dir_name\" \"$dest\""; + shellScript = "# clean up the framework, remove headers, extra files\n\ntemp=$BUILD_DIR/$BUILD_STYLE-template\ndest=\"/Developer/Platforms/iPhoneOS.platform/Developer/Library/XCode/Project Templates/SDL\"\ntemplate_dir_name=\"SDL Application\"\n\nrsync_flags=\"--exclude *.svn --links -r\"\n\n# mkdir -p $dest\nmkdir -p $temp\nmkdir -p \"$temp/$template_dir_name/lib/\"\nmkdir -p \"$temp/$template_dir_name/include\"\n\n#copy template\nrsync $rsync_flags \"../template/$template_dir_name\" $temp/\n\n#copy iPhone OS library\nrsync $rsync_flags -r $BUILD_DIR/$BUILD_STYLE-iphoneos/libSDLiPhoneOS.a \"$temp/$template_dir_name/lib/\"\n\n#copy iPhone Simulator Lib. Can't use the same name.\nrsync $rsync_flags -r $BUILD_DIR/$BUILD_STYLE-iphonesimulator/libSDLiPhoneOS.a \"$temp/$template_dir_name/lib/libSDLSimulator.a\"\n\n#copy headers\nrsync $rsync_flags ../../include/. \"$temp/$template_dir_name/include\"\n\n#install (nah, don't install)\n# cp -fr \"$temp/$template_dir_name\" \"$dest\""; }; /* End PBXShellScriptBuildPhase section */ diff --git a/Xcode-iPhoneOS/Template/SDL Application/main.c b/Xcode-iPhoneOS/Template/SDL Application/main.c index 168fb48c9..8b20954b7 100644 --- a/Xcode-iPhoneOS/Template/SDL Application/main.c +++ b/Xcode-iPhoneOS/Template/SDL Application/main.c @@ -32,9 +32,10 @@ render(void) r = randomInt(50, 255); g = randomInt(50, 255); b = randomInt(50, 255); + SDL_SetRenderDrawColor(r, g, b, 255); /* Fill the rectangle in the color */ - SDL_RenderFill(r, g, b, 255, &rect); + SDL_RenderFillRect(&rect); /* update screen */ SDL_RenderPresent(); @@ -69,7 +70,7 @@ main(int argc, char *argv[]) } /* Fill screen with black */ - SDL_RenderFill(0, 0, 0, 0, NULL); + SDL_RenderClear(); /* Enter render loop, waiting for user to quit */ done = 0;