Moved build to premake4
- moved build to premake4 - fixed compiler warnings - increased pool size to fit 64bit ptrs
This commit is contained in:
parent
5bd9845365
commit
a43504d78a
25 changed files with 148 additions and 5336 deletions
27
.gitignore
vendored
27
.gitignore
vendored
|
@ -1 +1,28 @@
|
|||
## Compiled source #
|
||||
*.com
|
||||
*.class
|
||||
*.dll
|
||||
*.exe
|
||||
*.o
|
||||
*.so
|
||||
test
|
||||
|
||||
## Logs and databases #
|
||||
*.log
|
||||
*.sql
|
||||
*.sqlite
|
||||
|
||||
## OS generated files #
|
||||
.DS_Store
|
||||
.DS_Store?
|
||||
._*
|
||||
.Spotlight-V100
|
||||
.Trashes
|
||||
ehthumbs.db
|
||||
Thumbs.db
|
||||
|
||||
## Build dir
|
||||
Build/*
|
||||
|
||||
## xcode specific
|
||||
*xcuserdata*
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
||||
# Visual C++ Express 2008
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtess2", "libtess2.vcproj", "{54B96EEE-1E45-4A06-9A01-C3218F0A8358}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Release|Win32 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{54B96EEE-1E45-4A06-9A01-C3218F0A8358}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{54B96EEE-1E45-4A06-9A01-C3218F0A8358}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{54B96EEE-1E45-4A06-9A01-C3218F0A8358}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{54B96EEE-1E45-4A06-9A01-C3218F0A8358}.Release|Win32.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
Binary file not shown.
|
@ -1,267 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioProject
|
||||
ProjectType="Visual C++"
|
||||
Version="9,00"
|
||||
Name="libtess2"
|
||||
ProjectGUID="{54B96EEE-1E45-4A06-9A01-C3218F0A8358}"
|
||||
RootNamespace="libtess2"
|
||||
Keyword="Win32Proj"
|
||||
TargetFrameworkVersion="196613"
|
||||
>
|
||||
<Platforms>
|
||||
<Platform
|
||||
Name="Win32"
|
||||
/>
|
||||
</Platforms>
|
||||
<ToolFiles>
|
||||
</ToolFiles>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
OutputDirectory="..\..\Bin"
|
||||
IntermediateDirectory="$(ConfigurationName)"
|
||||
ConfigurationType="1"
|
||||
CharacterSet="1"
|
||||
>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="..\..\Include;..\..\Example;..\..\Contrib\SDL\include;..\..\Contrib"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="3"
|
||||
UsePrecompiledHeader="0"
|
||||
WarningLevel="3"
|
||||
DebugInformationFormat="4"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManagedResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="SDL.lib SDLmain.lib opengl32.lib"
|
||||
LinkIncremental="2"
|
||||
AdditionalLibraryDirectories="..\..\Contrib\SDL\lib"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCALinkTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManifestTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXDCMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCBscMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCFxCopTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCAppVerifierTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
OutputDirectory="..\..\Bin"
|
||||
IntermediateDirectory="$(ConfigurationName)"
|
||||
ConfigurationType="1"
|
||||
CharacterSet="1"
|
||||
WholeProgramOptimization="1"
|
||||
>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="2"
|
||||
EnableIntrinsicFunctions="true"
|
||||
AdditionalIncludeDirectories="..\..\Include;..\..\Example;..\..\Contrib\SDL\include;..\..\Contrib"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
|
||||
RuntimeLibrary="2"
|
||||
EnableFunctionLevelLinking="true"
|
||||
UsePrecompiledHeader="0"
|
||||
WarningLevel="3"
|
||||
DebugInformationFormat="3"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManagedResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="SDL.lib SDLmain.lib opengl32.lib"
|
||||
LinkIncremental="1"
|
||||
AdditionalLibraryDirectories="..\..\Contrib\SDL\lib"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
OptimizeReferences="2"
|
||||
EnableCOMDATFolding="2"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCALinkTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManifestTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXDCMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCBscMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCFxCopTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCAppVerifierTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
<References>
|
||||
</References>
|
||||
<Files>
|
||||
<Filter
|
||||
Name="Source Files"
|
||||
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
||||
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
|
||||
>
|
||||
<File
|
||||
RelativePath="..\..\Source\bucketalloc.c"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\dict.c"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\geom.c"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Example\main.c"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\mesh.c"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Contrib\nanosvg.c"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\priorityq.c"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\sweep.c"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\tess.c"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Header Files"
|
||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
||||
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
|
||||
>
|
||||
<File
|
||||
RelativePath="..\..\Source\bucketalloc.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\dict.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\geom.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\mesh.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Contrib\nanosvg.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\priorityq.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\sweep.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Source\tess.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Include\tesselator.h"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Resource Files"
|
||||
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
|
||||
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
|
||||
>
|
||||
</Filter>
|
||||
</Files>
|
||||
<Globals>
|
||||
</Globals>
|
||||
</VisualStudioProject>
|
Binary file not shown.
19
Build/Xcode/English.lproj/SDLMain.nib/classes.nib
generated
19
Build/Xcode/English.lproj/SDLMain.nib/classes.nib
generated
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
IBClasses = (
|
||||
{CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; },
|
||||
{
|
||||
ACTIONS = {
|
||||
help = id;
|
||||
newGame = id;
|
||||
openGame = id;
|
||||
prefsMenu = id;
|
||||
saveGame = id;
|
||||
saveGameAs = id;
|
||||
};
|
||||
CLASS = SDLMain;
|
||||
LANGUAGE = ObjC;
|
||||
SUPERCLASS = NSObject;
|
||||
}
|
||||
);
|
||||
IBVersion = 1;
|
||||
}
|
21
Build/Xcode/English.lproj/SDLMain.nib/info.nib
generated
21
Build/Xcode/English.lproj/SDLMain.nib/info.nib
generated
|
@ -1,21 +0,0 @@
|
|||
<?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>IBDocumentLocation</key>
|
||||
<string>62 117 356 240 0 0 1152 848 </string>
|
||||
<key>IBEditorPositions</key>
|
||||
<dict>
|
||||
<key>29</key>
|
||||
<string>62 362 195 44 0 0 1152 848 </string>
|
||||
</dict>
|
||||
<key>IBFramework Version</key>
|
||||
<string>291.0</string>
|
||||
<key>IBOpenObjects</key>
|
||||
<array>
|
||||
<integer>29</integer>
|
||||
</array>
|
||||
<key>IBSystem Version</key>
|
||||
<string>6L60</string>
|
||||
</dict>
|
||||
</plist>
|
BIN
Build/Xcode/English.lproj/SDLMain.nib/objects.nib
generated
BIN
Build/Xcode/English.lproj/SDLMain.nib/objects.nib
generated
Binary file not shown.
|
@ -1,28 +0,0 @@
|
|||
<?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>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.yourcompany.libtess2</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>NSMainNibFile</key>
|
||||
<string>SDLMain</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>NSApplication</string>
|
||||
</dict>
|
||||
</plist>
|
|
@ -1,348 +0,0 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
29B97313FDCFA39411CA2CEA /* Project object */ = {
|
||||
activeBuildConfigurationName = Debug;
|
||||
activeExecutable = 6B58CAF4101992A200956BA2 /* libtess2 */;
|
||||
activeTarget = 8D1107260486CEB800E47090 /* libtess2 */;
|
||||
addToTargets = (
|
||||
8D1107260486CEB800E47090 /* libtess2 */,
|
||||
);
|
||||
breakpoints = (
|
||||
);
|
||||
codeSenseManager = 6B58CB07101992A800956BA2 /* Code sense */;
|
||||
executables = (
|
||||
6B58CAF4101992A200956BA2 /* libtess2 */,
|
||||
);
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
646,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
20,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
PBXFileDataSource_Target_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 305475119;
|
||||
PBXWorkspaceStateSaveDate = 305475119;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
6B33E35F1235077800141A9B = 6B33E35F1235077800141A9B /* PBXTextBookmark */;
|
||||
6B33E3621235299900141A9B = 6B33E3621235299900141A9B /* PBXTextBookmark */;
|
||||
6B33E3641235299900141A9B = 6B33E3641235299900141A9B /* PBXTextBookmark */;
|
||||
6B33E36C12352A0A00141A9B = 6B33E36C12352A0A00141A9B /* PBXTextBookmark */;
|
||||
6B33E36E12352BF000141A9B = 6B33E36E12352BF000141A9B /* PBXTextBookmark */;
|
||||
6B33E36F12352BF000141A9B = 6B33E36F12352BF000141A9B /* PBXTextBookmark */;
|
||||
6B33E37012352BF000141A9B = 6B33E37012352BF000141A9B /* PBXTextBookmark */;
|
||||
6B33E37412352C6900141A9B = 6B33E37412352C6900141A9B /* PBXTextBookmark */;
|
||||
6B33E37512352C6900141A9B = 6B33E37512352C6900141A9B /* PBXTextBookmark */;
|
||||
6B33E38312352D0F00141A9B = 6B33E38312352D0F00141A9B /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 6B58CB06101992A800956BA2 /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
6B33E35F1235077800141A9B /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 6B58CB091019935200956BA2 /* main.c */;
|
||||
name = "main.c: 13";
|
||||
rLen = 0;
|
||||
rLoc = 217;
|
||||
rType = 0;
|
||||
vrLen = 658;
|
||||
vrLoc = 746;
|
||||
};
|
||||
6B33E3621235299900141A9B /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 6B33E3631235299900141A9B /* isomesher_dc.h */;
|
||||
name = "isomesher_dc.h: 54";
|
||||
rLen = 0;
|
||||
rLoc = 1157;
|
||||
rType = 0;
|
||||
vrLen = 774;
|
||||
vrLoc = 655;
|
||||
};
|
||||
6B33E3631235299900141A9B /* isomesher_dc.h */ = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = sourcecode.c.h;
|
||||
name = isomesher_dc.h;
|
||||
path = /Users/memon/Downloads/isosurf/threed/isomesher_dc.h;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
6B33E3641235299900141A9B /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 6B33E3651235299900141A9B /* isomesher_dc.cpp */;
|
||||
name = "isomesher_dc.cpp: 22";
|
||||
rLen = 0;
|
||||
rLoc = 644;
|
||||
rType = 0;
|
||||
vrLen = 1385;
|
||||
vrLoc = 0;
|
||||
};
|
||||
6B33E3651235299900141A9B /* isomesher_dc.cpp */ = {
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = sourcecode.cpp.cpp;
|
||||
name = isomesher_dc.cpp;
|
||||
path = /Users/memon/Downloads/isosurf/threed/isomesher_dc.cpp;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
6B33E36C12352A0A00141A9B /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 6B58CB4B1019948500956BA2 /* geom.h */;
|
||||
name = "geom.h: 30";
|
||||
rLen = 0;
|
||||
rLoc = 1649;
|
||||
rType = 0;
|
||||
vrLen = 1567;
|
||||
vrLoc = 1806;
|
||||
};
|
||||
6B33E36E12352BF000141A9B /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 6B58CB4D1019948500956BA2 /* mesh.h */;
|
||||
name = "mesh.h: 118";
|
||||
rLen = 0;
|
||||
rLoc = 5865;
|
||||
rType = 0;
|
||||
vrLen = 1596;
|
||||
vrLoc = 5310;
|
||||
};
|
||||
6B33E36F12352BF000141A9B /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 6B58CB501019948500956BA2 /* sweep.c */;
|
||||
name = "sweep.c: 440";
|
||||
rLen = 0;
|
||||
rLoc = 14876;
|
||||
rType = 0;
|
||||
vrLen = 1366;
|
||||
vrLoc = 13947;
|
||||
};
|
||||
6B33E37012352BF000141A9B /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 6B58CB531019948500956BA2 /* tess.h */;
|
||||
name = "tess.h: 73";
|
||||
rLen = 0;
|
||||
rLoc = 2671;
|
||||
rType = 0;
|
||||
vrLen = 1071;
|
||||
vrLoc = 1824;
|
||||
};
|
||||
6B33E37412352C6900141A9B /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 6B58CB521019948500956BA2 /* tess.c */;
|
||||
name = "tess.c: 959";
|
||||
rLen = 0;
|
||||
rLoc = 25081;
|
||||
rType = 0;
|
||||
vrLen = 643;
|
||||
vrLoc = 24599;
|
||||
};
|
||||
6B33E37512352C6900141A9B /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 6B58CB451019947700956BA2 /* tesselator.h */;
|
||||
name = "tesselator.h: 147";
|
||||
rLen = 0;
|
||||
rLoc = 6694;
|
||||
rType = 0;
|
||||
vrLen = 1977;
|
||||
vrLoc = 4911;
|
||||
};
|
||||
6B33E38312352D0F00141A9B /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 6B58CB451019947700956BA2 /* tesselator.h */;
|
||||
name = "tesselator.h: 137";
|
||||
rLen = 0;
|
||||
rLoc = 6164;
|
||||
rType = 0;
|
||||
vrLen = 1837;
|
||||
vrLoc = 5164;
|
||||
};
|
||||
6B58CAF4101992A200956BA2 /* libtess2 */ = {
|
||||
isa = PBXExecutable;
|
||||
activeArgIndices = (
|
||||
);
|
||||
argumentStrings = (
|
||||
);
|
||||
autoAttachOnCrash = 1;
|
||||
breakpointsEnabled = 0;
|
||||
configStateDict = {
|
||||
};
|
||||
customDataFormattersEnabled = 1;
|
||||
dataTipCustomDataFormattersEnabled = 1;
|
||||
dataTipShowTypeColumn = 1;
|
||||
dataTipSortType = 0;
|
||||
debuggerPlugin = GDBDebugging;
|
||||
disassemblyDisplayState = 0;
|
||||
dylibVariantSuffix = "";
|
||||
enableDebugStr = 1;
|
||||
environmentEntries = (
|
||||
);
|
||||
executableSystemSymbolLevel = 0;
|
||||
executableUserSymbolLevel = 0;
|
||||
libgmallocEnabled = 1;
|
||||
name = libtess2;
|
||||
savedGlobals = {
|
||||
};
|
||||
showTypeColumn = 0;
|
||||
sourceDirectories = (
|
||||
);
|
||||
};
|
||||
6B58CB06101992A800956BA2 /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
6B58CB07101992A800956BA2 /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
6B58CB091019935200956BA2 /* main.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {824, 4888}}";
|
||||
sepNavSelRange = "{217, 0}";
|
||||
sepNavVisRange = "{746, 658}";
|
||||
};
|
||||
};
|
||||
6B58CB0A1019935200956BA2 /* SDLMain.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {742, 495}}";
|
||||
sepNavSelRange = "{503, 0}";
|
||||
sepNavVisRange = "{0, 503}";
|
||||
};
|
||||
};
|
||||
6B58CB0B1019935200956BA2 /* SDLMain.m */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {901, 5811}}";
|
||||
sepNavSelRange = "{2860, 0}";
|
||||
sepNavVisRange = "{2560, 353}";
|
||||
};
|
||||
};
|
||||
6B58CB451019947700956BA2 /* tesselator.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {922, 2054}}";
|
||||
sepNavSelRange = "{6164, 0}";
|
||||
sepNavVisRange = "{5307, 1694}";
|
||||
};
|
||||
};
|
||||
6B58CB461019948500956BA2 /* bucketalloc.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {742, 2720}}";
|
||||
sepNavSelRange = "{1626, 0}";
|
||||
sepNavVisRange = "{402, 1384}";
|
||||
};
|
||||
};
|
||||
6B58CB471019948500956BA2 /* bucketalloc.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {742, 768}}";
|
||||
sepNavSelRange = "{1626, 0}";
|
||||
sepNavVisRange = "{322, 1384}";
|
||||
};
|
||||
};
|
||||
6B58CB481019948500956BA2 /* dict.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {742, 1504}}";
|
||||
sepNavSelRange = "{1620, 0}";
|
||||
sepNavVisRange = "{616, 1359}";
|
||||
};
|
||||
};
|
||||
6B58CB491019948500956BA2 /* dict.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {742, 1056}}";
|
||||
sepNavSelRange = "{1620, 0}";
|
||||
sepNavVisRange = "{241, 1508}";
|
||||
};
|
||||
};
|
||||
6B58CB4A1019948500956BA2 /* geom.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {742, 4000}}";
|
||||
sepNavSelRange = "{1649, 0}";
|
||||
sepNavVisRange = "{582, 1291}";
|
||||
};
|
||||
};
|
||||
6B58CB4B1019948500956BA2 /* geom.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {824, 1001}}";
|
||||
sepNavSelRange = "{1649, 0}";
|
||||
sepNavVisRange = "{1806, 1567}";
|
||||
};
|
||||
};
|
||||
6B58CB4C1019948500956BA2 /* mesh.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {742, 13376}}";
|
||||
sepNavSelRange = "{1620, 0}";
|
||||
sepNavVisRange = "{241, 1505}";
|
||||
};
|
||||
};
|
||||
6B58CB4D1019948500956BA2 /* mesh.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {824, 3432}}";
|
||||
sepNavSelRange = "{5865, 0}";
|
||||
sepNavVisRange = "{5310, 1596}";
|
||||
};
|
||||
};
|
||||
6B58CB4E1019948500956BA2 /* priorityq.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {742, 7808}}";
|
||||
sepNavSelRange = "{1620, 0}";
|
||||
sepNavVisRange = "{572, 1199}";
|
||||
};
|
||||
};
|
||||
6B58CB4F1019948500956BA2 /* priorityq.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {742, 1456}}";
|
||||
sepNavSelRange = "{1620, 0}";
|
||||
sepNavVisRange = "{322, 1617}";
|
||||
};
|
||||
};
|
||||
6B58CB501019948500956BA2 /* sweep.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {824, 17264}}";
|
||||
sepNavSelRange = "{14876, 0}";
|
||||
sepNavVisRange = "{13947, 1366}";
|
||||
};
|
||||
};
|
||||
6B58CB511019948500956BA2 /* sweep.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {742, 1152}}";
|
||||
sepNavSelRange = "{1620, 0}";
|
||||
sepNavVisRange = "{161, 1588}";
|
||||
};
|
||||
};
|
||||
6B58CB521019948500956BA2 /* tess.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {824, 12805}}";
|
||||
sepNavSelRange = "{25081, 0}";
|
||||
sepNavVisRange = "{24599, 643}";
|
||||
};
|
||||
};
|
||||
6B58CB531019948500956BA2 /* tess.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {824, 1183}}";
|
||||
sepNavSelRange = "{2671, 0}";
|
||||
sepNavVisRange = "{1824, 1071}";
|
||||
};
|
||||
};
|
||||
8D1107260486CEB800E47090 /* libtess2 */ = {
|
||||
activeExec = 0;
|
||||
executables = (
|
||||
6B58CAF4101992A200956BA2 /* libtess2 */,
|
||||
);
|
||||
};
|
||||
}
|
File diff suppressed because it is too large
Load diff
|
@ -1,385 +0,0 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 46;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; };
|
||||
002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; };
|
||||
002F3AF109D08F1000EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 002F3AEF09D08F1000EBEB88 /* SDLMain.nib */; };
|
||||
6B33E3331235065700141A9B /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6B33E3321235065700141A9B /* OpenGL.framework */; };
|
||||
6B58CB0C1019935200956BA2 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 6B58CB091019935200956BA2 /* main.c */; };
|
||||
6B58CB0D1019935200956BA2 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B58CB0B1019935200956BA2 /* SDLMain.m */; };
|
||||
6B58CB121019938400956BA2 /* nanosvg.c in Sources */ = {isa = PBXBuildFile; fileRef = 6B58CB101019938400956BA2 /* nanosvg.c */; };
|
||||
6B58CB541019948500956BA2 /* bucketalloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 6B58CB461019948500956BA2 /* bucketalloc.c */; };
|
||||
6B58CB551019948500956BA2 /* dict.c in Sources */ = {isa = PBXBuildFile; fileRef = 6B58CB481019948500956BA2 /* dict.c */; };
|
||||
6B58CB561019948500956BA2 /* geom.c in Sources */ = {isa = PBXBuildFile; fileRef = 6B58CB4A1019948500956BA2 /* geom.c */; };
|
||||
6B58CB571019948500956BA2 /* mesh.c in Sources */ = {isa = PBXBuildFile; fileRef = 6B58CB4C1019948500956BA2 /* mesh.c */; };
|
||||
6B58CB581019948500956BA2 /* priorityq.c in Sources */ = {isa = PBXBuildFile; fileRef = 6B58CB4E1019948500956BA2 /* priorityq.c */; };
|
||||
6B58CB591019948500956BA2 /* sweep.c in Sources */ = {isa = PBXBuildFile; fileRef = 6B58CB501019948500956BA2 /* sweep.c */; };
|
||||
6B58CB5A1019948500956BA2 /* tess.c in Sources */ = {isa = PBXBuildFile; fileRef = 6B58CB521019948500956BA2 /* tess.c */; };
|
||||
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = {
|
||||
isa = PBXCopyFilesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
dstPath = "";
|
||||
dstSubfolderSpec = 10;
|
||||
files = (
|
||||
002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */,
|
||||
);
|
||||
name = "Copy Frameworks into .app bundle";
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = "<absolute>"; };
|
||||
002F3AF009D08F1000EBEB88 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/SDLMain.nib; sourceTree = "<group>"; };
|
||||
089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||
29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
|
||||
29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
|
||||
32CA4F630368D1EE00C91783 /* libtess2_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libtess2_Prefix.pch; sourceTree = "<group>"; };
|
||||
6B33E3321235065700141A9B /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = "<absolute>"; };
|
||||
6B58CB091019935200956BA2 /* main.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = main.c; path = ../../Example/main.c; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB0A1019935200956BA2 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDLMain.h; path = ../../Example/SDLMain.h; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB0B1019935200956BA2 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SDLMain.m; path = ../../Example/SDLMain.m; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB101019938400956BA2 /* nanosvg.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = nanosvg.c; path = ../../Contrib/nanosvg.c; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB111019938400956BA2 /* nanosvg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = nanosvg.h; path = ../../Contrib/nanosvg.h; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB451019947700956BA2 /* tesselator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = tesselator.h; path = ../../Include/tesselator.h; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB461019948500956BA2 /* bucketalloc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = bucketalloc.c; path = ../../Source/bucketalloc.c; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB471019948500956BA2 /* bucketalloc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = bucketalloc.h; path = ../../Source/bucketalloc.h; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB481019948500956BA2 /* dict.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = dict.c; path = ../../Source/dict.c; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB491019948500956BA2 /* dict.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dict.h; path = ../../Source/dict.h; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB4A1019948500956BA2 /* geom.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = geom.c; path = ../../Source/geom.c; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB4B1019948500956BA2 /* geom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = geom.h; path = ../../Source/geom.h; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB4C1019948500956BA2 /* mesh.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = mesh.c; path = ../../Source/mesh.c; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB4D1019948500956BA2 /* mesh.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = mesh.h; path = ../../Source/mesh.h; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB4E1019948500956BA2 /* priorityq.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = priorityq.c; path = ../../Source/priorityq.c; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB4F1019948500956BA2 /* priorityq.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = priorityq.h; path = ../../Source/priorityq.h; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB501019948500956BA2 /* sweep.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sweep.c; path = ../../Source/sweep.c; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB511019948500956BA2 /* sweep.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = sweep.h; path = ../../Source/sweep.h; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB521019948500956BA2 /* tess.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = tess.c; path = ../../Source/tess.c; sourceTree = SOURCE_ROOT; };
|
||||
6B58CB531019948500956BA2 /* tess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = tess.h; path = ../../Source/tess.h; sourceTree = SOURCE_ROOT; };
|
||||
8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
||||
8D1107320486CEB800E47090 /* libtess2.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = libtess2.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
8D11072E0486CEB800E47090 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */,
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
|
||||
6B33E3331235065700141A9B /* OpenGL.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
080E96DDFE201D6D7F000001 /* Classes */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
6B58CB0A1019935200956BA2 /* SDLMain.h */,
|
||||
6B58CB0B1019935200956BA2 /* SDLMain.m */,
|
||||
);
|
||||
name = Classes;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
002F39F909D0881F00EBEB88 /* SDL.framework */,
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
|
||||
6B33E3321235065700141A9B /* OpenGL.framework */,
|
||||
);
|
||||
name = "Linked Frameworks";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
29B97324FDCFA39411CA2CEA /* AppKit.framework */,
|
||||
29B97325FDCFA39411CA2CEA /* Foundation.framework */,
|
||||
);
|
||||
name = "Other Frameworks";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FACFE9D520D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D1107320486CEB800E47090 /* libtess2.app */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97314FDCFA39411CA2CEA /* libtess2 */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
6B58CB3D1019942B00956BA2 /* Libtess2 */,
|
||||
6B58CB101019938400956BA2 /* nanosvg.c */,
|
||||
6B58CB111019938400956BA2 /* nanosvg.h */,
|
||||
6B58CB091019935200956BA2 /* main.c */,
|
||||
080E96DDFE201D6D7F000001 /* Classes */,
|
||||
29B97315FDCFA39411CA2CEA /* Other Sources */,
|
||||
29B97317FDCFA39411CA2CEA /* Resources */,
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */,
|
||||
19C28FACFE9D520D11CA2CBB /* Products */,
|
||||
);
|
||||
name = libtess2;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97315FDCFA39411CA2CEA /* Other Sources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
32CA4F630368D1EE00C91783 /* libtess2_Prefix.pch */,
|
||||
);
|
||||
name = "Other Sources";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97317FDCFA39411CA2CEA /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D1107310486CEB800E47090 /* Info.plist */,
|
||||
089C165CFE840E0CC02AAC07 /* InfoPlist.strings */,
|
||||
002F3AEF09D08F1000EBEB88 /* SDLMain.nib */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
|
||||
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
6B58CB3D1019942B00956BA2 /* Libtess2 */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
6B58CB461019948500956BA2 /* bucketalloc.c */,
|
||||
6B58CB471019948500956BA2 /* bucketalloc.h */,
|
||||
6B58CB481019948500956BA2 /* dict.c */,
|
||||
6B58CB491019948500956BA2 /* dict.h */,
|
||||
6B58CB4A1019948500956BA2 /* geom.c */,
|
||||
6B58CB4B1019948500956BA2 /* geom.h */,
|
||||
6B58CB4C1019948500956BA2 /* mesh.c */,
|
||||
6B58CB4D1019948500956BA2 /* mesh.h */,
|
||||
6B58CB4E1019948500956BA2 /* priorityq.c */,
|
||||
6B58CB4F1019948500956BA2 /* priorityq.h */,
|
||||
6B58CB501019948500956BA2 /* sweep.c */,
|
||||
6B58CB511019948500956BA2 /* sweep.h */,
|
||||
6B58CB521019948500956BA2 /* tess.c */,
|
||||
6B58CB531019948500956BA2 /* tess.h */,
|
||||
6B58CB451019947700956BA2 /* tesselator.h */,
|
||||
);
|
||||
name = Libtess2;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D1107260486CEB800E47090 /* libtess2 */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "libtess2" */;
|
||||
buildPhases = (
|
||||
8D1107290486CEB800E47090 /* Resources */,
|
||||
8D11072C0486CEB800E47090 /* Sources */,
|
||||
8D11072E0486CEB800E47090 /* Frameworks */,
|
||||
002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = libtess2;
|
||||
productInstallPath = "$(HOME)/Applications";
|
||||
productName = libtess2;
|
||||
productReference = 8D1107320486CEB800E47090 /* libtess2.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
29B97313FDCFA39411CA2CEA /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0410;
|
||||
};
|
||||
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "libtess2" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
en,
|
||||
);
|
||||
mainGroup = 29B97314FDCFA39411CA2CEA /* libtess2 */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D1107260486CEB800E47090 /* libtess2 */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D1107290486CEB800E47090 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */,
|
||||
002F3AF109D08F1000EBEB88 /* SDLMain.nib in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D11072C0486CEB800E47090 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
6B58CB0C1019935200956BA2 /* main.c in Sources */,
|
||||
6B58CB0D1019935200956BA2 /* SDLMain.m in Sources */,
|
||||
6B58CB121019938400956BA2 /* nanosvg.c in Sources */,
|
||||
6B58CB541019948500956BA2 /* bucketalloc.c in Sources */,
|
||||
6B58CB551019948500956BA2 /* dict.c in Sources */,
|
||||
6B58CB561019948500956BA2 /* geom.c in Sources */,
|
||||
6B58CB571019948500956BA2 /* mesh.c in Sources */,
|
||||
6B58CB581019948500956BA2 /* priorityq.c in Sources */,
|
||||
6B58CB591019948500956BA2 /* sweep.c in Sources */,
|
||||
6B58CB5A1019948500956BA2 /* tess.c in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
002F3AEF09D08F1000EBEB88 /* SDLMain.nib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
002F3AF009D08F1000EBEB88 /* English */,
|
||||
);
|
||||
name = SDLMain.nib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
089C165DFE840E0CC02AAC07 /* English */,
|
||||
);
|
||||
name = InfoPlist.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
C01FCF4B08A954540054247B /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CONFIGURATION_BUILD_DIR = ../../Bin;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_MODEL_TUNING = G5;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
PRODUCT_NAME = libtess2;
|
||||
WRAPPER_EXTENSION = app;
|
||||
ZERO_LINK = YES;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
C01FCF4C08A954540054247B /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = (
|
||||
ppc,
|
||||
i386,
|
||||
);
|
||||
CONFIGURATION_BUILD_DIR = ../../Bin;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
GCC_MODEL_TUNING = G5;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
PRODUCT_NAME = libtess2;
|
||||
WRAPPER_EXTENSION = app;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
C01FCF4F08A954540054247B /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(HOME)/Library/Frameworks",
|
||||
/Library/Frameworks,
|
||||
"$(FRAMEWORK_SEARCH_PATHS)",
|
||||
);
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(HOME)/Library/Frameworks/SDL.framework/Headers",
|
||||
/Library/Frameworks/SDL.framework/Headers,
|
||||
"$(HEADER_SEARCH_PATHS)",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
SDKROOT = macosx10.6;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
C01FCF5008A954540054247B /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(HOME)/Library/Frameworks",
|
||||
/Library/Frameworks,
|
||||
"$(FRAMEWORK_SEARCH_PATHS)",
|
||||
);
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(HOME)/Library/Frameworks/SDL.framework/Headers",
|
||||
/Library/Frameworks/SDL.framework/Headers,
|
||||
"$(HEADER_SEARCH_PATHS)",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
SDKROOT = macosx10.6;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "libtess2" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
C01FCF4B08A954540054247B /* Debug */,
|
||||
C01FCF4C08A954540054247B /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
C01FCF4E08A954540054247B /* Build configuration list for PBXProject "libtess2" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
C01FCF4F08A954540054247B /* Debug */,
|
||||
C01FCF5008A954540054247B /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:libtess2.xcodeproj">
|
||||
</FileRef>
|
||||
</Workspace>
|
File diff suppressed because it is too large
Load diff
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D1107260486CEB800E47090"
|
||||
BuildableName = "libtess2.app"
|
||||
BlueprintName = "libtess2"
|
||||
ReferencedContainer = "container:libtess2.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
buildConfiguration = "Debug">
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
buildConfiguration = "Debug">
|
||||
<BuildableProductRunnable>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D1107260486CEB800E47090"
|
||||
BuildableName = "libtess2.app"
|
||||
BlueprintName = "libtess2"
|
||||
ReferencedContainer = "container:libtess2.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
buildConfiguration = "Release">
|
||||
<BuildableProductRunnable>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D1107260486CEB800E47090"
|
||||
BuildableName = "libtess2.app"
|
||||
BlueprintName = "libtess2"
|
||||
ReferencedContainer = "container:libtess2.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
|
@ -1,22 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>libtess2.xcscheme</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>8D1107260486CEB800E47090</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
|
@ -1,9 +0,0 @@
|
|||
//
|
||||
// Prefix header for all source files of the 'libtess2' target in the 'libtess2' project
|
||||
//
|
||||
|
||||
#include "SDL.h"
|
||||
|
||||
#ifdef __OBJC__
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#endif
|
|
@ -1,6 +0,0 @@
|
|||
|
||||
Windows
|
||||
Download SDL Developer Libraries from http://www.libsdl.org and unzip them here.
|
||||
|
||||
OSX
|
||||
Download and install OSX SDL Developer Libraries from http://www.libsdl.org
|
|
@ -1,17 +0,0 @@
|
|||
/* SDLMain.m - main entry point for our Cocoa-ized SDL app
|
||||
Initial Version: Darrell Walisser <dwaliss1@purdue.edu>
|
||||
Non-NIB-Code & other changes: Max Horn <max@quendi.de>
|
||||
|
||||
Feel free to customize this file to suit your needs
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
|
||||
@interface SDLMain : NSObject
|
||||
- (IBAction)prefsMenu:(id)sender;
|
||||
- (IBAction)newGame:(id)sender;
|
||||
- (IBAction)openGame:(id)sender;
|
||||
- (IBAction)saveGame:(id)sender;
|
||||
- (IBAction)saveGameAs:(id)sender;
|
||||
- (IBAction)help:(id)sender;
|
||||
@end
|
|
@ -1,436 +0,0 @@
|
|||
/* SDLMain.m - main entry point for our Cocoa-ized SDL app
|
||||
Initial Version: Darrell Walisser <dwaliss1@purdue.edu>
|
||||
Non-NIB-Code & other changes: Max Horn <max@quendi.de>
|
||||
|
||||
Feel free to customize this file to suit your needs
|
||||
*/
|
||||
|
||||
#import "SDL.h"
|
||||
#import "SDLMain.h"
|
||||
#import <sys/param.h> /* for MAXPATHLEN */
|
||||
#import <unistd.h>
|
||||
|
||||
/* For some reaon, Apple removed setAppleMenu from the headers in 10.4,
|
||||
but the method still is there and works. To avoid warnings, we declare
|
||||
it ourselves here. */
|
||||
@interface NSApplication(SDL_Missing_Methods)
|
||||
- (void)setAppleMenu:(NSMenu *)menu;
|
||||
@end
|
||||
|
||||
/* Use this flag to determine whether we use SDLMain.nib or not */
|
||||
#define SDL_USE_NIB_FILE 1
|
||||
|
||||
/* Use this flag to determine whether we use CPS (docking) or not */
|
||||
#define SDL_USE_CPS 1
|
||||
#ifdef SDL_USE_CPS
|
||||
/* Portions of CPS.h */
|
||||
typedef struct CPSProcessSerNum
|
||||
{
|
||||
UInt32 lo;
|
||||
UInt32 hi;
|
||||
} CPSProcessSerNum;
|
||||
|
||||
extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn);
|
||||
extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5);
|
||||
extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn);
|
||||
|
||||
#endif /* SDL_USE_CPS */
|
||||
|
||||
static int gArgc;
|
||||
static char **gArgv;
|
||||
static BOOL gFinderLaunch;
|
||||
static BOOL gCalledAppMainline = FALSE;
|
||||
|
||||
static NSString *getApplicationName(void)
|
||||
{
|
||||
NSDictionary *dict;
|
||||
NSString *appName = 0;
|
||||
|
||||
/* Determine the application name */
|
||||
dict = (NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle());
|
||||
if (dict)
|
||||
appName = [dict objectForKey: @"CFBundleName"];
|
||||
|
||||
if (![appName length])
|
||||
appName = [[NSProcessInfo processInfo] processName];
|
||||
|
||||
return appName;
|
||||
}
|
||||
|
||||
#if SDL_USE_NIB_FILE
|
||||
/* A helper category for NSString */
|
||||
@interface NSString (ReplaceSubString)
|
||||
- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString;
|
||||
@end
|
||||
#endif
|
||||
|
||||
@interface SDLApplication : NSApplication
|
||||
@end
|
||||
|
||||
@implementation SDLApplication
|
||||
/* Invoked from the Quit menu item */
|
||||
- (void)terminate:(id)sender
|
||||
{
|
||||
/* Post a SDL_QUIT event */
|
||||
SDL_Event event;
|
||||
event.type = SDL_QUIT;
|
||||
SDL_PushEvent(&event);
|
||||
}
|
||||
@end
|
||||
|
||||
/* The main class of the application, the application's delegate */
|
||||
@implementation SDLMain
|
||||
|
||||
- (IBAction)prefsMenu:(id)sender
|
||||
{
|
||||
printf ("prefs menu\n");
|
||||
}
|
||||
|
||||
- (IBAction)newGame:(id)sender
|
||||
{
|
||||
printf ("new game\n");
|
||||
|
||||
NSRunAlertPanel (@"Get ready to blow up some... stuff!",
|
||||
@"Click OK to begin total carnage. Click Cancel to prevent total carnage.", @"OK", @"Cancel", nil);
|
||||
}
|
||||
|
||||
- (IBAction)openGame:(id)sender
|
||||
{
|
||||
NSString *path = nil;
|
||||
NSOpenPanel *openPanel = [ NSOpenPanel openPanel ];
|
||||
|
||||
if ( [ openPanel runModalForDirectory:nil
|
||||
file:@"SavedGame" types:nil ] ) {
|
||||
|
||||
path = [ [ openPanel filenames ] objectAtIndex:0 ];
|
||||
}
|
||||
|
||||
printf ("open game: %s\n", [ path cString ]);
|
||||
}
|
||||
|
||||
- (IBAction)saveGame:(id)sender
|
||||
{
|
||||
NSString *path = nil;
|
||||
NSSavePanel *savePanel = [ NSSavePanel savePanel ];
|
||||
|
||||
if ( [ savePanel runModalForDirectory:nil
|
||||
file:@"SaveGameFile" ] ) {
|
||||
|
||||
path = [ savePanel filename ];
|
||||
}
|
||||
|
||||
printf ("save game: %s\n", [ path cString ]);
|
||||
}
|
||||
|
||||
- (IBAction)saveGameAs:(id)sender
|
||||
{
|
||||
printf ("save game as\n");
|
||||
}
|
||||
|
||||
- (IBAction)help:(id)sender
|
||||
{
|
||||
NSRunAlertPanel (@"Oh help, where have ye gone?",
|
||||
@"Sorry, there is no help available.\n\nThis message brought to you by We Don't Document, Inc.\n\n", @"Rats", @"Good, I never read it anyway", nil);
|
||||
}
|
||||
|
||||
|
||||
/* Set the working directory to the .app's parent directory */
|
||||
- (void) setupWorkingDirectory:(BOOL)shouldChdir
|
||||
{
|
||||
if (shouldChdir)
|
||||
{
|
||||
char parentdir[MAXPATHLEN];
|
||||
CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle());
|
||||
CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url);
|
||||
if (CFURLGetFileSystemRepresentation(url2, true, (UInt8 *)parentdir, MAXPATHLEN)) {
|
||||
assert ( chdir (parentdir) == 0 ); /* chdir to the binary app's parent */
|
||||
}
|
||||
CFRelease(url);
|
||||
CFRelease(url2);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#if SDL_USE_NIB_FILE
|
||||
|
||||
/* Fix menu to contain the real app name instead of "SDL App" */
|
||||
- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName
|
||||
{
|
||||
NSRange aRange;
|
||||
NSEnumerator *enumerator;
|
||||
NSMenuItem *menuItem;
|
||||
|
||||
aRange = [[aMenu title] rangeOfString:@"SDL App"];
|
||||
if (aRange.length != 0)
|
||||
[aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]];
|
||||
|
||||
enumerator = [[aMenu itemArray] objectEnumerator];
|
||||
while ((menuItem = [enumerator nextObject]))
|
||||
{
|
||||
aRange = [[menuItem title] rangeOfString:@"SDL App"];
|
||||
if (aRange.length != 0)
|
||||
[menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]];
|
||||
if ([menuItem hasSubmenu])
|
||||
[self fixMenu:[menuItem submenu] withAppName:appName];
|
||||
}
|
||||
[ aMenu sizeToFit ];
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
static void setApplicationMenu(void)
|
||||
{
|
||||
/* warning: this code is very odd */
|
||||
NSMenu *appleMenu;
|
||||
NSMenuItem *menuItem;
|
||||
NSString *title;
|
||||
NSString *appName;
|
||||
|
||||
appName = getApplicationName();
|
||||
appleMenu = [[NSMenu alloc] initWithTitle:@""];
|
||||
|
||||
/* Add menu items */
|
||||
title = [@"About " stringByAppendingString:appName];
|
||||
[appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""];
|
||||
|
||||
[appleMenu addItem:[NSMenuItem separatorItem]];
|
||||
|
||||
title = [@"Hide " stringByAppendingString:appName];
|
||||
[appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"];
|
||||
|
||||
menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"];
|
||||
[menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)];
|
||||
|
||||
[appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""];
|
||||
|
||||
[appleMenu addItem:[NSMenuItem separatorItem]];
|
||||
|
||||
title = [@"Quit " stringByAppendingString:appName];
|
||||
[appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"];
|
||||
|
||||
|
||||
/* Put menu into the menubar */
|
||||
menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""];
|
||||
[menuItem setSubmenu:appleMenu];
|
||||
[[NSApp mainMenu] addItem:menuItem];
|
||||
|
||||
/* Tell the application object that this is now the application menu */
|
||||
[NSApp setAppleMenu:appleMenu];
|
||||
|
||||
/* Finally give up our references to the objects */
|
||||
[appleMenu release];
|
||||
[menuItem release];
|
||||
}
|
||||
|
||||
/* Create a window menu */
|
||||
static void setupWindowMenu(void)
|
||||
{
|
||||
NSMenu *windowMenu;
|
||||
NSMenuItem *windowMenuItem;
|
||||
NSMenuItem *menuItem;
|
||||
|
||||
windowMenu = [[NSMenu alloc] initWithTitle:@"Window"];
|
||||
|
||||
/* "Minimize" item */
|
||||
menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"];
|
||||
[windowMenu addItem:menuItem];
|
||||
[menuItem release];
|
||||
|
||||
/* Put menu into the menubar */
|
||||
windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""];
|
||||
[windowMenuItem setSubmenu:windowMenu];
|
||||
[[NSApp mainMenu] addItem:windowMenuItem];
|
||||
|
||||
/* Tell the application object that this is now the window menu */
|
||||
[NSApp setWindowsMenu:windowMenu];
|
||||
|
||||
/* Finally give up our references to the objects */
|
||||
[windowMenu release];
|
||||
[windowMenuItem release];
|
||||
}
|
||||
|
||||
/* Replacement for NSApplicationMain */
|
||||
static void CustomApplicationMain (int argc, char **argv)
|
||||
{
|
||||
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
|
||||
SDLMain *sdlMain;
|
||||
|
||||
/* Ensure the application object is initialised */
|
||||
[SDLApplication sharedApplication];
|
||||
|
||||
#ifdef SDL_USE_CPS
|
||||
{
|
||||
CPSProcessSerNum PSN;
|
||||
/* Tell the dock about us */
|
||||
if (!CPSGetCurrentProcess(&PSN))
|
||||
if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103))
|
||||
if (!CPSSetFrontProcess(&PSN))
|
||||
[SDLApplication sharedApplication];
|
||||
}
|
||||
#endif /* SDL_USE_CPS */
|
||||
|
||||
/* Set up the menubar */
|
||||
[NSApp setMainMenu:[[NSMenu alloc] init]];
|
||||
setApplicationMenu();
|
||||
setupWindowMenu();
|
||||
|
||||
/* Create SDLMain and make it the app delegate */
|
||||
sdlMain = [[SDLMain alloc] init];
|
||||
[NSApp setDelegate:sdlMain];
|
||||
|
||||
/* Start the main event loop */
|
||||
[NSApp run];
|
||||
|
||||
[sdlMain release];
|
||||
[pool release];
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* Catch document open requests...this lets us notice files when the app
|
||||
* was launched by double-clicking a document, or when a document was
|
||||
* dragged/dropped on the app's icon. You need to have a
|
||||
* CFBundleDocumentsType section in your Info.plist to get this message,
|
||||
* apparently.
|
||||
*
|
||||
* Files are added to gArgv, so to the app, they'll look like command line
|
||||
* arguments. Previously, apps launched from the finder had nothing but
|
||||
* an argv[0].
|
||||
*
|
||||
* This message may be received multiple times to open several docs on launch.
|
||||
*
|
||||
* This message is ignored once the app's mainline has been called.
|
||||
*/
|
||||
- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename
|
||||
{
|
||||
const char *temparg;
|
||||
size_t arglen;
|
||||
char *arg;
|
||||
char **newargv;
|
||||
|
||||
if (!gFinderLaunch) /* MacOS is passing command line args. */
|
||||
return FALSE;
|
||||
|
||||
if (gCalledAppMainline) /* app has started, ignore this document. */
|
||||
return FALSE;
|
||||
|
||||
temparg = [filename UTF8String];
|
||||
arglen = SDL_strlen(temparg) + 1;
|
||||
arg = (char *) SDL_malloc(arglen);
|
||||
if (arg == NULL)
|
||||
return FALSE;
|
||||
|
||||
newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2));
|
||||
if (newargv == NULL)
|
||||
{
|
||||
SDL_free(arg);
|
||||
return FALSE;
|
||||
}
|
||||
gArgv = newargv;
|
||||
|
||||
SDL_strlcpy(arg, temparg, arglen);
|
||||
gArgv[gArgc++] = arg;
|
||||
gArgv[gArgc] = NULL;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/* Called when the internal event loop has just started running */
|
||||
- (void) applicationDidFinishLaunching: (NSNotification *) note
|
||||
{
|
||||
int status;
|
||||
|
||||
/* Set the working directory to the .app's parent directory */
|
||||
[self setupWorkingDirectory:gFinderLaunch];
|
||||
|
||||
#if SDL_USE_NIB_FILE
|
||||
/* Set the main menu to contain the real app name instead of "SDL App" */
|
||||
[self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()];
|
||||
#endif
|
||||
|
||||
/* Hand off to main application code */
|
||||
gCalledAppMainline = TRUE;
|
||||
status = SDL_main (gArgc, gArgv);
|
||||
|
||||
/* We're done, thank you for playing */
|
||||
exit(status);
|
||||
}
|
||||
@end
|
||||
|
||||
|
||||
@implementation NSString (ReplaceSubString)
|
||||
|
||||
- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString
|
||||
{
|
||||
unsigned int bufferSize;
|
||||
unsigned int selfLen = [self length];
|
||||
unsigned int aStringLen = [aString length];
|
||||
unichar *buffer;
|
||||
NSRange localRange;
|
||||
NSString *result;
|
||||
|
||||
bufferSize = selfLen + aStringLen - aRange.length;
|
||||
buffer = NSAllocateMemoryPages(bufferSize*sizeof(unichar));
|
||||
|
||||
/* Get first part into buffer */
|
||||
localRange.location = 0;
|
||||
localRange.length = aRange.location;
|
||||
[self getCharacters:buffer range:localRange];
|
||||
|
||||
/* Get middle part into buffer */
|
||||
localRange.location = 0;
|
||||
localRange.length = aStringLen;
|
||||
[aString getCharacters:(buffer+aRange.location) range:localRange];
|
||||
|
||||
/* Get last part into buffer */
|
||||
localRange.location = aRange.location + aRange.length;
|
||||
localRange.length = selfLen - localRange.location;
|
||||
[self getCharacters:(buffer+aRange.location+aStringLen) range:localRange];
|
||||
|
||||
/* Build output string */
|
||||
result = [NSString stringWithCharacters:buffer length:bufferSize];
|
||||
|
||||
NSDeallocateMemoryPages(buffer, bufferSize);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
|
||||
|
||||
#ifdef main
|
||||
# undef main
|
||||
#endif
|
||||
|
||||
|
||||
/* Main entry point to executable - should *not* be SDL_main! */
|
||||
int main (int argc, char **argv)
|
||||
{
|
||||
/* Copy the arguments into a global variable */
|
||||
/* This is passed if we are launched by double-clicking */
|
||||
if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) {
|
||||
gArgv = (char **) SDL_malloc(sizeof (char *) * 2);
|
||||
gArgv[0] = argv[0];
|
||||
gArgv[1] = NULL;
|
||||
gArgc = 1;
|
||||
gFinderLaunch = YES;
|
||||
} else {
|
||||
int i;
|
||||
gArgc = argc;
|
||||
gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1));
|
||||
for (i = 0; i <= argc; i++)
|
||||
gArgv[i] = argv[i];
|
||||
gFinderLaunch = NO;
|
||||
}
|
||||
|
||||
#if SDL_USE_NIB_FILE
|
||||
[SDLApplication poseAsClass:[NSApplication class]];
|
||||
NSApplicationMain (argc, argv);
|
||||
#else
|
||||
CustomApplicationMain (argc, argv);
|
||||
#endif
|
||||
return 0;
|
||||
}
|
|
@ -3,8 +3,7 @@
|
|||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include "SDL.h"
|
||||
#include "SDL_Opengl.h"
|
||||
#include <GLFW/glfw3.h>
|
||||
#include "nanosvg.h"
|
||||
#include "tesselator.h"
|
||||
|
||||
|
@ -12,12 +11,14 @@
|
|||
void* stdAlloc(void* userData, unsigned int size)
|
||||
{
|
||||
int* allocated = ( int*)userData;
|
||||
TESS_NOTUSED(userData);
|
||||
*allocated += (int)size;
|
||||
return malloc(size);
|
||||
}
|
||||
|
||||
void stdFree(void* userData, void* ptr)
|
||||
{
|
||||
TESS_NOTUSED(userData);
|
||||
free(ptr);
|
||||
}
|
||||
|
||||
|
@ -31,18 +32,22 @@ struct MemPool
|
|||
void* poolAlloc( void* userData, unsigned int size )
|
||||
{
|
||||
struct MemPool* pool = (struct MemPool*)userData;
|
||||
size = (size+0x7) & ~0x7;
|
||||
if (pool->size + size < pool->cap)
|
||||
{
|
||||
unsigned char* ptr = pool->buf + pool->size;
|
||||
pool->size += size;
|
||||
return ptr;
|
||||
}
|
||||
printf("out of mem: %d < %d!\n", pool->size + size, pool->cap);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void poolFree( void* userData, void* ptr )
|
||||
{
|
||||
// empty
|
||||
TESS_NOTUSED(userData);
|
||||
TESS_NOTUSED(ptr);
|
||||
}
|
||||
|
||||
|
||||
|
@ -50,37 +55,55 @@ void poolFree( void* userData, void* ptr )
|
|||
#define USE_POOL 1
|
||||
|
||||
|
||||
int run = 1;
|
||||
|
||||
static void key(GLFWwindow* window, int key, int scancode, int action, int mods)
|
||||
{
|
||||
TESS_NOTUSED(scancode);
|
||||
TESS_NOTUSED(mods);
|
||||
if (key == GLFW_KEY_ESCAPE && action == GLFW_PRESS)
|
||||
glfwSetWindowShouldClose(window, GL_TRUE);
|
||||
if (key == GLFW_KEY_SPACE && action == GLFW_PRESS)
|
||||
run = !run;
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
int done;
|
||||
SDL_Event event;
|
||||
SDL_Surface* screen;
|
||||
const SDL_VideoInfo* vi;
|
||||
GLFWwindow* window;
|
||||
const GLFWvidmode* mode;
|
||||
int width,height,i,j;
|
||||
struct SVGPath* bg;
|
||||
struct SVGPath* fg;
|
||||
struct SVGPath* it;
|
||||
float bounds[4],view[4],cx,cy,w,offx,offy;
|
||||
float t = 0.0f;
|
||||
Uint32 lastTime,time;
|
||||
float t = 0.0f, pt = 0.0f;
|
||||
TESSalloc ma;
|
||||
TESStesselator* tess = 0;
|
||||
const int nvp = 6;
|
||||
unsigned char* vflags = 0;
|
||||
int nvflags = 0;
|
||||
int run = 1;
|
||||
#ifdef USE_POOL
|
||||
struct MemPool pool;
|
||||
unsigned char mem[1024*512];
|
||||
unsigned char mem[1024*1024];
|
||||
#else
|
||||
int allocated = 0;
|
||||
#endif
|
||||
|
||||
TESS_NOTUSED(argc);
|
||||
TESS_NOTUSED(argv);
|
||||
|
||||
if (!glfwInit()) {
|
||||
printf("Failed to init GLFW.");
|
||||
return -1;
|
||||
}
|
||||
|
||||
printf("loading...\n");
|
||||
// Load assets
|
||||
bg = svgParseFromFile("bg.svg");
|
||||
bg = svgParseFromFile("../Bin/bg.svg");
|
||||
if (!bg) return -1;
|
||||
fg = svgParseFromFile("fg.svg");
|
||||
fg = svgParseFromFile("../Bin/fg.svg");
|
||||
if (!fg) return -1;
|
||||
|
||||
printf("go...\n");
|
||||
|
||||
// Flip y
|
||||
for (it = bg; it != NULL; it = it->next)
|
||||
|
@ -178,28 +201,17 @@ int main(int argc, char *argv[])
|
|||
|
||||
#endif
|
||||
|
||||
|
||||
if (SDL_Init(SDL_INIT_EVERYTHING) < 0)
|
||||
{
|
||||
fprintf(stderr, "Couldn't initialize SDL: %s\n", SDL_GetError());
|
||||
mode = glfwGetVideoMode(glfwGetPrimaryMonitor());
|
||||
width = mode->width - 40;
|
||||
height = mode->height - 80;
|
||||
window = glfwCreateWindow(width, height, "Libtess2 Demo", NULL, NULL);
|
||||
if (!window) {
|
||||
glfwTerminate();
|
||||
return -1;
|
||||
}
|
||||
|
||||
// Init OpenGL
|
||||
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
|
||||
SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 24);
|
||||
SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 8);
|
||||
SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 8);
|
||||
SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 8);
|
||||
SDL_GL_SetAttribute(SDL_GL_ALPHA_SIZE, 8);
|
||||
|
||||
vi = SDL_GetVideoInfo();
|
||||
width = vi->current_w - 20;
|
||||
height = vi->current_h - 80;
|
||||
screen = SDL_SetVideoMode(width, height, 0, SDL_OPENGL);
|
||||
if (!screen) return -1;
|
||||
|
||||
SDL_WM_SetCaption("libtess2 Demo", 0);
|
||||
|
||||
glfwSetKeyCallback(window, key);
|
||||
glfwMakeContextCurrent(window);
|
||||
|
||||
// Adjust bounds so that we get nice view of the bg.
|
||||
cx = (bounds[0]+bounds[2])/2;
|
||||
|
@ -207,39 +219,16 @@ int main(int argc, char *argv[])
|
|||
w = (bounds[2]-bounds[0])/2;
|
||||
view[0] = cx - w*1.2f;
|
||||
view[2] = cx + w*1.2f;
|
||||
view[1] = cy - w*1.2f*height/width;
|
||||
view[3] = cy + w*1.2f*height/width;
|
||||
view[1] = cy - w*1.2f*(float)height/(float)width;
|
||||
view[3] = cy + w*1.2f*(float)height/(float)width;
|
||||
|
||||
lastTime = SDL_GetTicks();
|
||||
done = 0;
|
||||
while (!done)
|
||||
glfwSetTime(0);
|
||||
|
||||
while (!glfwWindowShouldClose(window))
|
||||
{
|
||||
while (SDL_PollEvent(&event))
|
||||
{
|
||||
switch (event.type)
|
||||
{
|
||||
case SDL_MOUSEMOTION:
|
||||
break;
|
||||
case SDL_MOUSEBUTTONDOWN:
|
||||
break;
|
||||
case SDL_KEYDOWN:
|
||||
if (event.key.keysym.sym == SDLK_ESCAPE)
|
||||
done = 1;
|
||||
else if (event.key.keysym.sym == SDLK_SPACE)
|
||||
run ^= 1;
|
||||
break;
|
||||
case SDL_QUIT:
|
||||
done = 1;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
time = SDL_GetTicks();
|
||||
if (run)
|
||||
t += (time-lastTime) / 1000.0f;
|
||||
lastTime = time;
|
||||
float ct = (float)glfwGetTime();
|
||||
if (run) t += ct - pt;
|
||||
pt = ct;
|
||||
|
||||
// Update and render
|
||||
glViewport(0, 0, width, height);
|
||||
|
@ -375,7 +364,8 @@ int main(int argc, char *argv[])
|
|||
}
|
||||
|
||||
glEnable(GL_DEPTH_TEST);
|
||||
SDL_GL_SwapBuffers();
|
||||
glfwSwapBuffers(window);
|
||||
glfwPollEvents();
|
||||
}
|
||||
|
||||
if (tess) tessDeleteTess(tess);
|
||||
|
@ -386,6 +376,6 @@ int main(int argc, char *argv[])
|
|||
svgDelete(bg);
|
||||
svgDelete(fg);
|
||||
|
||||
SDL_Quit();
|
||||
glfwTerminate();
|
||||
return 0;
|
||||
}
|
|
@ -102,7 +102,7 @@ enum TessWindingRule
|
|||
// const TESSindex count = elems[i * 2 + 1];
|
||||
// glBegin(GL_LINE_LOOP);
|
||||
// for (int j = 0; j < count; j++) {
|
||||
// glVertex2fv(&verts[(base+count) * vertexSize]);
|
||||
// glVertex2fv(&verts[(base+j) * vertexSize]);
|
||||
// }
|
||||
// glEnd();
|
||||
// }
|
||||
|
@ -121,6 +121,8 @@ typedef struct TESSalloc TESSalloc;
|
|||
|
||||
#define TESS_UNDEF (~(TESSindex)0)
|
||||
|
||||
#define TESS_NOTUSED(v) do { (void)(1 ? (void)0 : ( (void)(v) ) ); } while(0)
|
||||
|
||||
// Custom memory allocator interface.
|
||||
// The internal memory allocator allocates mesh edges, vertices and faces
|
||||
// as well as dictionary nodes and active regions in buckets and uses simple
|
||||
|
@ -150,9 +152,19 @@ struct TESSalloc
|
|||
int regionBucketSize; // 256
|
||||
int extraVertices; // Number of extra vertices allocated for the priority queue.
|
||||
};
|
||||
|
||||
|
||||
|
||||
//
|
||||
// Example use:
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
|
||||
// tessNewTess() - Creates a new tesselator.
|
||||
// Use tessDeleteTess() to delete the tesselator.
|
||||
// Parameters:
|
||||
// alloc - pointer to a filled TESSalloc struct or NULL to use default malloc based allocator.
|
||||
// Returns:
|
||||
// new tesselator object.
|
||||
TESStesselator* tessNewTess( TESSalloc* alloc );
|
||||
|
|
|
@ -438,6 +438,7 @@ static void GetIntersectData( TESStesselator *tess, TESSvertex *isect,
|
|||
*/
|
||||
{
|
||||
TESSreal weights[4];
|
||||
TESS_NOTUSED( tess );
|
||||
|
||||
isect->coords[0] = isect->coords[1] = isect->coords[2] = 0;
|
||||
isect->idx = TESS_UNDEF;
|
||||
|
|
|
@ -46,6 +46,7 @@
|
|||
|
||||
#define Dot(u,v) (u[0]*v[0] + u[1]*v[1] + u[2]*v[2])
|
||||
|
||||
#if defined(FOR_TRITE_TEST_PROGRAM) || defined(TRUE_PROJECT)
|
||||
static void Normalize( TESSreal v[3] )
|
||||
{
|
||||
TESSreal len = v[0]*v[0] + v[1]*v[1] + v[2]*v[2];
|
||||
|
@ -56,6 +57,7 @@ static void Normalize( TESSreal v[3] )
|
|||
v[1] /= len;
|
||||
v[2] /= len;
|
||||
}
|
||||
#endif
|
||||
|
||||
#define ABS(x) ((x) < 0 ? -(x) : (x))
|
||||
|
||||
|
@ -438,16 +440,19 @@ int tessMeshSetWindingNumber( TESSmesh *mesh, int value,
|
|||
|
||||
void* heapAlloc( void* userData, unsigned int size )
|
||||
{
|
||||
TESS_NOTUSED( userData );
|
||||
return malloc( size );
|
||||
}
|
||||
|
||||
void* heapRealloc( void *userData, void* ptr, unsigned int size )
|
||||
{
|
||||
TESS_NOTUSED( userData );
|
||||
return realloc( ptr, size );
|
||||
}
|
||||
|
||||
void heapFree( void* userData, void* ptr )
|
||||
{
|
||||
TESS_NOTUSED( userData );
|
||||
free( ptr );
|
||||
}
|
||||
|
||||
|
|
45
premake4.lua
Normal file
45
premake4.lua
Normal file
|
@ -0,0 +1,45 @@
|
|||
|
||||
local action = _ACTION or ""
|
||||
|
||||
solution "libtess2"
|
||||
location ( "Build" )
|
||||
configurations { "Debug", "Release" }
|
||||
platforms {"native", "x64", "x32"}
|
||||
|
||||
configuration "Debug"
|
||||
defines { "DEBUG" }
|
||||
flags { "Symbols", "ExtraWarnings"}
|
||||
|
||||
configuration "Release"
|
||||
defines { "NDEBUG" }
|
||||
flags { "Optimize", "ExtraWarnings"}
|
||||
|
||||
|
||||
project "tess2"
|
||||
language "C"
|
||||
kind "StaticLib"
|
||||
includedirs { "Include", "Source" }
|
||||
files { "Source/*.c" }
|
||||
targetdir("Build")
|
||||
|
||||
-- more dynamic example
|
||||
project "example"
|
||||
kind "ConsoleApp"
|
||||
language "C"
|
||||
links { "tess2" }
|
||||
files { "Example/example.c", "Contrib/*.c" }
|
||||
includedirs { "Include", "Contrib" }
|
||||
targetdir("Build")
|
||||
|
||||
configuration { "linux" }
|
||||
linkoptions { "`pkg-config --libs glfw3`" }
|
||||
links { "GL", "GLU", "m", "GLEW" }
|
||||
defines { "NANOVG_GLEW" }
|
||||
|
||||
configuration { "windows" }
|
||||
links { "glfw3", "gdi32", "winmm", "user32", "GLEW", "glu32","opengl32" }
|
||||
defines { "NANOVG_GLEW" }
|
||||
|
||||
configuration { "macosx" }
|
||||
links { "glfw3" }
|
||||
linkoptions { "-framework OpenGL", "-framework Cocoa", "-framework IOKit", "-framework CoreVideo" }
|
Loading…
Add table
Reference in a new issue