@@ -26,13 +26,13 @@ import qualified Data.ByteString.Char8 as B
27generateMakefile :: IO ()
27generateMakefile :: IO ()
28generateMakefile = do
28generateMakefile = do
29− makefileExists <- doesFileExist "Makefile"
29+ makefileExists <- doesFileExist makefilename
30 when (not makefileExists) $ do
30 when (not makefileExists) $ do
31 let makefile = $(embedFile "pcc/Makefile")
31 let makefile = $(embedFile "pcc/Makefile")
32 exePath <- getExecutablePath
32 exePath <- getExecutablePath
33 putStrLn ""
33 putStrLn ""
34− putStrLn $ "Generating Makefile... " ++ "pcc executable location " ++ exePath
34+ putStrLn $ "Generating " ++ makefilename ++ "... " ++ "pcc executable location " ++ exePath
35− writeFile "Makefile" . T.unpack $
35+ writeFile makefilename . T.unpack $
37 pathPlaceholder
37 pathPlaceholder
38 (T.pack $ takeDirectory exePath)
38 (T.pack $ takeDirectory exePath)
@@ -48,14 +48,34 @@ generateMakefile = do
49generatePackagefile :: IO ()
49generatePackagefile :: IO ()
50generatePackagefile = do
50generatePackagefile = do
51− pkgfileExists <- doesFileExist "psc-package.json"
51+ pkgfileExists <- doesFileExist packagefilename
52 when (not pkgfileExists) $ do
52 when (not pkgfileExists) $ do
53 let pkgfile = $(embedFile "pcc/psc-package.json")
53 let pkgfile = $(embedFile "pcc/psc-package.json")
54 putStrLn ""
54 putStrLn ""
55− putStrLn "Generating psc-package.json..."
55+ putStrLn $ "Generating " ++ packagefilename ++ "..."
56− writeFile "psc-package.json" $ B.unpack pkgfile
56+ writeFile packagefilename $ B.unpack pkgfile
57 putStrLn "Done"
57 putStrLn "Done"
58 putStrLn "Use the 'psc-package' utility to install or update packages."
58 putStrLn "Use the 'psc-package' utility to install or update packages."
60+generateXcodefile :: IO ()
61+generateXcodefile = do
62+ xcodefileExists <- doesFileExist xcodefilename
63+ when (not xcodefileExists) $ do
64+ let xcodefile = $(embedFile "pcc/psc-xcode.sh")
66+ putStrLn $ "Generating " ++ xcodefilename ++ "..."
67+ writeFile xcodefilename $ B.unpack xcodefile
69+ putStrLn "Add this file to an Xcode 'Run Script' build phase."
71+makefilename :: String
72+makefilename = "Makefile"
74+packagefilename :: String
75+packagefilename = "psc-package.json"
77+xcodefilename :: String
78+xcodefilename = "psc-xcode.sh"
60pathPlaceholder :: T.Text
80pathPlaceholder :: T.Text
61pathPlaceholder = "{{path}}"
81pathPlaceholder = "{{path}}"