Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

RegexKit 0.3.0 landing...

  • Loading branch information...
commit e8a6625adbfacc22ef18f6f8015e016ecb3708c6 1 parent 58a2f2e
jengelhart authored
Showing with 4,608 additions and 1,397 deletions.
  1. +204 −0 ChangeLog
  2. +14 −10 GNUstep/GNUmakefile
  3. +5 −5 LICENSE
  4. +1 −2  README
  5. +224 −30 RegexKit.xcodeproj/project.pbxproj
  6. +74 −0 ReleaseNotes
  7. +10 −0 Source/Build/Distribution/Adding RegexKit to your Project.html
  8. +1 −1  Source/Build/Distribution/Documentation.html
  9. +1 −1  Source/Build/Distribution/distribution_pcre.h
  10. +141 −0 Source/Build/Makefiles/Makefile.dist
  11. +53 −54 Source/Build/Makefiles/Makefile.pcre
  12. +4 −0 Source/Build/Packagemaker/Resources/English.lproj/Conclusion.rtf
  13. +38 −0 Source/Build/Packagemaker/Resources/English.lproj/License.rtf
  14. +104 −0 Source/Build/Packagemaker/Resources/English.lproj/ReadMe.rtf
  15. +4 −0 Source/Build/Packagemaker/Resources/English.lproj/Welcome.rtf
  16. +10 −0 Source/Build/Packagemaker/plists/DocSet_desc.plist
  17. +44 −0 Source/Build/Packagemaker/plists/DocSet_info.plist
  18. +10 −0 Source/Build/Packagemaker/plists/Documentation_desc.plist
  19. +44 −0 Source/Build/Packagemaker/plists/Documentation_info.plist
  20. +10 −0 Source/Build/Packagemaker/plists/Framework_desc.plist
  21. +44 −0 Source/Build/Packagemaker/plists/Framework_info.plist
  22. +18 −0 Source/Build/Packagemaker/plists/RegexKit_mpkg_info.plist
  23. +10 −0 Source/Build/Packagemaker/plists/Sourcecode_desc.plist
  24. +44 −0 Source/Build/Packagemaker/plists/Sourcecode_info.plist
  25. +10 −0 Source/Build/Packagemaker/plists/pcre_desc.plist
  26. +44 −0 Source/Build/Packagemaker/plists/pcre_info.plist
  27. +29 −0 Source/Build/SQL/files.sql
  28. +283 −144 Source/Build/Scripts/buildDistribution.sh
  29. +17 −10 Source/Build/Scripts/buildPCRE.sh
  30. +6 −2 Source/Build/Scripts/fileCheck.pl
  31. +190 −0 Source/Build/Scripts/packageDist.pl
  32. +21 −0 Source/Build/Scripts/plistUtil.pl
  33. +7 −8 Source/Build/Scripts/stripHeaderdoc.sh
  34. +92 −42 Source/Build/Xcode/RegexKit Build Settings.xcconfig
  35. +132 −2 Source/Documentation/Misc/spelling_words
  36. +1 −1  Source/Documentation/Resources/CSS/content.css
  37. +2 −2 Source/Documentation/Resources/CSS/doc.css
  38. +1 −0  Source/Documentation/Resources/CSS/print.css
  39. +8 −0 Source/Documentation/SQL/config.sql
  40. +58 −0 Source/Documentation/SQL/docset.sql
  41. +71 −8 Source/Documentation/SQL/init.sql
  42. +111 −0 Source/Documentation/Scripts/buildDocSet.sh
  43. +17 −20 Source/Documentation/Scripts/buildDocumentation.sh
  44. +29 −29 Source/Documentation/Scripts/checkHTML.sh
  45. +8 −8 Source/Documentation/Scripts/checkSpelling.sh
  46. +690 −0 Source/Documentation/Scripts/createDocSet.pl
  47. +17 −3 Source/Documentation/Scripts/generateHTML.pl
  48. +1 −1  Source/Documentation/Scripts/generatePCREToC.pl
  49. +2 −0  Source/Documentation/Scripts/parseHeaders.pl
  50. +1 −1  Source/Documentation/Static/RegexKitImplementationTopics.html
  51. +50 −7 Source/Documentation/Static/RegexKitProgrammingGuide.html
  52. +1 −1  Source/Documentation/Static/index.html
  53. +1 −1  Source/Documentation/Templates/Constants.tmpl
  54. +1 −1  Source/Documentation/Templates/DataTypes.tmpl
  55. +1 −1  Source/Documentation/Templates/Functions.tmpl
  56. +3 −3 Source/Documentation/Templates/NSArray.tmpl
  57. +3 −3 Source/Documentation/Templates/NSDictionary.tmpl
  58. +3 −3 Source/Documentation/Templates/NSMutableArray.tmpl
  59. +4 −3 Source/Documentation/Templates/NSMutableDictionary.tmpl
  60. +3 −3 Source/Documentation/Templates/NSMutableSet.tmpl
  61. +3 −3 Source/Documentation/Templates/NSMutableString.tmpl
  62. +3 −3 Source/Documentation/Templates/NSObject.tmpl
  63. +3 −3 Source/Documentation/Templates/NSSet.tmpl
  64. +3 −3 Source/Documentation/Templates/NSString.tmpl
  65. +2 −2 Source/Documentation/Templates/RKCache.tmpl
  66. +2 −2 Source/Documentation/Templates/RKEnumerator.tmpl
  67. +2 −2 Source/Documentation/Templates/RKRegex.tmpl
  68. +2 −1  Source/Documentation/Templates/content.tmpl
  69. +5 −5 Source/Documentation/Templates/toc.tmpl
  70. +5 −5 Source/Headers/RegexKit/NSArray.h
  71. +1 −1  Source/Headers/RegexKit/NSSet.h
  72. +26 −26 Source/Headers/RegexKit/NSString.h
  73. +3 −3 Source/Headers/RegexKit/RKAutoreleasedMemory.h
  74. +20 −16 Source/Headers/RegexKit/RKCache.h
  75. +3 −3 Source/Headers/RegexKit/RKCoder.h
  76. +8 −9 Source/Headers/RegexKit/RKEnumerator.h
  77. +14 −14 Source/Headers/RegexKit/RKLock.h
  78. +26 −26 Source/Headers/RegexKit/RKRegex.h
  79. +106 −9 Source/Headers/RegexKit/RegexKitDefines.h
  80. +98 −59 Source/Headers/RegexKit/RegexKitPrivate.h
  81. +2 −2 Source/Info.plist
  82. +51 −38 Source/NSArray.m
  83. +32 −19 Source/NSDictionary.m
  84. +29 −26 Source/NSSet.m
  85. +343 −286 Source/NSString.m
  86. +7 −4 Source/RKAutoreleasedMemory.m
  87. +163 −58 Source/RKCache.m
  88. +12 −12 Source/RKCoder.m
  89. +29 −25 Source/RKEnumerator.m
  90. +50 −28 Source/RKLock.m
  91. +4 −3 Source/RKPlaceholder.m
  92. +7 −7 Source/RKPrivate.m
  93. +228 −157 Source/RKRegex.m
  94. +10 −10 Source/RKUtility.m
  95. +1 −1  Source/unitTests/collectionAdditions.h
  96. +11 −4 Source/unitTests/collectionAdditions.m
  97. +34 −6 Source/unitTests/core.m
  98. +39 −20 Source/unitTests/debug.sh
  99. +7 −0 Source/unitTests/enumeration.m
  100. +1 −1  Source/unitTests/functionality.h
  101. +7 −3 Source/unitTests/functionality.m
  102. +1 −1  Source/unitTests/multithreading.h
  103. +59 −15 Source/unitTests/multithreading.m
  104. +21 −14 Source/unitTests/stringConversion.m
  105. +1 −1  Source/unitTests/timing.h
  106. +94 −51 Source/unitTests/timing.m
View
204 ChangeLog
@@ -1,3 +1,207 @@
+Changes from 0.2.0 Beta to 0.3.0 Beta
+-------------------------------------
+
+o Xcode 3.0 DocSet Documentation
+ ------------------------------
+
+The DocSet documentation is essentially the HTML documentation with a few
+minor tweaks. It is created by the scripts:
+
+Documentation/Scripts/buildDocSet.sh
+Documentation/Scripts/createDocSet.pl
+
+createDocSet.pl is pretty horrific, and was kludged together very quickly.
+It creates the required 'Nodes.xml' and 'Tokens.xml' by extracting the
+information from the documentation database and rewrites the anchors in
+the html files to use the '//apple_ref/' style format. This is not used
+in the normal HTML documentation because it isn't valid HTML (tidy throws
+a fit and there's hundreds of warnings generated.) However, the docset
+tool chain appears to be much happier with apple_ref style anchors, so the
+legal html name anchors are rewritten.
+
+Once all these pieces are in placed, and a Info.plist is created, the
+'docsetutil' command is run to build the DocSet index and that's pretty
+much it.
+
+o Garbage Collection
+ ------------------
+
+Mac OS X 10.5 Garbage Collection is controlled by the C Preprocessor flag
+ENABLE_MACOSX_GARBAGE_COLLECTION. A number of macros were created to ease
+various portability issues. Of special note is the framework global
+variable 'RKRegexGarbageCollect'. If ENABLE_MACOSX_GARBAGE_COLLECTION is
+defined, then RKRegexGarbageCollect is a int32_t defined in RKRegex.m.
+If ENABLE_MACOSX_GARBAGE_COLLECTION is not defined, then RKRegexGarbageCollect
+is #defined in RegexKitPrivate.h as '0'. Also in RegexKitPrivate.h are a
+number of macros for managing various Retain/Release/Autorelease.
+
+If ENABLE_MACOSX_GARBAGE_COLLECTION is defined, then RKRegex.m, RKCache.m, and
+NSString.m will all check and see if the class 'NSGarbageCollector' exists,
+and if so, check to see if garbage collection is enabled in their +load
+methods.
+
+If ENABLE_MACOSX_GARBAGE_COLLECTION is not defined, then most of the macros
+become a compile time static conditional which the compiler will optimize away,
+so compiling on pre-10.5 or GNUstep is branchless. It was the best I could
+come up with for maximum portability while still maintaining readability.
+
+In RKCache, if ENABLE_MACOSX_GARBAGE_COLLECTION is defined, AND if GC is
+enabled at load time, then the class switches to using the new NSMapTable
+class for managing the cache. It places cached RKRegex objects in a NSMapTable
+with a weak reference to the object. This should allow for auto trimming
+of the cache to the working set. Not sure how it will work out in real life.
+
+o 64 bit support
+ --------------
+
+A set of macros was adopted to ease multi-platform 64 bit issues. They are
+essentially parallel to the Leopard NSInteger / NSUInteger types, except that
+they are cpp macros. They have the names RKInteger and RKUInteger / etc.
+They are re-written to either NSInteger or int depending on the detected
+run time environment. This allows for type checking / compatibility to be
+maintained for each environment. GNUstep still has things such as 'hash'
+defined as 'unsigned int', and for some of our objects we return the pointer
+to the instantiated object as the hash (there can be only one) and this
+causes truncation on GNUstep, but it should be OK.
+
+o GNUstep
+ -------
+
+Cleaned up various GNUstep pieces here and there while putting the 64 bit
+stuff in. Should build much cleaner now, with only a handful of warnings
+when compiling on a 64 bit platform for various hash functions, but this
+shouldn't be a problem in the real world.
+
+
+o RegexKit.framework Info.plist version bug fix
+ ---------------------------------------------
+
+The Info.plist in RegexKit 0.2.0 had a bug in the Info.plist file.
+The settings for the keys CFBundleShortVersionString and CFBundleVersion
+where set to the variable ${REGEXKIT_CURRENT_VERSION} when they should
+have been set to ${PROJECT_CURRENT_VERSION}. Since the variable
+${REGEXKIT_CURRENT_VERSION} was undefined, this ended up expanding to
+nothing, so the correct version number is missing. This should be a
+fairly trivial bug in the grand scheme of things.
+
+o Mac OS X Installer .dmg distribution
+ ------------------------------------
+
+RegexKit 0.3.0 marks the introduction of a Mac OS X Installer based
+distribution. It bundles together the Mac OS X Binary executable
+RegexKit.framework, the Documentation, and the source code in to one
+convenient package. Each is grouped in to their own package, and by
+default RegexKit.framework and Documentation are selected to install while
+the source code package is not. There's some javascript code to disable
+a package if the version that is already installed is newer than the version
+that is attempting to install. Also, there's some logic so that the source
+code package will automatically default to selected if it detects that
+a previous install of the source code has been performed, thus auto upgrading
+without having to think about it.
+
+The Installer has a volume check script that requires 10.4 or later in order
+to install on a volume, and an installation check that checks to see if the
+file '/Developer/Applications/Xcode.app' exists. If it does not, it presents
+a warning that the Xcode Development Tools should be installed, but does not
+stop the installation.
+
+There's three main tuneables in the build configs:
+
+ DISTRIBUTION_GZIP_PACKAGES YES | NO (NO = Default)
+ DISTRIBUTION_INCLUDE_PCRE_PACKAGE YES | NO (NO = Default)
+ DISTRIBUTION_DEFAULT_INSTALL_DIR /Developer/Local/RegexKit/
+
+Since the overall distribution package gets placed on to a .dmg disk image,
+which is then BZip2 compressed (-format UDBZ), compressing the packages with
+gzip actually causes the final .dmg size to grow by about ~60-70K, or roughly
+10% in size. So, by default, we leave the packages uncompressed and let
+the disk image bzip2 deal with all the compression.
+
+The other option, DISTRIBUTION_INCLUDE_PCRE_PACKAGE, toggles whether or not
+the PCRE tarball used to build the framework is included in the Installer
+distribution. By default the choice is NO since this causes the final .dmg
+disk image to nearly double in size. There's some extra javascript logic so
+that the PCRE distribution is if and only if the source code package is
+selected to be installed. If the user selects the source code package,
+the PCRE package then auto selects itself to be installed as well. The
+PCRE package version is the PCRE Major.Minor, not the RegexKit version.
+Unlike the others it will allow an earlier version to be installed 'on
+top off' a newer version since this is largely harmless- Each PCRE
+tarball distribution is separate from the others.
+
+The file that creates the top level distribution package 'distribution.dist'
+file is in 'Source/Build/Scripts/packageDist.pl'. It handles the logic
+of selectively inserting the PCRE choice depending on whether or not
+DISTRIBUTION_INCLUDE_PCRE_PACKAGE is set to YES. It also gathers some
+necessary information, such as a packages installed size, by using perls
+objective-c / foundation bridge to read the individual packages Info.plist
+files and extracting the appropriate keys.
+
+For each package (of which there are four, RegexKit.framework binary package,
+Documentation package, Source code package, and optionally the PCRE
+distribution package) there exists two .plist files, one info.plist and one
+desc.plist. The important one is the info.plist, and it contains the
+bundle identification and version information. The version information is
+replaced dynamically at build time by the
+'Source/Build/Scripts/buildDistribution.sh' script. That script makes a
+copy of the plists to a private build staging area. Then, it calls the
+script 'Source/Build/Scripts/plistUtil.pl' which is a very simply perl script
+that again used the objective-c / foundation bridge to take three arguments:
+the plist file to operate on, the key to update, and the value to set the
+key to. buildDistribution.sh uses this to update all the plists to the
+current RegexKit version as required by the package plist format. An
+additional .plist file, RegexKit_mpkg.plist, is largely for cosmetic purposes.
+It gets the version updated as well, but its sole purpose is to provide a
+version string to the finder when a 'Get Info' is performed and that's it.
+
+The text that's displayed during the installation process comes from four
+files, though only two are currently used. These are located in
+'Source/Build/Packagemaker/Resources/...', which is a localized .lproj style
+directory for localization purposes. Currently only English.lproj is present.
+The files are currently simple .rtf files, but .rtfd and .html are supported
+as well. Any changes to the file types would have to be updated in the
+packageDist.pl file (it should be obvious where). Only 'ReadMe.rtf' and
+'License.rtf' are currently used, but both 'Welcome.rtf' and 'Conclusion.rtf'
+can be activated trivially by editing packageDist.pl. They get copied in
+to the distribution package right now, but the necessary lines in
+'distribution.dist' that is created by packageDist.pl are missing.
+
+The tuneable DISTRIBUTION_DEFAULT_INSTALL_DIR is self-explanatory.
+
+o Minor bug fixes
+ ---------------
+
+There were a handful of very minor, single line changes to fix some trivial
+bugs. These mostly had to do with inter-version differences between tools
+(ie, sqlite 3.1.3 -> later versions tweaks, minor accommodations to make
+building from the installer distribution run clean)
+
+o Build system tweaks
+ -------------------
+
+Replaced the 'debug: ' portion of various script status lines with 'note: '
+instead. This is mostly cosmetic. In the Makefile.pcre, added the makefile
+file name and line number of the message so clicking on it will take you
+right to that line. Updated most status messages to always output the
+filename and line number with the status indicator.
+
+The PCRE build target is largely driven by Makefiles. The scripts that invoke
+`make` were modified to set the -j argument, or the number of jobs to run
+in parallel, and the -l argument, or the load average where no new jobs can
+be started. The values for these parameters are derived from the sysctl
+variable 'hw.activecpu'. The -j parameter is set to the number of active
+CPU's, and the max load is set to the number of active CPU's + 2. This should
+allow those of you with multiple CPU's to build the PCRE target faster.
+However, sometimes building in parallel causes certain make dependency issues
+to crop up that don't happen when running sequentially.
+
+This can be disabled with the tuneable PCRE_PARALLEL_BUILD = NO.
+
+The Distribution target was also partially parallel build enabled as well.
+
+
+-----------------------------------------------------------------------------
+
Changes from Alpha test distribution
------------------------------------
View
24 GNUstep/GNUmakefile
@@ -3,14 +3,22 @@
include $(GNUSTEP_MAKEFILES)/common.make
# Assumes that the CWD is GNUstep
-REGEXKIT_ROOT_DIR = $(abspath ..)
+REGEXKIT_ROOT_DIR = $(abspath ..)
-GNUSTEP_BUILD_DIR = ${REGEXKIT_ROOT_DIR}/GNUstep
-REGEXKIT_SOURCE_DIR = ${REGEXKIT_ROOT_DIR}/Source
-REGEXKIT_HEADERS_DIR = ${REGEXKIT_SOURCE_DIR}/Headers
+GNUSTEP_BUILD_DIR = ${REGEXKIT_ROOT_DIR}/GNUstep
+REGEXKIT_SOURCE_DIR = ${REGEXKIT_ROOT_DIR}/Source
+REGEXKIT_HEADERS_DIR = ${REGEXKIT_SOURCE_DIR}/Headers
-PCRE_LIBS=$(shell pcre-config --libs)
-PCRE_CFLAGS=$(shell pcre-config --cflags)
+PCRE_LIBS = $(shell pcre-config --libs)
+PCRE_CFLAGS = $(shell pcre-config --cflags)
+PCRE_HEADER = $(shell perl -e '$$x = "${PCRE_CFLAGS}"; $$x =~ /\-I(.*?\/include\b)/; print("$$1/pcre.h");')
+
+ORIGINAL_RK_PCRE_HEADER = $(shell diff -q '${REGEXKIT_HEADERS_DIR}/RegexKit/pcre.h' '${REGEXKIT_SOURCE_DIR}/Build/Distribution/distribution_pcre.h')
+
+ifeq (${ORIGINAL_RK_PCRE_HEADER},)
+$(info Copying the installed PCRE's '${PCRE_HEADER}' to RegexKit's Headers directory at '${REGEXKIT_HEADERS_DIR}/RegexKit/pcre.h')
+$(shell cp '${PCRE_HEADER}' '${REGEXKIT_HEADERS_DIR}/RegexKit/pcre.h')
+endif
vpath %.m ${REGEXKIT_SOURCE_DIR}
vpath %.h ${REGEXKIT_HEADERS_DIR}/RegexKit
@@ -29,10 +37,6 @@ libRegexKit_HEADER_FILES_INSTALL_DIR = /RegexKit
# Include the PCRE library
libRegexKit_LIBRARIES_DEPEND_UPON += $(FND_LIBS) ${PCRE_LIBS}
-#${REGEXKIT_HEADERS_DIR}/pcre.h:
-# cp -p /usr/local/include/pcre.h '${REGEXKIT_HEADERS_DIR}/${PACKAGE_NAME}/pcre.h'
-
-
include $(GNUSTEP_MAKEFILES)/library.make
include $(GNUSTEP_MAKEFILES)/aggregate.make
View
10 LICENSE
@@ -1,11 +1,11 @@
Important Information
---------------------
-RegexKit uses the PCRE library, copyright and written by Philip Hazel, as
-its regular expression pattern matching engine. Therefore, RegexKit
-requires and incorporates the PCRE library in to the framework executable.
-Because of this, you should be aware of the PCRE library licensing
-requirements.
+RegexKit uses the PCRE library, written by Philip Hazel and
+Copyright © 1997-2007 University of Cambridge, as its regular expression
+pattern matching engine. Therefore, RegexKit requires and incorporates the
+PCRE library in to the framework executable. Because of this, you should be
+aware of the PCRE library licensing requirements.
Website: http://www.pcre.org/
License: http://www.pcre.org/license.txt
View
3  README
@@ -1,2 +1 @@
-GNUstep support was not tested for this release so there may be some
-lingering issues.
+See the ChangeLog and ReleaseNotes files.
View
254 RegexKit.xcodeproj/project.pbxproj
@@ -7,6 +7,18 @@
objects = {
/* Begin PBXAggregateTarget section */
+ 120291B30CD1CC610045B036 /* DocSet */ = {
+ isa = PBXAggregateTarget;
+ buildConfigurationList = 120291B70CD1CC610045B036 /* Build configuration list for PBXAggregateTarget "DocSet" */;
+ buildPhases = (
+ 120291B60CD1CC610045B036 /* buildDocSet.sh */,
+ );
+ dependencies = (
+ 120291BD0CD1CD4C0045B036 /* PBXTargetDependency */,
+ );
+ name = DocSet;
+ productName = "Build Documentation";
+ };
1264D5A00C7A59E10044B285 /* Documentation */ = {
isa = PBXAggregateTarget;
buildConfigurationList = 1264D5C10C7A59F50044B285 /* Build configuration list for PBXAggregateTarget "Documentation" */;
@@ -28,6 +40,7 @@
dependencies = (
1264D6F40C7A7A350044B285 /* PBXTargetDependency */,
1264D94C0C7AC3B00044B285 /* PBXTargetDependency */,
+ 1261B78E0CD27CE100F2E972 /* PBXTargetDependency */,
);
name = Distribution;
productName = Distribution;
@@ -46,13 +59,13 @@
/* End PBXAggregateTarget section */
/* Begin PBXBuildFile section */
+ 122401EC0CCD5D89006F56F9 /* timing.m in Sources */ = {isa = PBXBuildFile; fileRef = 1264D5700C7A50100044B285 /* timing.m */; };
+ 122401ED0CCD5E15006F56F9 /* multithreading.m in Sources */ = {isa = PBXBuildFile; fileRef = 1264D56C0C7A50100044B285 /* multithreading.m */; };
1264D7880C7A95F80044B285 /* NSDate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1264D5640C7A50100044B285 /* NSDate.m */; };
1264D7890C7A95F80044B285 /* core.m in Sources */ = {isa = PBXBuildFile; fileRef = 1264D5660C7A50100044B285 /* core.m */; };
1264D83B0C7A9D7D0044B285 /* collectionAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 1264D5680C7A50100044B285 /* collectionAdditions.m */; };
1264D8560C7A9DF90044B285 /* stringConversion.m in Sources */ = {isa = PBXBuildFile; fileRef = 1264D56E0C7A50100044B285 /* stringConversion.m */; };
1264D8580C7A9E0F0044B285 /* functionality.m in Sources */ = {isa = PBXBuildFile; fileRef = 1264D56A0C7A50100044B285 /* functionality.m */; };
- 1264D85A0C7A9E1B0044B285 /* multithreading.m in Sources */ = {isa = PBXBuildFile; fileRef = 1264D56C0C7A50100044B285 /* multithreading.m */; };
- 1264D85C0C7A9E300044B285 /* timing.m in Sources */ = {isa = PBXBuildFile; fileRef = 1264D5700C7A50100044B285 /* timing.m */; };
1264D97B0C7AC50E0044B285 /* Unit Tests-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 1264D5710C7A50100044B285 /* Unit Tests-Info.plist */; };
1299AEAB0C78AE4A007F3859 /* pcre.h in Headers */ = {isa = PBXBuildFile; fileRef = 1299AEAA0C78AE4A007F3859 /* pcre.h */; settings = {ATTRIBUTES = (Public, ); }; };
12D581810C80B75500674FA2 /* enumeration.m in Sources */ = {isa = PBXBuildFile; fileRef = 12D581800C80B75500674FA2 /* enumeration.m */; };
@@ -87,12 +100,25 @@
12DB1A260C787E3D00735165 /* RKRegex.m in Sources */ = {isa = PBXBuildFile; fileRef = 12DB1A180C787E3D00735165 /* RKRegex.m */; };
12DB1A270C787E3D00735165 /* RKUtility.m in Sources */ = {isa = PBXBuildFile; fileRef = 12DB1A190C787E3D00735165 /* RKUtility.m */; };
12DB1A9C0C788DBB00735165 /* RegexKitDefines.h in Headers */ = {isa = PBXBuildFile; fileRef = 12DB1A9B0C788DBB00735165 /* RegexKitDefines.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 12F6B3FE0CA69B2F0094EDB5 /* checkSpelling.sh in Resources */ = {isa = PBXBuildFile; fileRef = 12F6B3FD0CA69B2F0094EDB5 /* checkSpelling.sh */; };
8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C1666FE841158C02AAC07 /* InfoPlist.strings */; };
8DC2EF570486A6940098B216 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
+ 120291BC0CD1CD4C0045B036 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 1264D5A00C7A59E10044B285;
+ remoteInfo = Documentation;
+ };
+ 1261B78D0CD27CE100F2E972 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 120291B30CD1CC610045B036;
+ remoteInfo = DocSet;
+ };
1264D5C80C7A5A720044B285 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
@@ -135,9 +161,15 @@
0867D6A5FE840307C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
089C1667FE841158C02AAC07 /* InfoPlist.strings */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = InfoPlist.strings; path = Source/Resources/English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
- 12222BC60CBB7F98001F0231 /* fileCheck.pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.perl; name = fileCheck.pl; path = Source/Build/Scripts/fileCheck.pl; sourceTree = "<group>"; };
- 12222BCC0CBB8077001F0231 /* files.sql */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = files.sql; path = Source/Build/SQL/files.sql; sourceTree = "<group>"; };
- 124BF9DE0CAACEFC00D04C96 /* buildPCRE.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = buildPCRE.sh; path = Source/Build/Scripts/buildPCRE.sh; sourceTree = "<group>"; };
+ 120291BE0CD1CDAD0045B036 /* buildDocSet.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = buildDocSet.sh; path = Source/Documentation/Scripts/buildDocSet.sh; sourceTree = "<group>"; };
+ 12222BC60CBB7F98001F0231 /* fileCheck.pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.perl; path = fileCheck.pl; sourceTree = "<group>"; };
+ 12222BCC0CBB8077001F0231 /* files.sql */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = files.sql; sourceTree = "<group>"; };
+ 122400F10CCD4587006F56F9 /* SenTestingKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SenTestingKit.framework; path = /System/Library/Frameworks/SenTestingKit.framework; sourceTree = "<absolute>"; };
+ 124BF9DE0CAACEFC00D04C96 /* buildPCRE.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = buildPCRE.sh; sourceTree = "<group>"; };
+ 1261B6F20CD24E6900F2E972 /* createDocSet.pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.perl; name = createDocSet.pl; path = Source/Documentation/Scripts/createDocSet.pl; sourceTree = "<group>"; };
+ 1261B7870CD27AF400F2E972 /* DocSet_desc.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = DocSet_desc.plist; sourceTree = "<group>"; };
+ 1261B7880CD27AF400F2E972 /* DocSet_info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = DocSet_info.plist; sourceTree = "<group>"; };
+ 1261B80D0CD28A7C00F2E972 /* docset.sql */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = docset.sql; path = Source/Documentation/SQL/docset.sql; sourceTree = "<group>"; };
1264D5050C7A4DCC0044B285 /* config.sql */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = config.sql; path = Source/Documentation/SQL/config.sql; sourceTree = "<group>"; };
1264D5060C7A4DCC0044B285 /* init.sql */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = init.sql; path = Source/Documentation/SQL/init.sql; sourceTree = "<group>"; };
1264D5070C7A4DDE0044B285 /* buildDocumentation.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = buildDocumentation.sh; path = Source/Documentation/Scripts/buildDocumentation.sh; sourceTree = "<group>"; };
@@ -164,9 +196,9 @@
1264D5230C7A4E4E0044B285 /* triangle_open.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = triangle_open.png; path = Source/Documentation/Resources/Images/triangle_open.png; sourceTree = "<group>"; };
1264D5280C7A4E750044B285 /* common.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = common.js; path = Source/Documentation/Resources/JavaScript/common.js; sourceTree = "<group>"; };
1264D5290C7A4E750044B285 /* toc.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = toc.js; path = Source/Documentation/Resources/JavaScript/toc.js; sourceTree = "<group>"; };
- 1264D54F0C7A4F5B0044B285 /* buildDistribution.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = buildDistribution.sh; path = Source/Build/Scripts/buildDistribution.sh; sourceTree = "<group>"; };
- 1264D5530C7A4F5B0044B285 /* stripHeaderdoc.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = stripHeaderdoc.sh; path = Source/Build/Scripts/stripHeaderdoc.sh; sourceTree = "<group>"; };
- 1264D5560C7A4F8A0044B285 /* projectExportedSymbols */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = projectExportedSymbols; path = Source/Build/Xcode/projectExportedSymbols; sourceTree = "<group>"; };
+ 1264D54F0C7A4F5B0044B285 /* buildDistribution.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = buildDistribution.sh; sourceTree = "<group>"; };
+ 1264D5530C7A4F5B0044B285 /* stripHeaderdoc.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = stripHeaderdoc.sh; sourceTree = "<group>"; };
+ 1264D5560C7A4F8A0044B285 /* projectExportedSymbols */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = projectExportedSymbols; sourceTree = "<group>"; };
1264D5620C7A50100044B285 /* debug.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = debug.sh; path = Source/unitTests/debug.sh; sourceTree = "<group>"; };
1264D5630C7A50100044B285 /* NSDate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NSDate.h; path = Source/unitTests/NSDate.h; sourceTree = "<group>"; };
1264D5640C7A50100044B285 /* NSDate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NSDate.m; path = Source/unitTests/NSDate.m; sourceTree = "<group>"; };
@@ -187,7 +219,8 @@
1264D68D0C7A67960044B285 /* index.html */ = {isa = PBXFileReference; explicitFileType = text.html; fileEncoding = 4; name = index.html; path = Source/Documentation/Static/index.html; sourceTree = "<group>"; };
1264D77F0C7A95B60044B285 /* Unit Tests.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Unit Tests.octest"; sourceTree = BUILT_PRODUCTS_DIR; };
1264DC100C7B3BFA0044B285 /* RegexKitImplementationTopics.html */ = {isa = PBXFileReference; explicitFileType = text.html; fileEncoding = 4; name = RegexKitImplementationTopics.html; path = Source/Documentation/Static/RegexKitImplementationTopics.html; sourceTree = "<group>"; };
- 1299AE850C78AC97007F3859 /* Makefile.pcre */ = {isa = PBXFileReference; explicitFileType = sourcecode.make; fileEncoding = 4; name = Makefile.pcre; path = Source/Build/Makefiles/Makefile.pcre; sourceTree = "<group>"; };
+ 127B94390CC6EF92003E7257 /* Makefile.dist */ = {isa = PBXFileReference; explicitFileType = sourcecode.make; fileEncoding = 4; path = Makefile.dist; sourceTree = "<group>"; };
+ 1299AE850C78AC97007F3859 /* Makefile.pcre */ = {isa = PBXFileReference; explicitFileType = sourcecode.make; fileEncoding = 4; path = Makefile.pcre; sourceTree = "<group>"; };
1299AEAA0C78AE4A007F3859 /* pcre.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = pcre.h; path = Source/Headers/RegexKit/pcre.h; sourceTree = "<group>"; };
1299AFAA0C78C14F007F3859 /* Constants.tmpl */ = {isa = PBXFileReference; explicitFileType = text.html; fileEncoding = 4; name = Constants.tmpl; path = Source/Documentation/Templates/Constants.tmpl; sourceTree = "<group>"; };
1299AFAB0C78C14F007F3859 /* content.tmpl */ = {isa = PBXFileReference; explicitFileType = text.html; fileEncoding = 4; name = content.tmpl; path = Source/Documentation/Templates/content.tmpl; sourceTree = "<group>"; };
@@ -206,9 +239,11 @@
1299AFB80C78C14F007F3859 /* RKEnumerator.tmpl */ = {isa = PBXFileReference; explicitFileType = text.html; fileEncoding = 4; name = RKEnumerator.tmpl; path = Source/Documentation/Templates/RKEnumerator.tmpl; sourceTree = "<group>"; };
1299AFB90C78C14F007F3859 /* RKRegex.tmpl */ = {isa = PBXFileReference; explicitFileType = text.html; fileEncoding = 4; name = RKRegex.tmpl; path = Source/Documentation/Templates/RKRegex.tmpl; sourceTree = "<group>"; };
1299AFBA0C78C14F007F3859 /* toc.tmpl */ = {isa = PBXFileReference; explicitFileType = text.html; fileEncoding = 4; name = toc.tmpl; path = Source/Documentation/Templates/toc.tmpl; sourceTree = "<group>"; };
+ 12B8D2D40CC4BBBE00B47ECD /* pcre_desc.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = pcre_desc.plist; sourceTree = "<group>"; };
+ 12B8D2D50CC4BBBE00B47ECD /* pcre_info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = pcre_info.plist; sourceTree = "<group>"; };
12BA3EA20CB86EE300F82B79 /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = "<group>"; };
12BA3EBA0CB871C200F82B79 /* README.MacOSX */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README.MacOSX; sourceTree = "<group>"; };
- 12BD451E0CB5F1E100EBA014 /* distribution_pcre.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = distribution_pcre.h; path = Source/Build/Distribution/distribution_pcre.h; sourceTree = "<group>"; };
+ 12BD451E0CB5F1E100EBA014 /* distribution_pcre.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = distribution_pcre.h; sourceTree = "<group>"; };
12BD45740CB6AA9400EBA014 /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENSE; sourceTree = "<group>"; };
12BD48300CB6CD4B00EBA014 /* ChangeLog */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ChangeLog; sourceTree = "<group>"; };
12BD49A30CB75A6900EBA014 /* ReleaseNotes */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ReleaseNotes; sourceTree = "<group>"; };
@@ -245,13 +280,28 @@
12DB1A180C787E3D00735165 /* RKRegex.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKRegex.m; path = Source/RKRegex.m; sourceTree = "<group>"; };
12DB1A190C787E3D00735165 /* RKUtility.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKUtility.m; path = Source/RKUtility.m; sourceTree = "<group>"; };
12DB1A9B0C788DBB00735165 /* RegexKitDefines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RegexKitDefines.h; path = Source/Headers/RegexKit/RegexKitDefines.h; sourceTree = "<group>"; };
- 12EACB4A0CBC156C00175505 /* GNUmakefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = GNUmakefile; path = GNUstep/GNUmakefile; sourceTree = "<group>"; };
+ 12EACB4A0CBC156C00175505 /* GNUmakefile */ = {isa = PBXFileReference; explicitFileType = sourcecode.make; fileEncoding = 4; name = GNUmakefile; path = GNUstep/GNUmakefile; sourceTree = "<group>"; };
12EACB4B0CBC156C00175505 /* GNUmakefile.postamble */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = GNUmakefile.postamble; path = GNUstep/GNUmakefile.postamble; sourceTree = "<group>"; };
12EACB4C0CBC156C00175505 /* README.GNUstep */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = README.GNUstep; path = GNUstep/README.GNUstep; sourceTree = "<group>"; };
+ 12EB3C8B0CC1610100162FCC /* packageDist.pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.perl; path = packageDist.pl; sourceTree = "<group>"; };
+ 12EB3C8C0CC1610100162FCC /* plistUtil.pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.perl; path = plistUtil.pl; sourceTree = "<group>"; };
+ 12EB3D5A0CC1707000162FCC /* Documentation_desc.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Documentation_desc.plist; sourceTree = "<group>"; };
+ 12EB3D5B0CC1707000162FCC /* Documentation_info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Documentation_info.plist; sourceTree = "<group>"; };
+ 12EB3D5C0CC1707000162FCC /* Framework_desc.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Framework_desc.plist; sourceTree = "<group>"; };
+ 12EB3D5D0CC1707000162FCC /* Framework_info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Framework_info.plist; sourceTree = "<group>"; };
+ 12EB3D5E0CC1707000162FCC /* Sourcecode_desc.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Sourcecode_desc.plist; sourceTree = "<group>"; };
+ 12EB3D5F0CC1707000162FCC /* Sourcecode_info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Sourcecode_info.plist; sourceTree = "<group>"; };
+ 12EB3D620CC1707000162FCC /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/Conclusion.rtf; sourceTree = "<group>"; };
+ 12EB3D640CC1707000162FCC /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/License.rtf; sourceTree = "<group>"; };
+ 12EB3D660CC1707000162FCC /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/Welcome.rtf; sourceTree = "<group>"; };
+ 12EB3DAD0CC17AA500162FCC /* RegexKit_mpkg_info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = RegexKit_mpkg_info.plist; sourceTree = "<group>"; };
+ 12EB3DCD0CC17DC600162FCC /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/ReadMe.rtf; sourceTree = "<group>"; };
+ 12EB3DDA0CC17E2C00162FCC /* Documentation.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = Documentation.html; sourceTree = "<group>"; };
+ 12EB3DE00CC17F2B00162FCC /* Adding RegexKit to your Project.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "Adding RegexKit to your Project.html"; sourceTree = "<group>"; };
12F6B3FD0CA69B2F0094EDB5 /* checkSpelling.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = checkSpelling.sh; path = Source/Documentation/Scripts/checkSpelling.sh; sourceTree = "<group>"; };
12F6B43F0CA6A5CF0094EDB5 /* spelling_words */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = spelling_words; path = Source/Documentation/Misc/spelling_words; sourceTree = "<group>"; };
12F6B5300CA6B6680094EDB5 /* checkHTML.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = checkHTML.sh; path = Source/Documentation/Scripts/checkHTML.sh; sourceTree = "<group>"; };
- 12F901140CA99AAF00CEA3D0 /* RegexKit Build Settings.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = "RegexKit Build Settings.xcconfig"; path = "Source/Build/Xcode/RegexKit Build Settings.xcconfig"; sourceTree = "<group>"; };
+ 12F901140CA99AAF00CEA3D0 /* RegexKit Build Settings.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "RegexKit Build Settings.xcconfig"; sourceTree = "<group>"; };
32DBCF5E0370ADEE00C91783 /* RegexKit_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RegexKit_Prefix.pch; path = Source/RegexKit_Prefix.pch; sourceTree = "<group>"; };
8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; name = Info.plist; path = Source/Info.plist; sourceTree = "<group>"; };
8DC2EF5B0486A6940098B216 /* RegexKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RegexKit.framework; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -327,6 +377,7 @@
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
+ 122400F10CCD4587006F56F9 /* SenTestingKit.framework */,
1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */,
);
name = "Linked Frameworks";
@@ -370,9 +421,11 @@
1264D5010C7A4DA00044B285 /* Scripts */ = {
isa = PBXGroup;
children = (
+ 120291BE0CD1CDAD0045B036 /* buildDocSet.sh */,
1264D5070C7A4DDE0044B285 /* buildDocumentation.sh */,
12F6B5300CA6B6680094EDB5 /* checkHTML.sh */,
12F6B3FD0CA69B2F0094EDB5 /* checkSpelling.sh */,
+ 1261B6F20CD24E6900F2E972 /* createDocSet.pl */,
1264D5080C7A4DDE0044B285 /* generateHTML.pl */,
1264D5090C7A4DDE0044B285 /* generatePCREToC.pl */,
1264D50A0C7A4DDE0044B285 /* parseHeaders.pl */,
@@ -384,6 +437,7 @@
1264D5040C7A4DB00044B285 /* SQL */ = {
isa = PBXGroup;
children = (
+ 1261B80D0CD28A7C00F2E972 /* docset.sql */,
1264D5050C7A4DCC0044B285 /* config.sql */,
1264D5060C7A4DCC0044B285 /* init.sql */,
);
@@ -443,9 +497,12 @@
1264D5380C7A4EF80044B285 /* Distribution */ = {
isa = PBXGroup;
children = (
+ 12EB3DE00CC17F2B00162FCC /* Adding RegexKit to your Project.html */,
12BD451E0CB5F1E100EBA014 /* distribution_pcre.h */,
+ 12EB3DDA0CC17E2C00162FCC /* Documentation.html */,
);
name = Distribution;
+ path = Source/Build/Distribution;
sourceTree = "<group>";
};
1264D53B0C7A4F050044B285 /* SQL */ = {
@@ -454,6 +511,7 @@
12222BCC0CBB8077001F0231 /* files.sql */,
);
name = SQL;
+ path = Source/Build/SQL;
sourceTree = "<group>";
};
1264D54B0C7A4F130044B285 /* Scripts */ = {
@@ -462,9 +520,12 @@
1264D54F0C7A4F5B0044B285 /* buildDistribution.sh */,
124BF9DE0CAACEFC00D04C96 /* buildPCRE.sh */,
12222BC60CBB7F98001F0231 /* fileCheck.pl */,
+ 12EB3C8B0CC1610100162FCC /* packageDist.pl */,
+ 12EB3C8C0CC1610100162FCC /* plistUtil.pl */,
1264D5530C7A4F5B0044B285 /* stripHeaderdoc.sh */,
);
name = Scripts;
+ path = Source/Build/Scripts;
sourceTree = "<group>";
};
1264D54C0C7A4F1B0044B285 /* Xcode */ = {
@@ -474,6 +535,7 @@
12F901140CA99AAF00CEA3D0 /* RegexKit Build Settings.xcconfig */,
);
name = Xcode;
+ path = Source/Build/Xcode;
sourceTree = "<group>";
};
1264D5610C7A4FDE0044B285 /* Unit Tests */ = {
@@ -532,6 +594,7 @@
children = (
1264D5380C7A4EF80044B285 /* Distribution */,
1299AE840C78AC7A007F3859 /* Makefiles */,
+ 12EB3D300CC16F3B00162FCC /* Packagemaker */,
1264D54B0C7A4F130044B285 /* Scripts */,
1264D53B0C7A4F050044B285 /* SQL */,
1264D54C0C7A4F1B0044B285 /* Xcode */,
@@ -542,9 +605,11 @@
1299AE840C78AC7A007F3859 /* Makefiles */ = {
isa = PBXGroup;
children = (
+ 127B94390CC6EF92003E7257 /* Makefile.dist */,
1299AE850C78AC97007F3859 /* Makefile.pcre */,
);
name = Makefiles;
+ path = Source/Build/Makefiles;
sourceTree = "<group>";
};
1299AFA80C78C118007F3859 /* Documentation */ = {
@@ -588,8 +653,8 @@
isa = PBXGroup;
children = (
089C1665FE841158C02AAC07 /* Resources */,
- 124BFAD60CAAEBF800D04C96 /* Foundation Extensions */,
12DB19EB0C787DF400735165 /* Headers */,
+ 124BFAD60CAAEBF800D04C96 /* Foundation Extensions */,
12DB1A110C787E3D00735165 /* RKAutoreleasedMemory.m */,
12DB1A120C787E3D00735165 /* RKCache.m */,
12DB1A130C787E3D00735165 /* RKCoder.m */,
@@ -649,6 +714,45 @@
name = GNUstep;
sourceTree = "<group>";
};
+ 12EB3D300CC16F3B00162FCC /* Packagemaker */ = {
+ isa = PBXGroup;
+ children = (
+ 12EB3D590CC1707000162FCC /* plists */,
+ 12EB3D600CC1707000162FCC /* Resources */,
+ );
+ name = Packagemaker;
+ path = Source/Build/Packagemaker;
+ sourceTree = "<group>";
+ };
+ 12EB3D590CC1707000162FCC /* plists */ = {
+ isa = PBXGroup;
+ children = (
+ 1261B7870CD27AF400F2E972 /* DocSet_desc.plist */,
+ 1261B7880CD27AF400F2E972 /* DocSet_info.plist */,
+ 12EB3D5A0CC1707000162FCC /* Documentation_desc.plist */,
+ 12EB3D5B0CC1707000162FCC /* Documentation_info.plist */,
+ 12EB3D5C0CC1707000162FCC /* Framework_desc.plist */,
+ 12EB3D5D0CC1707000162FCC /* Framework_info.plist */,
+ 12EB3DAD0CC17AA500162FCC /* RegexKit_mpkg_info.plist */,
+ 12EB3D5E0CC1707000162FCC /* Sourcecode_desc.plist */,
+ 12EB3D5F0CC1707000162FCC /* Sourcecode_info.plist */,
+ 12B8D2D40CC4BBBE00B47ECD /* pcre_desc.plist */,
+ 12B8D2D50CC4BBBE00B47ECD /* pcre_info.plist */,
+ );
+ path = plists;
+ sourceTree = "<group>";
+ };
+ 12EB3D600CC1707000162FCC /* Resources */ = {
+ isa = PBXGroup;
+ children = (
+ 12EB3D610CC1707000162FCC /* Conclusion.rtf */,
+ 12EB3D630CC1707000162FCC /* License.rtf */,
+ 12EB3DCC0CC17DC600162FCC /* ReadMe.rtf */,
+ 12EB3D650CC1707000162FCC /* Welcome.rtf */,
+ );
+ path = Resources;
+ sourceTree = "<group>";
+ };
12F6B43C0CA6A5730094EDB5 /* Misc */ = {
isa = PBXGroup;
children = (
@@ -741,15 +845,21 @@
/* Begin PBXProject section */
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
+ attributes = {
+ BuildIndependentTargetsInParallel = NO;
+ };
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "RegexKit" */;
+ compatibilityVersion = "Xcode 2.4";
hasScannedForEncodings = 1;
mainGroup = 0867D691FE84028FC02AAC07 /* RegexKit */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
projectDirPath = "";
+ projectRoot = "";
targets = (
8DC2EF4F0486A6940098B216 /* RegexKit Framework */,
1299AE6A0C78AB9C007F3859 /* PCRE */,
1264D5A00C7A59E10044B285 /* Documentation */,
+ 120291B30CD1CC610045B036 /* DocSet */,
1264D6E40C7A79960044B285 /* Distribution */,
1264D77E0C7A95B60044B285 /* Unit Tests */,
);
@@ -762,7 +872,6 @@
buildActionMask = 2147483647;
files = (
1264D97B0C7AC50E0044B285 /* Unit Tests-Info.plist in Resources */,
- 12F6B3FE0CA69B2F0094EDB5 /* checkSpelling.sh in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -777,6 +886,20 @@
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
+ 120291B60CD1CC610045B036 /* buildDocSet.sh */ = {
+ isa = PBXShellScriptBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ inputPaths = (
+ );
+ name = buildDocSet.sh;
+ outputPaths = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ shellPath = /bin/sh;
+ shellScript = "#\n# The source to this script can be found at:\n# Right click on Targets > Documentation > buildDocSet.sh and choose Get Info\n#\n\nSHELL=${SHELL:?\"Environment variable SHELL must exist, aborting\"}\nBUILD_DOCUMENTATION_SCRIPT=${BUILD_DOCSET_SCRIPT:?\"Environment variable BUILD_DOCSET_SCRIPT must exist, aborting\"}\n\nif [ ! -x \"${BUILD_DOCSET_SCRIPT}\" ]; then\n if [ -r \"${BUILD_DOCSET_SCRIPT}\" ] && [ ! -x \"${BUILD_DOCSET_SCRIPT}\" ]; then\n echo \"$0:$LINENO: error: The command to build the DocSet, '${BUILD_DOCSET_SCRIPT}', exists but is not executable, aborting.\"\n echo \"$0:$LINENO: error: Suggestion: 'chmod u+x ${BUILD_DOCSET_SCRIPT}'\"\n exit 1\n fi\n echo \"$0:$LINENO: error: The command to build the DocSet, '${BUILD_DOCSET_SCRIPT}', does not exist, aborting.\";\n exit 1\nelse\n exec \"${SHELL}\" \"${BUILD_DOCSET_SCRIPT}\"\nfi\n";
+ };
1264D5950C7A58A20044B285 /* stripHeaderdoc.sh */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
@@ -789,7 +912,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "SHELL=${SHELL:?\"Environment variable SHELL must exist, aborting\"}\nSTRIP_HEADERDOC_SCRIPT=${STRIP_HEADERDOC_SCRIPT:?\"Environment variable STRIP_HEADERDOC_SCRIPT must exist, aborting\"}\n\nif [ ! -x ${STRIP_HEADERDOC_SCRIPT} ]; then\n echo \"$0:$LINENO: error: The command to strip headerdoc comments, '${STRIP_HEADERDOC_SCRIPT}', does not exist, aborting\"\n exit 1\nelse\n exec ${SHELL} ${STRIP_HEADERDOC_SCRIPT}\nfi\n";
+ shellScript = "#\n# The source to this script can be found at:\n# Right click on Targets > RegexKit Framework > stripHeaderdoc.sh and choose Get Info\n#\n\nSHELL=${SHELL:?\"Environment variable SHELL must exist, aborting\"}\nSTRIP_HEADERDOC_SCRIPT=${STRIP_HEADERDOC_SCRIPT:?\"Environment variable STRIP_HEADERDOC_SCRIPT must exist, aborting\"}\n\nif [ ! -x \"${STRIP_HEADERDOC_SCRIPT}\" ]; then\n if [ -r \"${STRIP_HEADERDOC_SCRIPT}\" ] && [ ! -x \"${STRIP_HEADERDOC_SCRIPT}\" ]; then\n echo \"$0:$LINENO: error: The command to strip headerdoc comments, '${STRIP_HEADERDOC_SCRIPT}', exists but is not executable, aborting.\"\n echo \"$0:$LINENO: error: Suggestion: 'chmod u+x ${STRIP_HEADERDOC_SCRIPT}'\"\n exit 1\n fi\n echo \"$0:$LINENO: error: The command to strip headerdoc comments, '${STRIP_HEADERDOC_SCRIPT}', does not exist, aborting.\";\n exit 1\nelse\n exec \"${SHELL}\" \"${STRIP_HEADERDOC_SCRIPT}\"\nfi\n";
};
1264D5A30C7A59F20044B285 /* buildDocumentation.sh */ = {
isa = PBXShellScriptBuildPhase;
@@ -803,7 +926,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "SHELL=${SHELL:?\"Environment variable SHELL must exist, aborting\"}\nBUILD_DOCUMENTATION_SCRIPT=${BUILD_DOCUMENTATION_SCRIPT:?\"Environment variable BUILD_DOCUMENTATION_SCRIPT must exist, aborting\"}\n\nif [ ! -x ${BUILD_DOCUMENTATION_SCRIPT} ]; then\n echo \"$0:$LINENO: error: The command to build the documentation, '${BUILD_DOCUMENTATION_SCRIPT}', does not exist, aborting\"\n exit 1\nelse\n exec ${SHELL} ${BUILD_DOCUMENTATION_SCRIPT}\nfi\n";
+ shellScript = "#\n# The source to this script can be found at:\n# Right click on Targets > Documentation > buildDocumentation.sh and choose Get Info\n#\n\nSHELL=${SHELL:?\"Environment variable SHELL must exist, aborting\"}\nBUILD_DOCUMENTATION_SCRIPT=${BUILD_DOCUMENTATION_SCRIPT:?\"Environment variable BUILD_DOCUMENTATION_SCRIPT must exist, aborting\"}\n\nif [ ! -x \"${BUILD_DOCUMENTATION_SCRIPT}\" ]; then\n if [ -r \"${BUILD_DOCUMENTATION_SCRIPT}\" ] && [ ! -x \"${BUILD_DOCUMENTATION_SCRIPT}\" ]; then\n echo \"$0:$LINENO: error: The command to build the documentation, '${BUILD_DOCUMENTATION_SCRIPT}', exists but is not executable, aborting.\"\n echo \"$0:$LINENO: error: Suggestion: 'chmod u+x ${BUILD_DOCUMENTATION_SCRIPT}'\"\n exit 1\n fi\n echo \"$0:$LINENO: error: The command to build the documentation, '${BUILD_DOCUMENTATION_SCRIPT}', does not exist, aborting.\";\n exit 1\nelse\n exec \"${SHELL}\" \"${BUILD_DOCUMENTATION_SCRIPT}\"\nfi\n";
};
1264D6E70C7A79A70044B285 /* buildDistribution.sh */ = {
isa = PBXShellScriptBuildPhase;
@@ -817,7 +940,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "SHELL=${SHELL:?\"Environment variable SHELL must exist, aborting.\"}\nBUILD_DISTRIBUTION_SCRIPT=${BUILD_DISTRIBUTION_SCRIPT:?\"Environment variable BUILD_DISTRIBUTION_SCRIPT must exist, aborting.\"}\n\nif [ ! -x ${BUILD_DISTRIBUTION_SCRIPT} ]; then\n echo \"$0:$LINENO: error: The command to build the distribution, '${BUILD_DISTRIBUTION_SCRIPT}', does not exist, aborting.\"\n exit 1\nelse\n exec ${SHELL} ${BUILD_DISTRIBUTION_SCRIPT}\nfi\n";
+ shellScript = "#\n# The source to this script can be found at:\n# Right click on Targets > Distribution > buildDistribution.sh and choose Get Info\n#\n\nSHELL=${SHELL:?\"Environment variable SHELL must exist, aborting.\"}\nBUILD_DISTRIBUTION_SCRIPT=${BUILD_DISTRIBUTION_SCRIPT:?\"Environment variable BUILD_DISTRIBUTION_SCRIPT must exist, aborting.\"}\n\nif [ ! -x \"${BUILD_DISTRIBUTION_SCRIPT}\" ]; then\n if [ -r \"${BUILD_DISTRIBUTION_SCRIPT}\" ] && [ ! -x \"${BUILD_DISTRIBUTION_SCRIPT}\" ]; then\n echo \"$0:$LINENO: error: The command to build the distribution, '${BUILD_DISTRIBUTION_SCRIPT}', exists but is not executable, aborting.\"\n echo \"$0:$LINENO: error: Suggestion: 'chmod u+x ${BUILD_DISTRIBUTION_SCRIPT}'\"\n exit 1\n fi\n echo \"$0:$LINENO: error: The command to build the distribution, '${BUILD_DISTRIBUTION_SCRIPT}', does not exist, aborting.\";\n exit 1\nelse\n exec \"${SHELL}\" \"${BUILD_DISTRIBUTION_SCRIPT}\"\nfi\n";
};
1264D77D0C7A95B60044B285 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
@@ -830,7 +953,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "# Run the unit tests in this test bundle.\nif [ -x \"Source/unitTests/debug.sh\" ]; then\n source \"Source/unitTests/debug.sh\"\nfi\n\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n";
+ shellScript = "#\n# The source to this script can be found at:\n# Right click on Targets > Unit Tests > Run Script and choose Get Info\n#\n\n# Run the unit tests in this test bundle.\nif [ -x \"Source/unitTests/debug.sh\" ]; then\n source \"Source/unitTests/debug.sh\"\nfi\n\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n";
};
1299AE690C78AB9C007F3859 /* buildPCRE.sh */ = {
isa = PBXShellScriptBuildPhase;
@@ -844,7 +967,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "SHELL=${SHELL:?\"Environment variable SHELL must exist, aborting.\"}\nPCRE_BUILD_SCRIPT=${PCRE_BUILD_SCRIPT:?\"Environment variable PCRE_BUILD_SCRIPT must exist, aborting.\"}\n\nif [ ! -x ${PCRE_BUILD_SCRIPT} ]; then\n echo \"$0:$LINENO: error: The command to build the distribution, '${PCRE_BUILD_SCRIPT}', does not exist, aborting.\"\n exit 1\nelse\n exec ${SHELL} ${PCRE_BUILD_SCRIPT}\nfi\n";
+ shellScript = "#\n# The source to this script can be found at:\n# Right click on Targets > PCRE > buildPCRE.sh and choose Get Info\n#\n\nSHELL=${SHELL:?\"Environment variable SHELL must exist, aborting.\"}\nPCRE_BUILD_SCRIPT=${PCRE_BUILD_SCRIPT:?\"Environment variable PCRE_BUILD_SCRIPT must exist, aborting.\"}\n\nif [ ! -x \"${PCRE_BUILD_SCRIPT}\" ]; then\n if [ -r \"${PCRE_BUILD_SCRIPT}\" ] && [ ! -x \"${PCRE_BUILD_SCRIPT}\" ]; then\n echo \"$0:$LINENO: error: The command to build the PCRE library, '${PCRE_BUILD_SCRIPT}', exists but is not executable, aborting.\"\n echo \"$0:$LINENO: error: Suggestion: 'chmod u+x ${PCRE_BUILD_SCRIPT}'\"\n exit 1\n fi\n echo \"$0:$LINENO: error: The command to build the PCRE library, '${PCRE_BUILD_SCRIPT}', does not exist, aborting.\";\n exit 1\nelse\n exec \"${SHELL}\" \"${PCRE_BUILD_SCRIPT}\"\nfi\n";
};
/* End PBXShellScriptBuildPhase section */
@@ -858,8 +981,8 @@
1264D83B0C7A9D7D0044B285 /* collectionAdditions.m in Sources */,
1264D8580C7A9E0F0044B285 /* functionality.m in Sources */,
1264D8560C7A9DF90044B285 /* stringConversion.m in Sources */,
- 1264D85A0C7A9E1B0044B285 /* multithreading.m in Sources */,
- 1264D85C0C7A9E300044B285 /* timing.m in Sources */,
+ 122401EC0CCD5D89006F56F9 /* timing.m in Sources */,
+ 122401ED0CCD5E15006F56F9 /* multithreading.m in Sources */,
12D581810C80B75500674FA2 /* enumeration.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -888,6 +1011,16 @@
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
+ 120291BD0CD1CD4C0045B036 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 1264D5A00C7A59E10044B285 /* Documentation */;
+ targetProxy = 120291BC0CD1CD4C0045B036 /* PBXContainerItemProxy */;
+ };
+ 1261B78E0CD27CE100F2E972 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 120291B30CD1CC610045B036 /* DocSet */;
+ targetProxy = 1261B78D0CD27CE100F2E972 /* PBXContainerItemProxy */;
+ };
1264D5C90C7A5A720044B285 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 1299AE6A0C78AB9C007F3859 /* PCRE */;
@@ -924,9 +1057,55 @@
name = InfoPlist.strings;
sourceTree = "<group>";
};
+ 12EB3D610CC1707000162FCC /* Conclusion.rtf */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 12EB3D620CC1707000162FCC /* English */,
+ );
+ name = Conclusion.rtf;
+ sourceTree = "<group>";
+ };
+ 12EB3D630CC1707000162FCC /* License.rtf */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 12EB3D640CC1707000162FCC /* English */,
+ );
+ name = License.rtf;
+ sourceTree = "<group>";
+ };
+ 12EB3D650CC1707000162FCC /* Welcome.rtf */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 12EB3D660CC1707000162FCC /* English */,
+ );
+ name = Welcome.rtf;
+ sourceTree = "<group>";
+ };
+ 12EB3DCC0CC17DC600162FCC /* ReadMe.rtf */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 12EB3DCD0CC17DC600162FCC /* English */,
+ );
+ name = ReadMe.rtf;
+ sourceTree = "<group>";
+ };
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
+ 120291B80CD1CC610045B036 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = "Build Documentation";
+ };
+ name = Debug;
+ };
+ 120291B90CD1CC610045B036 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = "Build Documentation";
+ };
+ name = Release;
+ };
1264D5C20C7A59F50044B285 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
@@ -958,7 +1137,11 @@
1264D7820C7A95B70044B285 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
- FRAMEWORK_SEARCH_PATHS = "${BUILD_DIR}/${CONFIGURATION}";
+ FRAMEWORK_SEARCH_PATHS = (
+ "${BUILD_DIR}/${CONFIGURATION}",
+ "$(DEVELOPER_FRAMEWORKS_DIR_QUOTED)",
+ );
+ GCC_ENABLE_OBJC_GC = YES;
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
INFOPLIST_FILE = "Source/unitTests/Unit Tests-Info.plist";
INSTALL_PATH = "$(USER_LIBRARY_DIR)/Bundles";
@@ -984,8 +1167,11 @@
1264D7830C7A95B70044B285 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ARCHS = "${NATIVE_ARCH}";
- FRAMEWORK_SEARCH_PATHS = "${BUILD_DIR}/${CONFIGURATION}";
+ FRAMEWORK_SEARCH_PATHS = (
+ "${BUILD_DIR}/${CONFIGURATION}",
+ "$(DEVELOPER_FRAMEWORKS_DIR_QUOTED)",
+ );
+ GCC_ENABLE_OBJC_GC = YES;
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
INFOPLIST_FILE = "Source/unitTests/Unit Tests-Info.plist";
INSTALL_PATH = "$(USER_LIBRARY_DIR)/Bundles";
@@ -1029,6 +1215,7 @@
DYLIB_CURRENT_VERSION = "${PROJECT_CURRENT_VERSION}";
EXPORTED_SYMBOLS_FILE = "${PROJECT_EXPORTED_SYMBOLS_FILE}";
FRAMEWORK_VERSION = A;
+ GCC_ENABLE_OBJC_GC = YES;
HEADER_SEARCH_PATHS = (
"$(inherited)",
"${PROJECT_HEADERS_ROOT}",
@@ -1058,6 +1245,7 @@
DYLIB_CURRENT_VERSION = "${PROJECT_CURRENT_VERSION}";
EXPORTED_SYMBOLS_FILE = "${PROJECT_EXPORTED_SYMBOLS_FILE}";
FRAMEWORK_VERSION = A;
+ GCC_ENABLE_OBJC_GC = YES;
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
NS_BLOCK_ASSERTIONS,
@@ -1086,7 +1274,6 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 12F901140CA99AAF00CEA3D0 /* RegexKit Build Settings.xcconfig */;
buildSettings = {
- ARCHS = "${NATIVE_ARCH}";
GCC_OPTIMIZATION_LEVEL = 0;
WARNING_CFLAGS = (
"$(inherited)",
@@ -1103,6 +1290,7 @@
"-Wdiv-by-zero",
"-Wmissing-field-initializers",
"-Wno-format-nonliteral",
+ "-Wshorten-64-to-32",
);
};
name = Debug;
@@ -1111,10 +1299,6 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 12F901140CA99AAF00CEA3D0 /* RegexKit Build Settings.xcconfig */;
buildSettings = {
- ARCHS = (
- ppc,
- i386,
- );
GCC_WARN_UNINITIALIZED_AUTOS = YES;
STRIP_INSTALLED_PRODUCT = YES;
WARNING_CFLAGS = (
@@ -1132,6 +1316,7 @@
"-Wdiv-by-zero",
"-Wmissing-field-initializers",
"-Wno-format-nonliteral",
+ "-Wshorten-64-to-32",
);
};
name = Release;
@@ -1139,6 +1324,15 @@
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
+ 120291B70CD1CC610045B036 /* Build configuration list for PBXAggregateTarget "DocSet" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 120291B80CD1CC610045B036 /* Debug */,
+ 120291B90CD1CC610045B036 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Debug;
+ };
1264D5C10C7A59F50044B285 /* Build configuration list for PBXAggregateTarget "Documentation" */ = {
isa = XCConfigurationList;
buildConfigurations = (
View
74 ReleaseNotes
@@ -1,3 +1,77 @@
+Release Notes for 0.3.0 BETA
+----------------------------
+
+o Xcode 3.0 DocSet Documentation
+ ------------------------------
+
+The documentation is now made available in the new Xcode 3.0 DocSet format.
+This allows you to access the RegexKit documentation from within Xcode.
+If you open the Research Assistant ( Help > Show Research Assistant ), and
+then place the insert point over a RegexKit method, the Research Assistant
+will display the relevent section of documentation. Also available is
+full text searching of the documentation from the documentation viewer.
+Although the Subscribe button is present, there is no subscription available
+at this time (this seems to be a bug with Xcode, no URL is present to even
+subscribe to.) Automatic documentation updating will be added in a later
+release.
+
+o Garbage Collection support
+ --------------------------
+
+RegexKit now includes support for Mac OS X 10.5's Garbage Collection feature.
+Cocoa's Garbage Collection system requires that all linked files have
+Garbage Collection enabled for Garbage Collection to be active. RegexKit
+supports both the new Garbage Collection system and the older retain / release
+system. At load time, if Cocoa has enabled the GC system, RegexKit switches
+to using that. Otherwise, it falls back to the older retain / release way
+of managing memory automatically.
+
+o 64-bit support
+ --------------
+
+RegexKit now supports 64-bits cleanly. For Mac OS X users, the framework
+binary now includes the following architectures:
+
+ Architecture Minimum Mac OS X
+ ppc 10.4
+ i386 10.4
+ ppc64 10.5 (Leopard)
+ x86_64 10.5 (Leopard)
+
+o Mac OS X Installer .dmg distribution
+ ------------------------------------
+
+RegexKit 0.3.0 marks the introduction of a Mac OS X Installer based
+distribution. It bundles together the Mac OS X Binary executable
+RegexKit.framework, the Documentation, and the source code in to one
+convenient package.
+
+o Build system improvements
+ -------------------------
+
+Began to enable parallel building where possible. For now, the PCRE target
+and part of the Distribution target are converted. The global build
+configuration flag PARALLEL_BUILD controls this feature. The PCRE target
+can be selectively disabled with PCRE_PARALLEL_BUILD = NO, and the Distribution
+target can be selectively disabled with DISTRIBUTION_PARALLEL_BUILD = NO.
+
+By default it will spawn as many jobs as there are CPU's.
+
+o RegexKit.framework Info.plist version bug fix
+ ---------------------------------------------
+
+The Info.plist in RegexKit 0.2.0 had a bug in the Info.plist file.
+The settings for the keys CFBundleShortVersionString and CFBundleVersion
+where set to the variable ${REGEXKIT_CURRENT_VERSION} when they should
+have been set to ${PROJECT_CURRENT_VERSION}.
+
+o Multi-threading memory leak
+ ---------------------------
+
+Fixed a very minor memory leak. Forgot to free() the per-thread local storage
+struct when a thread exited.
+
+----------------------------
Release Notes for 0.2.0 BETA
----------------------------
View
10 Source/Build/Distribution/Adding RegexKit to your Project.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<meta http-equiv="Refresh" content="0; URL=Documentation/RegexKitProgrammingGuide.html#AddingtheRegexKitframeworktoyourProject">
+<title>RegexKit Documentation</title>
+</head>
+<body>
+<p>Click <a href="Documentation/RegexKitProgrammingGuide.html#AddingtheRegexKitframeworktoyourProject">here</a> if not automatically redirected.</p>
+</body>
View
2  Source/Build/Distribution/Documentation.html
@@ -6,5 +6,5 @@
<title>RegexKit Documentation</title>
</head>
<body>
-<p>Click <a href="Documentation/index.html" target="_top">here</a> if not automatically redirected.</p>
+<p>Click <a href="Documentation/index.html">here</a> if not automatically redirected.</p>
</body>
View
2  Source/Build/Distribution/distribution_pcre.h
@@ -7,4 +7,4 @@
is made.
*/
-#error RegexKit requires a copy of the PCRE distributions header file.
+#error RegexKit requires a copy of the PCRE distributions header file.
View
141 Source/Build/Makefiles/Makefile.dist
@@ -0,0 +1,141 @@
+
+.PHONY: all build clean distclean \
+ build_tarballs \
+ bin_stage bin_stage_fw bin_stage_doc bin_stage_misc build_bin_tarballs \
+ src_stage src_stage_fw src_stage_doc src_stage_misc build_src_tarballs
+
+DISTRIBUTION_BINARY_DIRECTORIES = ${DISTRIBUTION_TEMP_BINARY_DIR} ${DISTRIBUTION_TEMP_BINARY_ROOT}
+DISTRIBUTION_SOURCE_DIRECTORIES = ${DISTRIBUTION_TEMP_SOURCE_DIR} ${DISTRIBUTION_TEMP_SOURCE_ROOT}
+
+DISTRIBUTION_DIRECTORIES = ${DISTRIBUTION_TARGET_DIR} ${DISTRIBUTION_BINARY_DIRECTORIES} ${DISTRIBUTION_SOURCE_DIRECTORIES}
+
+build_tarballs: build_bin_tarballs build_src_tarballs
+
+build: all
+
+all:
+ @echo "${MAKEFILE_DIST}:17: error: A valid target must be specified."
+
+clean:
+ @echo "${MAKEFILE_DIST}:20: error: Cleaning distribution not supported.";
+
+distclean: clean
+
+${DISTRIBUTION_DIRECTORIES}:
+ @mkdir -p '$@'
+
+
+###########
+#
+# Binary distribution bits
+#
+
+build_bin_tarballs: ${DISTRIBUTION_TARGET_DIR} ${DISTRIBUTION_TARGET_DIR}/${DISTRIBUTION_ROOT_NAME}.tar.bz2 ${DISTRIBUTION_TARGET_DIR}/${DISTRIBUTION_ROOT_NAME}.tar.gz
+
+${DISTRIBUTION_TARGET_DIR}/${DISTRIBUTION_ROOT_NAME}.tar.bz2: ${DISTRIBUTION_TEMP_BINARY_DIR}/${DISTRIBUTION_ROOT_NAME}.tar.bz2
+ @'${RSYNC}' -aC '$<' '$@'
+
+${DISTRIBUTION_TARGET_DIR}/${DISTRIBUTION_ROOT_NAME}.tar.gz: ${DISTRIBUTION_TEMP_BINARY_DIR}/${DISTRIBUTION_ROOT_NAME}.tar.gz
+ @'${RSYNC}' -aC '$<' '$@'
+
+${DISTRIBUTION_TEMP_BINARY_DIR}/${DISTRIBUTION_ROOT_NAME}.tar.bz2: ${DISTRIBUTION_TEMP_BINARY_DIR}/${DISTRIBUTION_ROOT_NAME}.tar
+ @echo "${MAKEFILE_DIST}:42: note: Creating binary .bz2 tarball."; \
+ '${BZIP2_CMD}' -c9 '$<' > '$@'
+
+${DISTRIBUTION_TEMP_BINARY_DIR}/${DISTRIBUTION_ROOT_NAME}.tar.gz: ${DISTRIBUTION_TEMP_BINARY_DIR}/${DISTRIBUTION_ROOT_NAME}.tar
+ @echo "${MAKEFILE_DIST}:46: note: Creating binary .gz tarball."; \
+ '${GZIP_CMD}' -c9 '$<' > '$@'
+
+${DISTRIBUTION_TEMP_BINARY_DIR}/${DISTRIBUTION_ROOT_NAME}.tar: bin_stage
+ @if [ -r '${DISTRIBUTION_TEMP_BINARY_DIR}/bin_stage.tar' ]; then \
+ REBUILD_TAR=`diff -q '${DISTRIBUTION_TEMP_BINARY_DIR}/bin_stage.tar' '${DISTRIBUTION_TEMP_BINARY_DIR}/bin_stage.find'`; \
+ if [ "$${REBUILD_TAR}" == "" ]; then exit 0; fi; \
+ fi; \
+ cd '${DISTRIBUTION_TEMP_BINARY_DIR}'; \
+ '${TAR}' cf '$@' '${DISTRIBUTION_ROOT_NAME}'; \
+ '${FIND}' '${DISTRIBUTION_TEMP_BINARY_ROOT}' -ls > '${DISTRIBUTION_TEMP_BINARY_DIR}/bin_stage.tar'
+
+bin_stage: bin_stage_fw bin_stage_doc bin_stage_misc
+ @'${FILE_CHECK_SCRIPT}' '${DISTRIBUTION_SQL_DATABASE_FILE}' 'Binary' '${DISTRIBUTION_TEMP_BINARY_ROOT}' && \
+ '${FIND}' '${DISTRIBUTION_TEMP_BINARY_ROOT}' -ls > '${DISTRIBUTION_TEMP_BINARY_DIR}/bin_stage.find'
+
+bin_stage_fw: ${DISTRIBUTION_TEMP_BINARY_ROOT}
+ @'${RSYNC}' -rltgoD --delete --cvs-exclude '${BUILD_DIR}/${CONFIGURATION}/RegexKit.framework' '$<'; \
+ '${CHMOD}' -R g-w '$</RegexKit.framework'
+
+bin_stage_doc: ${DISTRIBUTION_TEMP_BINARY_ROOT}
+ @'${RSYNC}' -rltgoD --delete --cvs-exclude '${BUILD_DIR}/${CONFIGURATION}/Documentation' '$<'; \
+ '${CHMOD}' -R g-w '$</Documentation'
+
+bin_stage_misc: ${DISTRIBUTION_TEMP_BINARY_ROOT}
+ @'${RSYNC}' -rltgoD --delete --cvs-exclude ChangeLog LICENSE README ReleaseNotes '${BUILD_DISTRIBUTION_DIR}/Documentation.html' '${BUILD_DISTRIBUTION_DIR}/Adding RegexKit to your Project.html' '$<'; \
+ '${SYSTEM_DEVELOPER_TOOLS}/SetFile' -t 'TEXT' '$</ChangeLog' '$</LICENSE' '$</README' '$</ReleaseNotes'; \
+ '${SYSTEM_DEVELOPER_TOOLS}/SetFile' -a E '$</Adding RegexKit to your Project.html'; \
+ '${CHMOD}' -R g-w '$</ChangeLog' '$</LICENSE' '$</README' '$</ReleaseNotes' '$</Documentation.html' '$</Adding RegexKit to your Project.html'
+
+
+###########
+#
+# Source distribution bits
+#
+
+
+build_src_tarballs: ${DISTRIBUTION_TARGET_DIR} ${DISTRIBUTION_TARGET_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar.bz2 ${DISTRIBUTION_TARGET_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar.gz
+
+${DISTRIBUTION_TARGET_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar.bz2: ${DISTRIBUTION_TEMP_SOURCE_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar.bz2
+ @'${RSYNC}' -aC '$<' '$@'
+
+${DISTRIBUTION_TARGET_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar.gz: ${DISTRIBUTION_TEMP_SOURCE_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar.gz
+ @'${RSYNC}' -aC '$<' '$@'
+
+${DISTRIBUTION_TEMP_SOURCE_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar.bz2: ${DISTRIBUTION_TEMP_SOURCE_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar
+ @echo "${MAKEFILE_DIST}:91: note: Creating source .bz2 tarball."; \
+ '${BZIP2_CMD}' -c9 '$<' > '$@'
+
+${DISTRIBUTION_TEMP_SOURCE_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar.gz: ${DISTRIBUTION_TEMP_SOURCE_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar
+ @echo "${MAKEFILE_DIST}:95: note: Creating source .gz tarball."; \
+ '${GZIP_CMD}' -c9 '$<' > '$@'
+
+${DISTRIBUTION_TEMP_SOURCE_DIR}/${DISTRIBUTION_BASE_SOURCE_FILE_NAME}.tar: src_stage
+ @if [ -r '${DISTRIBUTION_TEMP_SOURCE_DIR}/src_stage.tar' ]; then \
+ REBUILD_XCODE=`diff -q '${DISTRIBUTION_TEMP_SOURCE_ROOT}/${PROJECT_NAME}.xcodeproj/project.pbxproj' '${PROJECT_NAME}.xcodeproj/project.pbxproj'`; \
+ REBUILD_TAR=`diff -q '${DISTRIBUTION_TEMP_SOURCE_DIR}/src_stage.tar' '${DISTRIBUTION_TEMP_SOURCE_DIR}/src_stage.find'`; \
+ if [ "$${REBUILD_XCODE}" == "" ] && [ "$${REBUILD_TAR}" == "" ]; then exit 0; fi; \
+ fi; \
+ cd '${DISTRIBUTION_TEMP_SOURCE_DIR}'; \
+ '${TAR}' cf '$@' '${DISTRIBUTION_BASE_SOURCE_FILE_NAME}'; \
+ '${FIND}' '${DISTRIBUTION_TEMP_SOURCE_ROOT}' -ls | grep -v '${PROJECT_NAME}.xcodeproj' > '${DISTRIBUTION_TEMP_SOURCE_DIR}/src_stage.tar'
+
+src_stage: src_stage_main src_stage_pkg
+ @'${FILE_CHECK_SCRIPT}' '${DISTRIBUTION_SQL_DATABASE_FILE}' 'Source' '${DISTRIBUTION_TEMP_SOURCE_ROOT}' && \
+ '${FIND}' '${DISTRIBUTION_TEMP_SOURCE_ROOT}' -ls | grep -v '${PROJECT_NAME}.xcodeproj' > '${DISTRIBUTION_TEMP_SOURCE_DIR}/src_stage.find'
+
+src_stage_main: ${DISTRIBUTION_TEMP_SOURCE_ROOT}
+ @'${RSYNC}' -a --cvs-exclude --delete \
+ --exclude="\.*" \
+ --exclude="*~" \
+ --exclude="#*#" \
+ --exclude='Source/Headers/RegexKit/pcre.h' \
+ --exclude='Source/pcre' \
+ ChangeLog LICENSE README README.MacOSX ReleaseNotes GNUstep Source '${BUILD_DIR}/${CONFIGURATION}/Documentation' \
+ '${BUILD_DISTRIBUTION_DIR}/Documentation.html' '${BUILD_DISTRIBUTION_DIR}/Adding RegexKit to your Project.html' \
+ '${DISTRIBUTION_TEMP_SOURCE_ROOT}' && \
+ '${RSYNC}' -a --cvs-exclude '${BUILD_DISTRIBUTION_DIR}/distribution_pcre.h' '${DISTRIBUTION_TEMP_SOURCE_ROOT}/Source/Headers/RegexKit/pcre.h' && \
+ mkdir -p '${DISTRIBUTION_TEMP_SOURCE_ROOT}/${PROJECT_NAME}.xcodeproj/' && \
+ '${RSYNC}' -aC '${PROJECT_NAME}.xcodeproj/project.pbxproj' '${DISTRIBUTION_TEMP_SOURCE_ROOT}/${PROJECT_NAME}.xcodeproj/project.pbxproj' && \
+ '${CHMOD}' -R g-w '${DISTRIBUTION_TEMP_SOURCE_ROOT}' && \
+ '${SYSTEM_DEVELOPER_TOOLS}/SetFile' -t 'TEXT' '${DISTRIBUTION_TEMP_SOURCE_ROOT}/ChangeLog' && \
+ '${SYSTEM_DEVELOPER_TOOLS}/SetFile' -t 'TEXT' '${DISTRIBUTION_TEMP_SOURCE_ROOT}/LICENSE' && \
+ '${SYSTEM_DEVELOPER_TOOLS}/SetFile' -t 'TEXT' '${DISTRIBUTION_TEMP_SOURCE_ROOT}/README' && \
+ '${SYSTEM_DEVELOPER_TOOLS}/SetFile' -t 'TEXT' '${DISTRIBUTION_TEMP_SOURCE_ROOT}/README.MacOSX' && \
+ '${SYSTEM_DEVELOPER_TOOLS}/SetFile' -t 'TEXT' '${DISTRIBUTION_TEMP_SOURCE_ROOT}/ReleaseNotes' && \
+ '${SYSTEM_DEVELOPER_TOOLS}/SetFile' -a E '${DISTRIBUTION_TEMP_SOURCE_ROOT}/Adding RegexKit to your Project.html'
+
+src_stage_pkg: src_stage_main
+ @'${RSYNC}' -aCE --delete \
+ --exclude='/Adding RegexKit to your Project.html' \
+ --exclude='/Documentation.html' \
+ --exclude='/Documentation' \
+ '${DISTRIBUTION_TEMP_SOURCE_ROOT}/' '${DISTRIBUTION_TEMP_SOURCE_DIR}/Sourcecode' && \
+ '${CHMOD}' -R g+w '${DISTRIBUTION_TEMP_SOURCE_DIR}/Sourcecode'
+
View
107 Source/Build/Makefiles/Makefile.pcre
@@ -165,7 +165,7 @@ build: pcre
pcre: ${PCRE_TARGET_LIB_FILE} ${PROJECT_PCRE_HEADER_FILE} check_pcre_header
clean:
- echo "debug: Cleaning pcre."; \
+ @echo "${MAKEFILE_PCRE}:168: note: Cleaning pcre."; \
rm -rf ${PCRE_CLEAN_DIRECTORIES};
distclean: clean
@@ -184,7 +184,7 @@ distclean: clean
# The PCRE_TEMP_DIR is created by the untaring of the distribution so it must be filtered here.
$(filter-out ${PCRE_TEMP_DIR}, ${PCRE_DIRECTORIES}):
- mkdir -p $@
+ mkdir -p '$@'
##### fetch & untar
#
@@ -192,21 +192,21 @@ $(filter-out ${PCRE_TEMP_DIR}, ${PCRE_DIRECTORIES}):
#
${PCRE_TARBALL_FILE_PATH}:
- echo "debug: The pcre library distribution file '${PCRE_TARBALL_FILE_NAME}' does not exist. Downloading from '${PCRE_URL_ROOT}'."; \
+ @echo "${MAKEFILE_PCRE}:195: note: The pcre library distribution file '${PCRE_TARBALL_FILE_NAME}' does not exist. Downloading from '${PCRE_URL_ROOT}'."; \
mkdir -p '${PCRE_TARBALL_DISTRIBUTIONS_DIR}'; \
${PCRE_FETCH_COMMAND} || \
if [ ! -f '${PCRE_TARBALL_FILE_PATH}' ] || [ -z '${PCRE_TARBALL_FILE_PATH}' ]; then \
- echo "error: Unable to download the pcre library distribution file '${PCRE_TARBALL_FILE_NAME}'."; \
- echo "error: The shell command that was executed: '${PCRE_FETCH_COMMAND}'."; \
- echo "error: You can manually download the appropriate distribution file from 'http://www.pcre.org/'."; \
- echo "error: Place the downloaded distribution file in the directory '${PCRE_TARBALL_DISTRIBUTIONS_DIR}'."; \
- echo "error: The full path including the file name that I expect the tarball at is: '${PCRE_TARBALL_FILE_PATH}'."; \
+ echo "${MAKEFILE_PCRE}:199: error: Unable to download the pcre library distribution file '${PCRE_TARBALL_FILE_NAME}'."; \
+ echo "${MAKEFILE_PCRE}:200: error: The shell command that was executed: '${PCRE_FETCH_COMMAND}'."; \
+ echo "${MAKEFILE_PCRE}:201: error: You can manually download the appropriate distribution file from 'http://www.pcre.org/'."; \
+ echo "${MAKEFILE_PCRE}:202: error: Place the downloaded distribution file in the directory '${PCRE_TARBALL_DISTRIBUTIONS_DIR}'."; \
+ echo "${MAKEFILE_PCRE}:203: error: The full path including the file name that I expect the tarball at is: '${PCRE_TARBALL_FILE_PATH}'."; \
exit 1; \
fi;
${PCRE_TEMP_DIR}: ${PCRE_TARBALL_FILE_PATH}
- echo "debug: Untaring ${PCRE_TARBALL_FILE_NAME}."; \
- cd ${PCRE_TEMP_ROOT} && \
+ @echo "${MAKEFILE_PCRE}:208: note: Untaring ${PCRE_TARBALL_FILE_NAME}."; \
+ cd '${PCRE_TEMP_ROOT}' && \
${PCRE_UNTAR_COMMAND};
##### configure
@@ -220,32 +220,27 @@ ${PCRE_TEMP_DIR}: ${PCRE_TARBALL_FILE_PATH}
# Also handles proper compiler target architecture configuration.
#
+GCC_DUMPMACHINE=$(shell gcc -dumpmachine)
+GCC_VENDOR_OS=$(shell '${PERL}' -e '($$_ = "${GCC_DUMPMACHINE}") =~ s/[^\-]+\-//; print($$_);')
+CONFIGURE_BUILD_FOR=--build=${GCC_DUMPMACHINE}
+
${PCRE_TEMP_DIR}/configure: ${PCRE_TEMP_DIR}
${PCRE_ARCH_MAKEFILES}: ${PCRE_TEMP_DIR}/configure
- BUILD_FOR_ARCH="$(patsubst ${PCRE_CONFIGURE_DIR}/%/Makefile,%, $@)"; \
- BUILD_FOR_CONF_DIR="${PCRE_CONFIGURE_DIR}/$${BUILD_FOR_ARCH}"; \
- DARWIN_MAJOR_VER=`uname -r | ${PERL} -e '$$_ = <>; /^(\d+)\./; print "$$1\n";'`; \
- echo "debug: Configuring the pcre library for the '$${BUILD_FOR_ARCH}' architecture using the '${CONFIGURATION}' configuration. This may take some time."; \
- mkdir -p $${BUILD_FOR_CONF_DIR}; \
- if [ "$${BUILD_FOR_ARCH}" == "$${NATIVE_ARCH}" ]; then \
- BUILD_FOR_CONFIG_HOST=""; \
- BUILD_FOR_ARCH_FLAGS=""; \
- BUILD_FOR_ARCH_CFLAGS="${PCRE_NATIVE_CONF_CFLAGS}"; \
- else \
- BUILD_FOR_CONFIG_HOST="--host=$${BUILD_FOR_ARCH}-apple-darwin$${DARWIN_MAJOR_VER}"; \
- BUILD_FOR_ARCH_FLAGS="-arch $${BUILD_FOR_ARCH}"; \
- BUILD_FOR_ARCH_CFLAGS=""; \
- fi; \
- if [ "$${BUILD_FOR_ARCH}" == "i386" ]; then \
- BUILD_FOR_ARCH_CFLAGS="-mtune=generic"; \
- fi; \
- cd $${BUILD_FOR_CONF_DIR} && \
+ @BUILD_FOR_ARCH="$(patsubst ${PCRE_CONFIGURE_DIR}/%/Makefile,%, $@)"; \
+ HOST_ARCH="$${BUILD_FOR_ARCH}"; case $${HOST_ARCH} in i386 | x86_64 ) HOST_ARCH="i686"; ARCH_TUNE_FLAGS="-mtune=generic"; esac; \
+ case $${BUILD_FOR_ARCH} in ppc | i386 ) ARCH_MACOSX_DEPLOYMENT_TARGET="10.4"; esac; \
+ case $${BUILD_FOR_ARCH} in ppc64 | x86_64 ) ARCH_MACOSX_DEPLOYMENT_TARGET="10.5"; esac; \
+ if [ "$${BUILD_FOR_ARCH}" == "ppc" ]; then ARCH_TUNE_FLAGS="-mtune=G4"; fi; \
+ if [ "$${BUILD_FOR_ARCH}" == "ppc64" ]; then ARCH_TUNE_FLAGS="-mtune=G5"; fi; \
+ echo "${MAKEFILE_PCRE}:236: note: Configuring the pcre library for the '$${BUILD_FOR_ARCH}' architecture using the '${CONFIGURATION}' configuration. This may take some time."; \
+ mkdir -p "${PCRE_CONFIGURE_DIR}/$${BUILD_FOR_ARCH}"; \
+ cd "${PCRE_CONFIGURE_DIR}/$${BUILD_FOR_ARCH}" && \
../../configure --prefix="${PCRE_INSTALL_DIR}/$${BUILD_FOR_ARCH}" \
- $${BUILD_FOR_CONFIG_HOST} \
+ ${CONFIGURE_BUILD_FOR} --host=$${HOST_ARCH}-${GCC_VENDOR_OS} --target=$${HOST_ARCH}-${GCC_VENDOR_OS} \
${PCRE_CONF_OPTIONS} \
- CFLAGS="${PCRE_CONF_CFLAGS} $${BUILD_FOR_ARCH_FLAGS} $${BUILD_FOR_ARCH_CFLAGS}" \
- LDFLAGS="${PCRE_CONF_LDFLAGS} $${BUILD_FOR_ARCH_FLAGS}";
+ CFLAGS="${PCRE_CONF_CFLAGS} -arch $${BUILD_FOR_ARCH} $${ARCH_TUNE_FLAGS} -mmacosx-version-min=$${ARCH_MACOSX_DEPLOYMENT_TARGET}" \
+ LDFLAGS="${PCRE_CONF_LDFLAGS} -arch $${BUILD_FOR_ARCH} -mmacosx-version-min=$${ARCH_MACOSX_DEPLOYMENT_TARGET}";
##### required pre-build steps
#
@@ -253,15 +248,15 @@ ${PCRE_ARCH_MAKEFILES}: ${PCRE_TEMP_DIR}/configure
#
${PCRE_NATIVE_ARCH_FULLPATH_FILES}: ${PCRE_NATIVE_ARCH_MAKEFILE}
- BUILD_FOR_ARCH="${NATIVE_ARCH}"; \
+ @BUILD_FOR_ARCH="${NATIVE_ARCH}"; \
BUILD_FOR_TARGET="$(patsubst ${PCRE_NATIVE_ARCH_DIR}/%,%, $@)"; \
BUILD_FOR_CONF_DIR="${PCRE_NATIVE_ARCH_DIR}"; \
- echo "debug: Pre-building the pcre library for the '$${BUILD_FOR_ARCH}' native architecture using the '${CONFIGURATION}' configuration. This may take some time."; \
+ echo "${MAKEFILE_PCRE}:254: note: Pre-building the pcre library for the '$${BUILD_FOR_ARCH}' native architecture using the '${CONFIGURATION}' configuration. This may take some time."; \
cd "$${BUILD_FOR_CONF_DIR}" && \
- ${MAKE} $${BUILD_FOR_TARGET} &>/dev/null; \
+ '${MAKE}' $${BUILD_FOR_TARGET} &>/dev/null; \
LAST_RESULT=$$?; \
if [ $${LAST_RESULT} != 0 ]; then \
- echo "debug: '$${BUILD_FOR_TARGET}' returned code '$${LAST_RESULT}'. Possibly an invalid target for this pcre version. Continuing."; \
+ echo "${MAKEFILE_PCRE}:259: note: '$${BUILD_FOR_TARGET}' returned code '$${LAST_RESULT}'. Possibly an invalid target for this pcre version. Continuing."; \
touch "$${BUILD_FOR_TARGET}"; \
fi; \
if [ -h "$${BUILD_FOR_TARGET}" ]; then \
@@ -272,11 +267,11 @@ ${PCRE_NATIVE_ARCH_FULLPATH_FILES}: ${PCRE_NATIVE_ARCH_MAKEFILE}
fi;
${PCRE_NON_NATIVE_ARCH_FULLPATH_FILES}: ${PCRE_NON_NATIVE_ARCH_DIRS}/%: ${PCRE_NATIVE_ARCH_DIR}/%
- BUILD_FOR_TARGET="$(notdir $@)"; \
+ @BUILD_FOR_TARGET="$(notdir $@)"; \
BUILD_FOR_ARCH="$(patsubst ${PCRE_CONFIGURE_DIR}/%/$(notdir $@),%, $@)"; \
BUILD_FOR_CONF_DIR="${PCRE_CONFIGURE_DIR}/$${BUILD_FOR_ARCH}"; \
- echo "debug: Copying the required pre-built file '$${BUILD_FOR_TARGET}' from the '$${BUILD_FOR_ARCH}' native architecture to the '$${BUILD_FOR_TARGET}' non-native architecture."; \
- cp -f $< $@
+ echo "${MAKEFILE_PCRE}:273: note: Copying the required pre-built file '$${BUILD_FOR_TARGET}' from the '$${BUILD_FOR_ARCH}' native architecture to the '$${BUILD_FOR_TARGET}' non-native architecture."; \
+ '${CP}' -f '$<' '$@'
##### build
#
@@ -284,16 +279,17 @@ ${PCRE_NON_NATIVE_ARCH_FULLPATH_FILES}: ${PCRE_NON_NATIVE_ARCH_DIRS}/%: ${PCRE_N
#
${PCRE_ARCH_LIB_FILES}: ${PCRE_ARCH_MAKEFILES} ${PCRE_NATIVE_ARCH_FULLPATH_FILES} ${PCRE_NON_NATIVE_ARCH_FULLPATH_FILES}
- BUILD_FOR_ARCH="$(patsubst ${PCRE_INSTALL_DIR}/%/lib/libpcre.a,%, $@)"; \
+ @BUILD_FOR_ARCH="$(patsubst ${PCRE_INSTALL_DIR}/%/lib/libpcre.a,%, $@)"; \
BUILD_FOR_CONF_DIR="${PCRE_CONFIGURE_DIR}/$${BUILD_FOR_ARCH}"; \
- echo "debug: Building the pcre library for the '$${BUILD_FOR_ARCH}' architecture using the '${CONFIGURATION}' configuration. This may take some time."; \
+ echo "${MAKEFILE_PCRE}:284: note: Building the pcre library for the '$${BUILD_FOR_ARCH}' architecture using the '${CONFIGURATION}' configuration. This may take some time."; \
mkdir -p "$${BUILD_FOR_CONF_DIR}"; \
cd "$${BUILD_FOR_CONF_DIR}" && \
- ${MAKE} install
+ '${MAKE}' install
+# if [ '${PCRE_PARALLEL_BUILD}' == "YES" ]; then '${MAKE}' -j '${CPUS}' -l '${MAXLOAD}' install; else '${MAKE}' install; fi;
${PCRE_UNIVERSAL_LIB_FILE}: ${PCRE_ARCH_LIB_FILES} ${PCRE_INSTALL_DIR}/lib
- echo "debug: Combining the separate architectures libpcre.a results into a single universal binary libpcre.a."; \
- lipo $(foreach lib, $(filter-out ${PCRE_INSTALL_DIR}/lib, $^), "$(lib)") -create -output ${PCRE_UNIVERSAL_LIB_FILE}
+ @echo "${MAKEFILE_PCRE}:291: note: Combining the separate architectures libpcre.a results into a single universal binary libpcre.a."; \
+ lipo $(foreach lib, $(filter-out ${PCRE_INSTALL_DIR}/lib, $^), "$(lib)") -create -output '${PCRE_UNIVERSAL_LIB_FILE}'
##### install
#
@@ -307,30 +303,33 @@ ${PCRE_UNIVERSAL_LIB_FILE}: ${PCRE_ARCH_LIB_FILES} ${PCRE_INSTALL_DIR}/lib
#
${PCRE_TARGET_LIB_FILE}: ${PCRE_UNIVERSAL_LIB_FILE} ${PCRE_TARGET_BUILD_DIR}/lib
- echo "debug: Symlinking build/${CONFIGURATION}/${PCRE_NAME_VERSION}/lib/libpcre.a -> actual libpcre.a."; \
- ln -sf ${PCRE_UNIVERSAL_LIB_FILE} ${PCRE_TARGET_LIB_FILE}
+ if [ ! -L '${PCRE_TARGET_LIB_FILE}' ]; then \
+ @echo "${MAKEFILE_PCRE}:307: note: Symlinking build/${CONFIGURATION}/${PCRE_NAME_VERSION}/lib/libpcre.a -> actual libpcre.a."; \
+ ln -sf '${PCRE_UNIVERSAL_LIB_FILE}' '${PCRE_TARGET_LIB_FILE}'; \
+ fi;
${PROJECT_PCRE_HEADER_FILE}: check_pcre_header
# This is a semi-hack which ensures that if the pcre library pcre.h header file changes in any way, we delete the frameworks copy in Source/Headers/RegexKit.
# This ensures that we are exactly in sync with the linked against pcre version.
-check_pcre_header:
- if [ ! -f '${PROJECT_PCRE_HEADER_FILE}' ] && [ -f '${PCRE_HEADER_FILE}' ]; then \
- cp -p '${PCRE_HEADER_FILE}' '${PROJECT_PCRE_HEADER_FILE}'; \
+check_pcre_header: ${PCRE_UNIVERSAL_LIB_FILE}
+ @if [ ! -f '${PROJECT_PCRE_HEADER_FILE}' ] && [ -f '${PCRE_HEADER_FILE}' ]; then \
+ '${CP}' -p '${PCRE_HEADER_FILE}' '${PROJECT_PCRE_HEADER_FILE}'; \
fi; \
if [ -f '${PROJECT_PCRE_HEADER_FILE}' ] && [ -f '${BUILD_DISTRIBUTION_TEMP_PCRE_HEADER_FILE}' ]; then \
TEMP_HEADER=`diff -q '${PROJECT_PCRE_HEADER_FILE}' '${BUILD_DISTRIBUTION_TEMP_PCRE_HEADER_FILE}'`; \
if [ "$${TEMP_HEADER}" == "" ]; then \
- cp -p '${PCRE_HEADER_FILE}' '${PROJECT_PCRE_HEADER_FILE}'; \
+ rm -f '${PROJECT_PCRE_HEADER_FILE}'; \
+ '${CP}' -p '${PCRE_HEADER_FILE}' '${PROJECT_PCRE_HEADER_FILE}'; \
fi; \
fi; \
if [ -f '${PROJECT_PCRE_HEADER_FILE}' ]; then \
PCRE_DIST_HEADER=`diff -q '${PROJECT_PCRE_HEADER_FILE}' '${PCRE_HEADER_FILE}'`; \
if [ "$${PCRE_DIST_HEADER}" != "" ]; then \
- echo "warning: The pcre distributions '${PCRE_HEADER_FILE}' header file and the frameworks '${PROJECT_PCRE_HEADER_FILE}' header file differ."; \
- echo "warning: This should be investigated and corrected if appropriate."; \
- echo "warning: This is likely due to rebuilding with a different version of the pcre library."; \
- echo "warning: If this is the case, replace the frameworks header file with the current pcre distributions version."; \
- echo "warning: I will not replace the frameworks header file because it may contain local edits."; \
+ echo "${MAKEFILE_PCRE}:329: warning: The pcre distributions '${PCRE_HEADER_FILE}' header file and the frameworks '${PROJECT_PCRE_HEADER_FILE}' header file differ."; \
+ echo "${MAKEFILE_PCRE}:330: warning: This should be investigated and corrected if appropriate."; \
+ echo "${MAKEFILE_PCRE}:331: warning: This is likely due to rebuilding with a different version of the pcre library."; \
+ echo "${MAKEFILE_PCRE}:332: warning: If this is the case, replace the frameworks header file with the current pcre distributions version."; \
+ echo "${MAKEFILE_PCRE}:333: warning: I will not replace the frameworks header file because it may contain local edits."; \
fi; \
fi;
View
4 Source/Build/Packagemaker/Resources/English.lproj/Conclusion.rtf
@@ -0,0 +1,4 @@
+{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf410
+{\fonttbl}
+{\colortbl;\red255\green255\blue255;}
+}
View
38 Source/Build/Packagemaker/Resources/English.lproj/License.rtf
@@ -0,0 +1,38 @@
+{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf410
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;\f1\fmodern\fcharset77 Courier;}
+{\colortbl;\red255\green255\blue255;}
+{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid1}}
+{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}}
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\f0\fs36 \cf0 Important Information\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\fs24 \cf0 \
+RegexKit uses the PCRE library, written by Philip Hazel and Copyright \'a9 1997-2007 University of Cambridge, as its regular expression pattern matching engine. Therefore, RegexKit requires and incorporates the PCRE library in to the framework executable. Because of this, you should be aware of the PCRE library licensing requirements.\
+\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li360\ql\qnatural\pardirnatural
+\cf0 Website {\field{\*\fldinst{HYPERLINK "http://www.pcre.org/"}}{\fldrslt http://www.pcre.org/}}\
+License {\field{\*\fldinst{HYPERLINK "http://www.pcre.org/license.txt"}}{\fldrslt http://www.pcre.org/license.txt}}\
+Type BSD License (at time of publication)\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li360\fi-360\ql\qnatural\pardirnatural
+\cf0 \
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\fs36 \cf0 The RegexKit License\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\fs24 \cf0 \
+Copyright \'a9 2007, John Engelhart\
+\
+All rights reserved.\
+\
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\
+\
+\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\sa240\ql\qnatural\pardirnatural
+\ls1\ilvl0\cf0 {\listtext \'a5 }Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\
+{\listtext \'a5 }Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\
+{\listtext \'a5 }Neither the name of the Zang Industries nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\f1 \cf0 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.}
View
104 Source/Build/Packagemaker/Resources/English.lproj/ReadMe.rtf
@@ -0,0 +1,104 @@
+{\rtf1\ansi\ansicpg1252\cocoartf949
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fmodern\fcharset0 Courier;}
+{\colortbl;\red255\green255\blue255;}
+{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid1}
+{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid2}}
+{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}}
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\f0\fs36 \cf0 RegexKit 0.3.0\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\fs24 \cf0 \
+RegexKit will install in the following directories by default:\
+\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\fi360\ql\qnatural\pardirnatural
+
+\f1 \cf0 /Developer/Local/\
+/Library/Developer/Shared/Documentation/DocSets/
+\f0 \
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+\cf0 \
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\fs36 \cf0 What's New in 0.3.0\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\fs24 \cf0 \
+\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural\pardirnatural
+\ls1\ilvl0\cf0 {\listtext \'95 }Mac OS X Installer.\
+{\listtext \'95 }Mac OS X 10.5 support.\
+{\listtext \'95 }
+\f1 RegexKit.framework Info.plist
+\f0 version corrected.\
+{\listtext \'95 }Minor documentation updates.\
+{\listtext \'95 }Parallel target builds.\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+\cf0 \
+The new Mac OS X
+\f1 .dmg
+\f0 distribution combines the previously separate binary and source code bundles into a single, convenient installer based package.\
+\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\fs36 \cf0 Mac OS X 10.5 Features\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\fs24 \cf0 \
+\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural\pardirnatural
+\ls2\ilvl0\cf0 {\listtext \'95 }64 bit support.\
+{\listtext \'95 }Garbage Collection enabled.\
+{\listtext \'95 }Documentation available in native Xcode 3.0 DocSet format.\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+\cf0 \
+The RegexKit.framework binary now includes support for four architectures:
+\f1 ppc
+\f0 ,
+\f1 ppc64
+\f0 ,
+\f1 i386
+\f0 , and
+\f1 x86_64
+\f0 . The 32 bit architecture images require a minimum Mac OS X of 10.4, while the 64 bit architecture versions require a minimum of 10.5.\
+\
+The choice between using Garbage Collection or the traditional
+\f1 retain
+\f0 /
+\f1 release
+\f0 style of memory management is made at load time. If the dynamic linker determines that the necessary Garbage Collection prerequisites have been met, RegexKit switches to using Garbage Collection. Otherwise if Garbage Collection is not active at load time, RegexKit uses the traditional
+\f1 retain
+\f0 /
+\f1 release
+\f0 style of memory management.\
+\
+The documentation for RegexKit is now available in the new Xcode 3.0 DocSet format. This allows you to access the frameworks documentation from within Xcode, including real time access via the Research Assistant. The DocSet documentation is installed in
+\f1 /Library/Developer/Shared/Documentation/DocSets/
+\f0 , which Xcode 3.0 is set to scan automatically. You may have to quit and restart Xcode in order for the documentation to appear. Subscriptions are not yet enabled despite the subscription button being present.\
+\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\fs36 \cf0 Prerequisites\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+
+\fs24 \cf0 \
+The perl
+\f1 DBD::SQLite
+\f0 module is required on Mac OS X 10.4 to build the
+\f1 Documentation
+\f0 ,
+\f1 DocSet
+\f0 , and
+\f1 Distribution
+\f0 targets. Mac OS X 10.5 includes
+\f1 DBD::SQLite
+\f0 by default. More information can be found at:\
+\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\fi360\ql\qnatural\pardirnatural
+{\field{\*\fldinst{HYPERLINK "http://search.cpan.org/dist/DBD-SQLite/"}}{\fldrslt \cf0 http://search.cpan.org/dist/DBD-SQLite/}}\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
+\cf0 \
+The
+\f1 DBD::SQLite
+\f0 module
+\i\b is not
+\i0\b0 required to compile the framework or execute the unit tests.}
View
4 Source/Build/Packagemaker/Resources/English.lproj/Welcome.rtf
@@ -0,0 +1,4 @@
+{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf410
+{\fonttbl}
+{\colortbl;\red255\green255\blue255;}
+}
View
10 Source/Build/Packagemaker/plists/DocSet_desc.plist
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IFPkgDescriptionDescription</key>
+ <string></string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>RegexKit DocSet Documentation</string>
+</dict>
+</plist>
View
44 Source/Build/Packagemaker/plists/DocSet_info.plist
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleGetInfoString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.zang.RegexKit.Documentation.docset.pkg</string>
+ <key>CFBundleShortVersionString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFMajorVersion</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFMinorVersion</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagBackgroundAlignment</key>
+ <string>topleft</string>
+ <key>IFPkgFlagBackgroundScaling</key>
+ <string>none</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <false/>
+ <key>IFPkgFlagIsRequired</key>
+ <false/>
+ <key>IFPkgFlagOverwritePermissions</key>
+ <false/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <false/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
View
10 Source/Build/Packagemaker/plists/Documentation_desc.plist
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IFPkgDescriptionDescription</key>
+ <string></string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>RegexKit HTML Documentation</string>
+</dict>
+</plist>
View
44 Source/Build/Packagemaker/plists/Documentation_info.plist
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleGetInfoString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.zang.RegexKit.Documentation.html.pkg</string>
+ <key>CFBundleShortVersionString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFMajorVersion</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFMinorVersion</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagBackgroundAlignment</key>
+ <string>topleft</string>
+ <key>IFPkgFlagBackgroundScaling</key>
+ <string>none</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <false/>
+ <key>IFPkgFlagIsRequired</key>
+ <false/>
+ <key>IFPkgFlagOverwritePermissions</key>
+ <false/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <false/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
View
10 Source/Build/Packagemaker/plists/Framework_desc.plist
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IFPkgDescriptionDescription</key>
+ <string></string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>RegexKit Framework</string>
+</dict>
+</plist>
View
44 Source/Build/Packagemaker/plists/Framework_info.plist
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleGetInfoString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.zang.RegexKit.Framework.pkg</string>
+ <key>CFBundleShortVersionString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFMajorVersion</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFMinorVersion</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagBackgroundAlignment</key>
+ <string>topleft</string>
+ <key>IFPkgFlagBackgroundScaling</key>
+ <string>none</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <false/>
+ <key>IFPkgFlagIsRequired</key>
+ <false/>
+ <key>IFPkgFlagOverwritePermissions</key>
+ <false/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <false/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
View
18 Source/Build/Packagemaker/plists/RegexKit_mpkg_info.plist
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>English</string>
+ <key>CFBundleGetInfoString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.zang.RegexKit.mpkg</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleShortVersionString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>CFBundleVersion</key>
+ <string>updated.by.buildDistribution</string>
+</dict>
+</plist>
View
10 Source/Build/Packagemaker/plists/Sourcecode_desc.plist
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IFPkgDescriptionDescription</key>
+ <string></string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>RegexKit Sourcecode</string>
+</dict>
+</plist>
View
44 Source/Build/Packagemaker/plists/Sourcecode_info.plist
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleGetInfoString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.zang.RegexKit.Sourcecode.pkg</string>
+ <key>CFBundleShortVersionString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFMajorVersion</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFMinorVersion</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagBackgroundAlignment</key>
+ <string>topleft</string>
+ <key>IFPkgFlagBackgroundScaling</key>
+ <string>none</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <false/>
+ <key>IFPkgFlagIsRequired</key>
+ <false/>
+ <key>IFPkgFlagOverwritePermissions</key>
+ <false/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <false/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
View
10 Source/Build/Packagemaker/plists/pcre_desc.plist
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IFPkgDescriptionDescription</key>
+ <string></string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>RegexKit PCRE Distribution</string>
+</dict>
+</plist>
View
44 Source/Build/Packagemaker/plists/pcre_info.plist
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleGetInfoString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.zang.RegexKit.pcre.pkg</string>
+ <key>CFBundleShortVersionString</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFMajorVersion</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFMinorVersion</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagBackgroundAlignment</key>
+ <string>topleft</string>
+ <key>IFPkgFlagBackgroundScaling</key>
+ <string>none</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>updated.by.buildDistribution</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <false/>
+ <key>IFPkgFlagIsRequired</key>
+ <false/>
+ <key>IFPkgFlagOverwritePermissions</key>
+ <false/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <false/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
View
29 Source/Build/SQL/files.sql
@@ -52,6 +52,7 @@ CREATE TRIGGER upd_vfid_common UPDATE OF fid ON file BEGIN UPDATE common SET vfi
INSERT INTO cluster (cid, name, type) VALUES (1, "Binary", "Master");
INSERT INTO cluster (cid, name, type) VALUES (2, "Source", "Master");
+INSERT INTO file (cid, name, type, mode) VALUES (1, '/Adding RegexKit to your Project.html', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (1, '/ChangeLog', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (1, '/Documentation.html', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (1, '/LICENSE', 'f', 33188);
@@ -169,12 +170,14 @@ INSERT INTO file (cid, name, type, mode) VALUES (1, '/RegexKit.framework/Version
INSERT INTO file (cid, name, type, mode) VALUES (1, '/RegexKit.framework/Versions/A/Resources/English.lproj', 'd', 16877);
INSERT INTO file (cid, name, type, mode) VALUES (1, '/RegexKit.framework/Versions/A/Resources/English.lproj/InfoPlist.strings', 'f', 33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Adding RegexKit to your Project.html', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/ChangeLog', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/LICENSE', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/README', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/README.MacOSX', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/ReleaseNotes', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Documentation', 'd', 16877);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Documentation.html','f',33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Documentation/Constants.html', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Documentation/content.html', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Documentation/content_frame.html', 'f', 33188);
@@ -284,14 +287,37 @@ INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/RKRegex.m', 'f', 33
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/RKUtility.m', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build', 'd', 16877);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Distribution', 'd', 16877);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Distribution/Adding RegexKit to your Project.html', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Distribution/distribution_pcre.h', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Distribution/Documentation.html', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Makefiles', 'd', 16877);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Makefiles/Makefile.dist', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Makefiles/Makefile.pcre', 'f', 33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker','d',16877);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists','d',16877);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/DocSet_desc.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/DocSet_info.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/Documentation_desc.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/Documentation_info.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/Framework_desc.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/Framework_info.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/RegexKit_mpkg_info.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/Sourcecode_desc.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/Sourcecode_info.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/pcre_desc.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/plists/pcre_info.plist','f',33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/Resources','d',16877);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/Resources/English.lproj','d',16877);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/Resources/English.lproj/Conclusion.rtf','f',33261);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/Resources/English.lproj/License.rtf','f',33261);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/Resources/English.lproj/ReadMe.rtf','f',33261);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Packagemaker/Resources/English.lproj/Welcome.rtf','f',33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Scripts', 'd', 16877);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Scripts/buildDistribution.sh', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Scripts/buildPCRE.sh', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Scripts/fileCheck.pl', 'f', 33261);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Scripts/packageDist.pl','f',33261);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Scripts/plistUtil.pl','f',33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/Scripts/stripHeaderdoc.sh', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/SQL', 'd', 16877);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Build/SQL/files.sql', 'f', 33188);
@@ -325,15 +351,18 @@ INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Resou
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Resources/JavaScript/common.js', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Resources/JavaScript/toc.js', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Scripts', 'd', 16877);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Scripts/buildDocSet.sh', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Scripts/buildDocumentation.sh', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Scripts/checkHTML.sh', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Scripts/checkSpelling.sh', 'f', 33261);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Scripts/createDocSet.pl', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Scripts/generateHTML.pl', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Scripts/generatePCREToC.pl', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Scripts/parseHeaders.pl', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Scripts/resolveLinks.pl', 'f', 33261);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/SQL', 'd', 16877);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/SQL/config.sql', 'f', 33188);
+INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/SQL/docset.sql', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/SQL/init.sql', 'f', 33188);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Static', 'd', 16877);
INSERT INTO file (cid, name, type, mode) VALUES (2, '/Source/Documentation/Static/index.html', 'f', 33188);
View
427 Source/Build/Scripts/buildDistribution.sh
@@ -6,28 +6,35 @@ export BZIP2_CMD=${BZIP2_CMD:?"error: Environment variable BZIP2_CMD must exist,
export CONFIGURATION=${CONFIGURATION:?"error: Environment variable CONFIGURATION must exist, aborting."}
export DISTRIBUTION_BASE_FILE_NAME=${DISTRIBUTION_BASE_FILE_NAME:?"error: Environment variable DISTRIBUTION_BASE_FILE_NAME must exist, aborting."}
export DISTRIBUTION_BASE_SOURCE_FILE_NAME=${DISTRIBUTION_BASE_SOURCE_FILE_NAME:?"error: Environment variable DISTRIBUTION_BASE_SOURCE_FILE_NAME must exist, aborting."}
+export DISTRIBUTION_DEFAULT_INSTALL_DIR=${DISTRIBUTION_DEFAULT_INSTALL_DIR:?"error: Environment variable DISTRIBUTION_DEFAULT_INSTALL_DIR must exist, aborting."}
export DISTRIBUTION_TARGET_DIR=${DISTRIBUTION_TARGET_DIR:?"error: Environment variable DISTRIBUTION_TARGET_DIR must exist, aborting."}
export DISTRIBUTION_ROOT=${DISTRIBUTION_ROOT:?"error: Environment variable DISTRIBUTION_ROOT must exist, aborting."}
export DISTRIBUTION_DMG_CONVERT_OPTS=${DISTRIBUTION_DMG_CONVERT_OPTS:?"error: Environment variable DISTRIBUTION_DMG_CONVERT_OPTS must exist, aborting."}
export DISTRIBUTION_DMG_VOL_NAME=${DISTRIBUTION_DMG_VOL_NAME:?"error: Environment variable DISTRIBUTION_DMG_VOL_NAME must exist, aborting."}
export DISTRIBUTION_ROOT_NAME=${DISTRIBUTION_ROOT_NAME:?"error: Environment variable DISTRIBUTION_ROOT_NAME must exist, aborting."}
export DOCUMENTATION_TARGET_DIR=${DOCUMENTATION_TARGET_DIR:?"error: Environment variable DOCUMENTATION_TARGET_DIR must exist, aborting."}
-export DOCUMENTATION_README_DIR=${DOCUMENTATION_README_DIR:?"error: Environment variable DOCUMENTATION_README_DIR must exist, aborting."}
export FIND=${FIND:?"error: Environment variable FIND must exist, aborting."}
export GZIP_CMD=${GZIP_CMD:?"error: Environment variable GZIP_CMD must exist, aborting."}
+export PCRE_VERSION=${PCRE_VERSION:?"Environment variable PCRE_VERSION must exist, aborting."}
export PERL=${PERL:?"Environment variable PERL must exist, aborting."}
export PROJECT_DIR=${PROJECT_DIR:?"Environment variable PROJECT_DIR must exist, aborting."}
export PROJECT_NAME=${PROJECT_NAME:?"Environment variable PROJECT_NAME must exist, aborting."}
export RSYNC=${RSYNC:?"Environment variable RSYNC must exist, aborting."}
export SQLITE=${SQLITE:?"Environment variable SQLITE must exist, aborting."}
+export TAR=${TAR:?"Environment variable TAR must exist, aborting."}
export TEMP_FILES_DIR=${TEMP_FILES_DIR:?"error: Environment variable TEMP_FILES_DIR must exist, aborting."}
if [ "${CONFIGURATION}" != "Release" ]; then echo "$0:$LINENO: error: Distribution can only be built under the 'Release' configuration."; exit 1; fi;
-${PERL} -e 'require DBD::SQLite;' >/dev/null 2>&1
+"${PERL}" -e 'require DBD::SQLite;' >/dev/null 2>&1
if [ $? != 0 ]; then echo "$0:$LINENO: error: The perl module 'DBD::SQLite' must be installed in order to build the the target '${TARGETNAME}'."; exit 1; fi;
+/usr/bin/renice 20 -p $$
+
+# Get the pcre major and minor version numbers from PCRE_VERSION
+eval `"${PERL}" -e '$ARGV[0] =~ /(\d+)\.(\d+)/; print("export PCRE_VERSION_MAJOR=$1; export PCRE_VERSION_MINOR=$2;\n");' ${PCRE_VERSION}`
+
if [ "${P7ZIP}" == "" ]; then
if [ -x 7za ]; then P7ZIP="7za";
elif [ -x /usr/local/bin/7za ]; then P7ZIP="/usr/local/bin/7za";
@@ -36,51 +43,15 @@ if [ "${P7ZIP}" == "" ]; then
fi
fi
-compress_tarball()
-{
- local TARBALL_DIR="$1";
- local TARBALL_FILE="$2";
- local TARBALL_FILEPATH="${TARBALL_DIR}/${TARBALL_FILE}";
-
- if [ ! -f "${TARBALL_FILEPATH}" ] || [ -z "${TARBALL_FILEPATH}" ]; then return 1; fi;
-
- echo "debug: Compressing tarball '${TARBALL_FILE}' with bzip2."
- "${BZIP2_CMD}" -k9 "${TARBALL_FILEPATH}"
- if [ $? != 0 ]; then echo "$0:$LINENO: error: Error creating '${TARBALL_FILE}.bz2' with bzip2 command '${BZIP2_CMD}'."; return 1; fi;
-
- echo "debug: Compressing tarball '${TARBALL_FILE}' with gzip."
- "${GZIP_CMD}" -c9 "${TARBALL_FILEPATH}" > "${TARBALL_FILEPATH}.gz"
- if [ $? != 0 ]; then echo "$0:$LINENO: error: Error creating '${TARBALL_FILE}.gz' with gzip command '${GZIP_CMD}'."; return 1; fi;
-
- if [ -x "${P7ZIP}" ]; then
- echo "debug: Compressing tarball '${TARBALL_FILE}' with p7zip."
- "${P7ZIP}" a "${TARBALL_FILEPATH}.7z" -mx=9 "${TARBALL_FILEPATH}"
- if [ $? != 0 ]; then echo "$0:$LINENO: error: Error creating '${TARBALL_FILE}.7z' with p7zip command '${P7ZIP}'."; return 1; fi;
- chmod ugo+r "${TARBALL_FILEPATH}.7z"
+if [ "${PACKAGEMAKER}" == "" ]; then
+ if [ -x packagemaker ]; then PACKAGEMAKER="packagemaker";
+ elif [ -x /Developer/Tools/packagemaker ]; then PACKAGEMAKER="/Developer/Tools/packagemaker";
+ elif [ -x /Developer/usr/bin/packagemaker ]; then PACKAGEMAKER="/Developer/usr/bin/packagemaker";
+ else echo "$0:$LINENO: error: Unable to locate the executable 'packagemaker'."; exit 1;
fi
-}
+fi
-create_tarball()
-{
- local TARBALL_DIR="$1";
- local TARBALL_FILE="$2";
- local TARBALL_ARCHIVE_ROOT="$3";
- local TARBALL_ARCHIVE="$4";
-
- local CURRENT_DIR=`pwd`;
-
- cd "${TARBALL_ARCHIVE_ROOT}" && \
- echo "cwd: " `pwd` && \
- tar cf "${TARBALL_DIR}/${TARBALL_FILE}" "${TARBALL_ARCHIVE}" && \
- compress_tarball "${TARBALL_DIR}" "${TARBALL_FILE}" && \
- rm "${TARBALL_DIR}/${TARBALL_FILE}"
-
- local RETURN_RESULT="$?";
-
- cd "${CURRENT_DIR}"
-
- return $RETURN_RESULT;
-}
+if [ ! -x "${PACKAGEMAKER}" ] ; then echo "$0:$LINENO: error: The PackageMaker tool '${PACKAGEMAKER}' does not exist."; exit 1; fi;
create_dmg()
{
@@ -96,20 +67,66 @@ create_dmg()
local DMG_TMP_FILE="tmp_${DMG_FILE}";
local DMG_TMP_FILEPATH="${DMG_DIR}/${DMG_TMP_FILE}";
- echo "debug: Creating '${DMG_FILE}' .dmg image."
+ echo "$0:$LINENO: note: Creating '${DMG_FILE}' disk image."
hdiutil makehybrid -o "${DMG_TMP_FILEPATH}" -hfs -hfs-volume-name "${DMG_VOL_NAME}" "${DMG_DIR}/${DMG_ARCHIVE}"
if [ $? != 0 ]; then echo "$0:$LINENO: error: Error creating temporary '${DMG_FILE}' with the 'hdiutil' command."; return 1; fi;
- echo "debug: Compressing .dmg image."
+ echo "$0:$LINENO: note: Compressing .dmg image."
hdiutil convert ${DMG_CONVERT_OPS} -o "${DMG_FILEPATH}" "${DMG_TMP_FILEPATH}"
if [ $? != 0 ]; then echo "$0:$LINENO: error: Error compressing '${DMG_FILE}' with the 'hdiutil' command."; return 1; fi;
rm -f "${DMG_TMP_FILEPATH}"
- if [ ! -f "${DMG_FILEPATH}" ]; then echo "$0:$LINENO: error: Did not create the .dmg image '${DMG_FILE}'."; return 1; fi;
+ if [ ! -f "${DMG_FILEPATH}" ]; then echo "$0:$LINENO: error: Did not create the .dmg disk image '${DMG_FILE}'."; return 1; fi;
if [ "${DMG_INTERNET_ENABLE}" == "YES" ]; then
hdiutil internet-enable -yes "${DMG_FILEPATH}"
if [ $? != 0 ]; then echo "$0:$LINENO: error: Unable to Internet Enable '${DMG_FILE}' with the 'hdiutil' command."; return 1; fi;
fi;
}
+updateVersion()
+{
+ local FILE_NAM