[Bf-blender-cvs] [04785c5] depsgraph_refactor: Import v2012.07 of OGDF into extern libs

Joshua Leung noreply at git.blender.org
Thu Jan 29 14:12:55 CET 2015


Commit: 04785c50701c03bdcdd88aed7769adf3ecebbe94
Author: Joshua Leung
Date:   Tue Jan 27 14:37:50 2015 +1300
Branches: depsgraph_refactor
https://developer.blender.org/rB04785c50701c03bdcdd88aed7769adf3ecebbe94

Import v2012.07 of OGDF into extern libs

As a quick test, this imports OGDF into the source tree (later it could be removed
and added as a prebuilt static lib instead). The intention here is to use it for
drawing the debug graphs for the depsgraph.

Only scons is supported right now.

===================================================================

M	build_files/scons/tools/btools.py
M	extern/SConscript
A	extern/ogdf/LICENSE.txt
A	extern/ogdf/README.txt
A	extern/ogdf/SConscript
A	extern/ogdf/ogdf/augmentation/DfsMakeBiconnected.h
A	extern/ogdf/ogdf/augmentation/PlanarAugmentation.h
A	extern/ogdf/ogdf/augmentation/PlanarAugmentationFix.h
A	extern/ogdf/ogdf/basic/AdjEntryArray.h
A	extern/ogdf/ogdf/basic/Array.h
A	extern/ogdf/ogdf/basic/Array2D.h
A	extern/ogdf/ogdf/basic/ArrayBuffer.h
A	extern/ogdf/ogdf/basic/Barrier.h
A	extern/ogdf/ogdf/basic/BinaryHeap.h
A	extern/ogdf/ogdf/basic/BinaryHeap2.h
A	extern/ogdf/ogdf/basic/BoundedQueue.h
A	extern/ogdf/ogdf/basic/BoundedStack.h
A	extern/ogdf/ogdf/basic/CombinatorialEmbedding.h
A	extern/ogdf/ogdf/basic/Constraints.h
A	extern/ogdf/ogdf/basic/CriticalSection.h
A	extern/ogdf/ogdf/basic/DisjointSets.h
A	extern/ogdf/ogdf/basic/DualGraph.h
A	extern/ogdf/ogdf/basic/EFreeList.h
A	extern/ogdf/ogdf/basic/EList.h
A	extern/ogdf/ogdf/basic/EdgeArray.h
A	extern/ogdf/ogdf/basic/EdgeComparer.h
A	extern/ogdf/ogdf/basic/EdgeComparerSimple.h
A	extern/ogdf/ogdf/basic/FaceArray.h
A	extern/ogdf/ogdf/basic/FaceSet.h
A	extern/ogdf/ogdf/basic/Graph.h
A	extern/ogdf/ogdf/basic/GraphAttributes.h
A	extern/ogdf/ogdf/basic/GraphCopy.h
A	extern/ogdf/ogdf/basic/GraphCopyAttributes.h
A	extern/ogdf/ogdf/basic/GraphObserver.h
A	extern/ogdf/ogdf/basic/Graph_d.h
A	extern/ogdf/ogdf/basic/GridLayout.h
A	extern/ogdf/ogdf/basic/GridLayoutMapped.h
A	extern/ogdf/ogdf/basic/HashArray.h
A	extern/ogdf/ogdf/basic/HashArray2D.h
A	extern/ogdf/ogdf/basic/HashIterator2D.h
A	extern/ogdf/ogdf/basic/Hashing.h
A	extern/ogdf/ogdf/basic/HeapBase.h
A	extern/ogdf/ogdf/basic/HyperGraph.h
A	extern/ogdf/ogdf/basic/IncNodeInserter.h
A	extern/ogdf/ogdf/basic/Layout.h
A	extern/ogdf/ogdf/basic/List.h
A	extern/ogdf/ogdf/basic/Logger.h
A	extern/ogdf/ogdf/basic/Math.h
A	extern/ogdf/ogdf/basic/MinHeap.h
A	extern/ogdf/ogdf/basic/MinPriorityQueue.h
A	extern/ogdf/ogdf/basic/Module.h
A	extern/ogdf/ogdf/basic/ModuleOption.h
A	extern/ogdf/ogdf/basic/NearestRectangleFinder.h
A	extern/ogdf/ogdf/basic/NodeArray.h
A	extern/ogdf/ogdf/basic/NodeComparer.h
A	extern/ogdf/ogdf/basic/NodeSet.h
A	extern/ogdf/ogdf/basic/PreprocessorLayout.h
A	extern/ogdf/ogdf/basic/Queue.h
A	extern/ogdf/ogdf/basic/SList.h
A	extern/ogdf/ogdf/basic/Skiplist.h
A	extern/ogdf/ogdf/basic/Stack.h
A	extern/ogdf/ogdf/basic/String.h
A	extern/ogdf/ogdf/basic/System.h
A	extern/ogdf/ogdf/basic/Thread.h
A	extern/ogdf/ogdf/basic/Timeouter.h
A	extern/ogdf/ogdf/basic/TopologyModule.h
A	extern/ogdf/ogdf/basic/UMLGraph.h
A	extern/ogdf/ogdf/basic/basic.h
A	extern/ogdf/ogdf/basic/comparer.h
A	extern/ogdf/ogdf/basic/exceptions.h
A	extern/ogdf/ogdf/basic/extended_graph_alg.h
A	extern/ogdf/ogdf/basic/geometry.h
A	extern/ogdf/ogdf/basic/graph_generators.h
A	extern/ogdf/ogdf/basic/memory.h
A	extern/ogdf/ogdf/basic/precondition.h
A	extern/ogdf/ogdf/basic/simple_graph_alg.h
A	extern/ogdf/ogdf/basic/tuples.h
A	extern/ogdf/ogdf/cluster/CPlanarEdgeInserter.h
A	extern/ogdf/ogdf/cluster/CPlanarSubClusteredGraph.h
A	extern/ogdf/ogdf/cluster/CconnectClusterPlanar.h
A	extern/ogdf/ogdf/cluster/CconnectClusterPlanarEmbed.h
A	extern/ogdf/ogdf/cluster/ClusterArray.h
A	extern/ogdf/ogdf/cluster/ClusterGraph.h
A	extern/ogdf/ogdf/cluster/ClusterGraphAttributes.h
A	extern/ogdf/ogdf/cluster/ClusterGraphCopyAttributes.h
A	extern/ogdf/ogdf/cluster/ClusterGraphObserver.h
A	extern/ogdf/ogdf/cluster/ClusterOrthoLayout.h
A	extern/ogdf/ogdf/cluster/ClusterOrthoShaper.h
A	extern/ogdf/ogdf/cluster/ClusterPlanRep.h
A	extern/ogdf/ogdf/cluster/ClusterPlanarizationLayout.h
A	extern/ogdf/ogdf/cluster/ClusterSet.h
A	extern/ogdf/ogdf/cluster/MaximumCPlanarSubgraph.h
A	extern/ogdf/ogdf/decomposition/BCTree.h
A	extern/ogdf/ogdf/decomposition/DynamicBCTree.h
A	extern/ogdf/ogdf/decomposition/DynamicPlanarSPQRTree.h
A	extern/ogdf/ogdf/decomposition/DynamicSPQRForest.h
A	extern/ogdf/ogdf/decomposition/DynamicSPQRTree.h
A	extern/ogdf/ogdf/decomposition/DynamicSkeleton.h
A	extern/ogdf/ogdf/decomposition/PertinentGraph.h
A	extern/ogdf/ogdf/decomposition/PlanarSPQRTree.h
A	extern/ogdf/ogdf/decomposition/SPQRTree.h
A	extern/ogdf/ogdf/decomposition/Skeleton.h
A	extern/ogdf/ogdf/decomposition/StaticPlanarSPQRTree.h
A	extern/ogdf/ogdf/decomposition/StaticSPQRTree.h
A	extern/ogdf/ogdf/decomposition/StaticSkeleton.h
A	extern/ogdf/ogdf/energybased/CoinTutteLayout.h
A	extern/ogdf/ogdf/energybased/DavidsonHarel.h
A	extern/ogdf/ogdf/energybased/DavidsonHarelLayout.h
A	extern/ogdf/ogdf/energybased/FMMMLayout.h
A	extern/ogdf/ogdf/energybased/FastMultipoleEmbedder.h
A	extern/ogdf/ogdf/energybased/GEMLayout.h
A	extern/ogdf/ogdf/energybased/MultilevelLayout.h
A	extern/ogdf/ogdf/energybased/SpringEmbedderFR.h
A	extern/ogdf/ogdf/energybased/SpringEmbedderFRExact.h
A	extern/ogdf/ogdf/energybased/SpringEmbedderKK.h
A	extern/ogdf/ogdf/energybased/StressMajorizationSimple.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/BarycenterPlacer.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/CirclePlacer.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/EdgeCoverMerger.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/IndependentSetMerger.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/InitialPlacer.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/LocalBiconnectedMerger.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/MMMExampleFastLayout.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/MMMExampleNiceLayout.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/MMMExampleNoTwistLayout.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/MatchingMerger.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/MedianPlacer.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/MixedForceLayout.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/ModularMultilevelMixer.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/MultilevelBuilder.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/RandomMerger.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/RandomPlacer.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/ScalingLayout.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/SolarMerger.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/SolarPlacer.h
A	extern/ogdf/ogdf/energybased/multilevelmixer/ZeroPlacer.h
A	extern/ogdf/ogdf/external/abacus.h
A	extern/ogdf/ogdf/external/coin.h
A	extern/ogdf/ogdf/fileformats/DinoLineBuffer.h
A	extern/ogdf/ogdf/fileformats/DinoTools.h
A	extern/ogdf/ogdf/fileformats/DinoUmlDiagramGraph.h
A	extern/ogdf/ogdf/fileformats/DinoUmlModelGraph.h
A	extern/ogdf/ogdf/fileformats/DinoUmlToGraphConverter.h
A	extern/ogdf/ogdf/fileformats/DinoXmlParser.h
A	extern/ogdf/ogdf/fileformats/DinoXmlScanner.h
A	extern/ogdf/ogdf/fileformats/GmlParser.h
A	extern/ogdf/ogdf/fileformats/Ogml.h
A	extern/ogdf/ogdf/fileformats/OgmlParser.h
A	extern/ogdf/ogdf/fileformats/SteinLibParser.h
A	extern/ogdf/ogdf/fileformats/XmlObject.h
A	extern/ogdf/ogdf/fileformats/XmlParser.h
A	extern/ogdf/ogdf/fileformats/simple_graph_load.h
A	extern/ogdf/ogdf/graphalg/CliqueFinder.h
A	extern/ogdf/ogdf/graphalg/Clusterer.h
A	extern/ogdf/ogdf/graphalg/ConvexHull.h
A	extern/ogdf/ogdf/graphalg/Dijkstra.h
A	extern/ogdf/ogdf/graphalg/GraphReduction.h
A	extern/ogdf/ogdf/graphalg/MinCostFlowReinelt.h
A	extern/ogdf/ogdf/graphalg/MinimumCut.h
A	extern/ogdf/ogdf/graphalg/PageRank.h
A	extern/ogdf/ogdf/graphalg/ShortestPathWithBFM.h
A	extern/ogdf/ogdf/internal/augmentation/PALabel.h
A	extern/ogdf/ogdf/internal/basic/MallocMemoryAllocator.h
A	extern/ogdf/ogdf/internal/basic/PoolMemoryAllocator.h
A	extern/ogdf/ogdf/internal/basic/intrinsics.h
A	extern/ogdf/ogdf/internal/basic/list_templates.h
A	extern/ogdf/ogdf/internal/cluster/CPlanarSubClusteredST.h
A	extern/ogdf/ogdf/internal/cluster/ClusterPQContainer.h
A	extern/ogdf/ogdf/internal/cluster/Cluster_ChunkConnection.h
A	extern/ogdf/ogdf/internal/cluster/Cluster_CutConstraint.h
A	extern/ogdf/ogdf/internal/cluster/Cluster_EdgeVar.h
A	extern/ogdf/ogdf/internal/cluster/Cluster_MaxPlanarEdges.h
A	extern/ogdf/ogdf/internal/cluster/KuratowskiConstraint.h
A	extern/ogdf/ogdf/internal/cluster/MaxCPlanar_Master.h
A	extern/ogdf/ogdf/internal/cluster/MaxCPlanar_MinimalClusterConnection.h
A	extern/ogdf/ogdf/internal/cluster/MaxCPlanar_Sub.h
A	extern/ogdf/ogdf/internal/cluster/basics.h
A	extern/ogdf/ogdf/internal/energybased/AdjacencyOracle.h
A	extern/ogdf/ogdf/internal/energybased/Attraction.h
A	extern/ogdf/ogdf/internal/energybased/EdgeAttributes.h
A	extern/ogdf/ogdf/internal/energybased/EnergyFunction.h
A	extern/ogdf/ogdf/internal/energybased/FruchtermanReingold.h
A	extern/ogdf/ogdf/internal/energybased/IntersectionRectangle.h
A	extern/ogdf/ogdf/internal/energybased/MultilevelGraph.h
A	extern/ogdf/ogdf/internal/energybased/NMM.h
A	extern/ogdf/ogdf/internal/energybased/NodeAttributes.h
A	extern/ogdf/ogdf/internal/energybased/NodePairEnergy.h
A	extern/ogdf/ogdf/internal/energybased/Overlap.h
A	extern/ogdf/ogdf/internal/energybased/ParticleInfo.h
A	extern/ogdf/ogdf/internal/energybased/Planarity.h
A	extern/ogdf/ogdf/internal/energybased/PlanarityGrid.h
A	extern/ogdf/ogdf/internal/energybased/QuadTreeNM.h
A	extern/ogdf/ogdf/internal/energybased/QuadTreeNodeNM.h
A	extern/ogdf/ogdf/internal/energybased/Repulsion.h
A	extern/ogdf/ogdf/internal/energybased/UniformGrid.h
A	extern/ogdf/ogdf/internal/lpsolver/LPSolver_coin.h
A	extern/ogdf/ogdf/internal/orthogonal/NodeInfo.h
A	extern/ogdf/ogdf/internal/orthogonal/RoutingChannel.h
A	extern/ogdf/ogdf/internal/planarity/BoyerMyrvoldInit.h
A	extern/ogdf/ogdf/internal/planarity/BoyerMyrvoldPlanar.h
A	extern/ogdf/ogdf/internal/planarity/ConnectedSubgraph.h
A	extern/ogdf/ogdf/internal/planarity/EmbedIndicator.h
A	extern/ogdf/ogdf/internal/planarity/EmbedPQTree.h
A	extern/ogdf/ogdf/internal/planarity/EmbedderMaxFaceBiconnectedGraphs.h
A	extern/ogdf/ogdf/internal/planarity/EmbedderMaxFaceBiconnectedGraphsLayers.h
A	extern/ogdf/ogdf/internal/planarity/FindKuratowskis.h
A	extern/ogdf/ogdf/internal/planarity/IndInfo.h
A	extern/ogdf/ogdf/internal/planarity/MDMFLengthAttribute.h
A	extern/ogdf/ogdf/internal/planarity/MaxSequencePQTree.h
A	extern/ogdf/ogdf/internal/planarity/PQBasicKey.h
A	extern/ogdf/ogdf/internal/planarity/PQBasicKeyRoot.h
A	extern/ogdf/ogdf/internal/planarity/PQInternalKey.h
A	extern/ogdf/ogdf/internal/planarity/PQInternalNode.h
A	extern/ogdf/ogdf/internal/planarity/PQLeaf.h
A	extern/ogdf/ogdf/internal/planarity/PQLeafKey.h
A	extern/ogdf/ogdf/internal/planarity/PQNode.h
A	extern/ogdf/ogdf/internal/planarity/PQNodeKey.h
A	extern/ogdf/ogdf/internal/planarity/PQNodeRoot.h
A	extern/ogdf/ogdf/internal/planarity/PQTree.h
A	extern/ogdf/ogdf/internal/planarity/PlanarLeafKey.h
A	extern/ogdf/ogdf/internal/planarity/PlanarPQTree.h
A	extern/ogdf/ogdf/internal/planarity/PlanarSubgraphPQTree.h
A	extern/ogdf/ogdf/internal/planarity/whaInfo.h
A	extern/ogdf/ogdf/internal/steinertree/EdgeWeightedGraph.h
A	extern/ogdf/ogdf/internal/steinertree/EdgeWeightedGraphCopy.h
A	extern/ogdf/ogdf/labeling/ELabelInterface.h
A	extern/ogdf/ogdf/labeling/ELabelPosSimple.h
A	extern/ogdf/ogdf/labeling/EdgeLabel.h
A	extern/ogdf/ogdf/layered/BarycenterHeuristic.h
A	extern/ogdf/ogdf/layered/CoffmanGrahamRanking.h
A	extern/ogdf/ogdf/layered/CrossingsMatrix.h
A	extern/ogdf/ogdf/layered/DfsAcyclicSubgraph.h
A	extern/ogdf/ogdf/layered/ExtendedNestingGraph.h
A	extern/ogdf/ogdf/layered/FastHierarchyLayout.h
A	extern/ogdf/ogdf/layered/FastSimpleHierarchyLayout.h
A	extern/ogdf/ogdf/layered/GreedyCycleRemoval.h
A	extern/ogdf/ogdf/layered/GreedyInsertHeuristic.h
A	extern/ogdf/ogdf/layered/GreedySwitchHeuristic.h
A	extern/ogdf/ogdf/layered/Hierarchy.h
A	extern/ogdf/ogdf/layered/Level.h
A	extern/ogdf/ogdf/layered/LongestPathRanking.h
A	extern/ogdf/ogdf/layered/MedianHeuristic.h
A	extern/ogdf/ogdf/layered/OptimalHierarchyClusterLayout.h
A	extern/ogdf/ogdf/layered/OptimalHierarchyLayout.h
A	extern/ogdf/ogdf/layered/OptimalRanking.h
A	extern/ogdf/ogdf/layered/SiftingHeuristic.h
A	extern/ogdf/ogdf/layered/SplitHeuristic.h
A	extern/ogdf/ogdf/layered/SugiyamaLayout.h
A	extern/ogdf/ogdf/lpsolver/LPSolver.h
A	extern/ogdf/ogdf/misclayout/BalloonLayout.h
A	extern/ogdf/ogdf/misclayout/CircularLayout.h
A	extern/ogdf/ogdf/misclayout/ProcrustesSubLayout.h
A	extern/ogdf/ogdf/module/AcyclicSubgraphModule.h
A	extern/ogdf/ogdf/module/AugmentationModule.h
A	extern/ogdf/ogdf/module/CCLayoutPackModule.h
A	extern/ogdf/ogdf/module/CPlanarSubgraphModule.h
A	extern/ogdf/ogdf/module/ClustererModule.h
A	extern/ogdf/ogdf/module/CrossingMinimizationModule.h
A	extern/ogdf/ogdf/module/EdgeInsertionModule.h
A	extern/ogdf/ogdf/module/EmbedderModule.h
A	extern/ogdf/ogdf/module/FUPSModule.h
A	extern/ogdf/ogdf/module/ForceLayoutModule.h
A	extern/ogdf/ogdf/module/GridLayoutModule.h
A	extern/ogdf/ogdf/module/HierarchyClusterLayoutModule.h
A	extern/ogdf/ogdf/module/HierarchyLayoutModule.h
A	extern/ogdf/ogdf/module/LayoutClusterPlanRepModule.h
A	extern/ogdf/ogdf/module/LayoutModule.h
A	extern/ogdf/ogdf/module/LayoutPlanRepModule.h
A	extern/ogdf/ogdf/module/MMCrossingMinimizationModule.h
A	extern/ogdf/ogdf/module/MMEdgeInsertionModule.h
A	extern/ogdf/ogdf/module/MinCostFlowModule.h
A	extern/ogdf/ogdf/module/MixedModelCrossingsBeautifierModule.h
A	extern/ogdf/ogdf/module/MultilevelLayoutModule.h
A	extern/ogdf/ogdf/module/PlanarSubgraphModule.h
A	extern/ogdf/ogdf/module/PlanarityModule.h
A	extern/ogdf/ogdf/module/RankingModule.h
A	extern/ogdf/ogdf/module/ShellingOrderModule.h
A	extern/ogdf/ogdf/module/ShortestPathModule.h
A	extern/ogdf/ogdf/module/TwoLayerCrossMin.h
A	extern/ogdf/ogdf/module/UMLLayoutModule.h
A	extern/ogdf/ogdf/module/UPRLayoutModule.h
A	extern/ogdf/ogdf/module/UpwardEdgeInserterModule.h
A	extern/ogdf/ogdf/module/UpwardPlanarSubgraphModule.h
A	extern/ogdf/ogdf/module/UpwardPlanarizerModule.h
A	extern/ogdf/ogdf/orthogonal/CompactionConstraintGraph.h
A	extern/ogdf/ogdf/orthogonal/EdgeRouter.h
A	extern/ogdf/ogdf/orthogonal/FlowCompaction.h
A	extern/ogdf/ogdf/orthogonal/LongestPathCompaction.h
A	extern/ogdf/ogdf/orthogonal/MinimumEdgeDistances.h
A	extern/ogdf/ogdf/orthogonal/OrthoLayout.h
A	extern/ogdf/ogdf/orthogonal/OrthoRep.h
A	extern/ogdf/ogdf/orthogonal/OrthoShaper.h
A	extern/ogdf/ogdf/packing/ComponentSplitterLayout.h
A	extern/ogdf/ogdf/packing/TileToRowsCCPacker.h
A	extern/ogdf/ogdf/planarity/BoothLueker.h
A	extern/ogdf/ogdf/planarity/BoyerMyrvold.h
A	extern/ogdf/ogdf/planarity/EdgeTypePatterns.h
A	extern/ogdf/ogdf/planarity/EmbedderMaxFace.h
A	extern/ogdf/ogdf/planarity/EmbedderMaxFaceLayers.h
A	extern/ogdf/ogdf/planarity/EmbedderMinDepth.h
A	extern/ogdf/ogdf/planarity/EmbedderMinDepthMaxFace.h
A	extern/ogdf/ogdf/planarity/EmbedderMinDepthMaxFaceLayers.h
A	extern/ogdf/ogdf/planarity/EmbedderMinDepthPiTa.h
A	extern/ogdf/ogdf/planarity/ExtractKuratowskis.h
A	extern/ogdf/ogdf/planarity/FastPlanarSubgraph.h
A	extern/ogdf/ogdf/planarity/FixedEmbeddingInserter.h
A	extern/ogdf/ogdf/planarity/KuratowskiSubdivision.h
A	extern/ogdf/ogdf/planarity/MMFixedEmbeddingInserter.h
A	extern/ogdf/ogdf/planarity/MMSubgraphPlanarizer.h
A	extern/ogdf/ogdf/planarity/MMVariableEmbeddingInserter.h
A	extern/ogdf/ogdf/planarity/MaximalPlanarSubgraphSimple.h
A	extern/ogdf/ogdf/planarity/MaximumPlanarSubgraph.h
A	extern/ogdf/ogdf/planarity/MultiEdgeApproxInserter.h
A	extern/ogdf/ogdf/planarity/NodeTypePatterns.h
A	extern/ogdf/ogdf/planarity/NonPlanarCore.h
A	extern/ogdf/ogdf/planarity/PlanRep.h
A	extern/ogdf/ogdf/planarity/PlanRepExpansion.h
A	extern/ogdf/ogdf/planarity/PlanRepInc.h
A	extern/ogdf/ogdf/planarity/PlanRepUML.h
A	extern/ogdf/ogdf/planarity/PlanarizationGridLayout.h
A	extern/ogdf/ogdf/planarity/PlanarizationLayout.h
A	extern/ogdf/ogdf/planarity/SimpleEmbedder.h
A	extern/ogdf/ogdf/planarity/SimpleIncNodeInserter.h
A	extern/ogdf/ogdf/planarity/SubgraphPlanarizer.h
A	extern/ogdf/ogdf/planarity/VariableEmbeddingInserter.h
A	extern/ogdf/ogdf/planarity/VariableEmbeddingInserter2.h
A	extern/ogdf/ogdf/planarlayout/BiconnectedShellingOrder.h
A	extern/ogdf/ogdf/planarlayout/FPPLayout.h
A	extern/ogdf/ogdf/planarlayout/MMCBBase.h
A	extern/ogdf/ogdf/planarlayout/MMCBDoubleGrid.h
A	extern/ogdf/ogdf/planarlayout/MMCBLocalStretch.h
A	extern/ogdf/ogdf/planarlayout/MixedModelLayout.h
A	extern/ogdf/ogdf/planarlayout/PlanarDrawLayout.h
A	extern/ogdf/ogdf/planarlayout/PlanarStraightLayout.h
A	extern/ogdf/ogdf/planarlayout/SchnyderLayout.h
A	extern/ogdf/ogdf/planarlayout/ShellingOrder.h
A	extern/ogdf/ogdf/planarlayout/TriconnectedShellingOrder.h
A	extern/ogdf/ogdf/simultaneous/SimDraw.h
A	extern/ogdf/ogdf/simultaneous/SimDrawCaller.h
A	extern/ogdf/ogdf/simultaneous/SimDrawColorizer.h
A	extern/ogdf/ogdf/simultaneous/SimDrawCreator.h
A	extern/ogdf/ogdf/simultaneous/SimDrawCreatorSimple.h
A	extern/ogdf/ogdf/simultaneous/SimDrawManipulatorModule.h
A	extern/ogdf/ogdf/simultaneous/TwoLayerCrossMinSimDraw.h
A	extern/ogdf/ogdf/tree/RadialTreeLayout.h
A	extern/ogdf/ogdf/tree/TreeLayout.h
A	extern/ogdf/ogdf/upward/DominanceLayout.h
A	extern/ogdf/ogdf/upward/ExpansionGraph.h
A	extern/ogdf/ogdf/upward/FUPSSimple.h
A	extern/ogdf/ogdf/upward/FaceSinkGraph.h
A	extern/ogdf/ogdf/upward/FeasibleUpwardPlanarSubgraph.h
A	extern/ogdf/ogdf/upward/FixedEmbeddingUpwardEdgeInserter.h
A	extern/ogdf/ogdf/upward/FixedUpwardEmbeddingInserter.h
A	extern/ogdf/ogdf/upward/LayerBasedUPRLayout.h
A	extern/ogdf/ogdf/upward/SubgraphUpwardPlanarizer.h
A	extern/ogdf/ogdf/upward/UpwardPlanRep.h
A	extern/ogdf/ogdf/upward/UpwardPlanarModule.h
A	extern/ogdf/ogdf/upward/UpwardPlanarSubgraphSimple.h
A	extern/ogdf/ogdf/upward/UpwardPlanarizationLayout.h
A	extern/ogdf/ogdf/upward/VisibilityLayout.h
A	extern/ogdf/src/augmentation/DfsMakeBiconnected.cpp
A	extern/ogdf/src/augmentation/PlanarAugmentation.cpp
A	extern/ogdf/src/augmentation/PlanarAugmentationFix.cpp
A	extern/ogdf/src/basic/CliqueFinder.cpp
A	extern/ogdf/src/basic/CombinatorialEmbedding.cpp
A	extern/ogdf/src/basic/Constraint.cpp
A	extern/ogdf/src/basic/ConstraintManager.cpp
A	extern/ogdf/src/basic/DisjointSets.cpp
A	extern/ogdf/src/basic/DualGraph.cpp
A	extern/ogdf/src/basic/EdgeComparer.cpp
A	extern/ogdf/src/basic/EdgeComparerSimple.cpp
A	extern/ogdf/src/basic/Graph.cpp
A	extern/ogdf/src/basic/GraphAttributes.cpp
A	extern/ogdf/src/basic/GraphConstraints.cpp
A	extern/ogdf/src/basic/GraphCopy.cpp
A	extern/ogdf/src/basic/GridLayout.cpp
A	extern/ogdf/src/basic/GridLayoutModule.cpp
A	extern/ogdf/src/basic/Hashing.cpp
A	extern/ogdf/src/basic/Logger.cpp
A	extern/ogdf/src/basic/Math.cpp
A	extern/ogdf/src/basic/NearestRectangleFinder.cpp
A	extern/ogdf/src/basic/PoolMemoryAllocator.cpp
A	extern/ogdf/src/basic/PreprocessorLayout.cpp
A	extern/ogdf/src/basic/String.cpp
A	extern/ogdf/src/basic/System.cpp
A	extern/ogdf/src/basic/UMLGraph.cpp
A	extern/ogdf/src/basic/basic.cpp
A	extern/ogdf/src/basic/extended_graph_alg.cpp
A	extern/ogdf/src/basic/geometry.cpp
A	extern/ogdf/src/basic/graph_generators.cpp
A	extern/ogdf/src/basic/modules.cpp
A	extern/ogdf/src/basic/random_hierarchy.cpp
A	extern/ogdf/src/basic/simple_graph_alg.cpp
A	extern/ogdf/src/basic/stNumber.cpp
A	extern/ogdf/src/cluster/CPlanarEdgeInserter.cpp
A	extern/ogdf/src/cluster/CPlanarSubCLusteredST.cpp
A	extern/ogdf/src/cluster/CPlanarSubClusteredGraph.cpp
A	extern/ogdf/src/cluster/CconnectClusterPlanar.cpp
A	extern/ogdf/src/cluster/CconnectClusterPlanarEmbed.cpp
A	extern/ogdf/src/cluster/ClusterGraph.cpp
A	extern/ogdf/src/cluster/ClusterGraphAttributes.cpp
A	extern/ogdf/src/cluster/ClusterPlanarizationLayout.cpp
A	extern/ogdf/src/cluster/Cluster_ChunkConnection.cpp
A	extern/ogdf/src/cluster/Cluster_CutConstraint.cpp
A	extern/ogdf/src/cluster/Cluster_EdgeVar.cpp
A	extern/ogdf/src/cluster/Cluster_MaxPlanarEdges.cpp
A	extern/ogdf/src/cluster/Clusterer.cpp
A	extern/ogdf/src/cluster/KuratowskiConstraint.cpp
A	extern/ogdf/src/cluster/MaxCPlanar_Master.cpp
A	extern/ogdf/src/cluster/MaxCPlanar_MinimalClusterConnection.cpp
A	extern/ogdf/src/cluster/MaxCPlanar_Sub.cpp
A	extern/ogdf/src/cluster/MaximumCPlanarSubgraph.cpp
A	extern/ogdf/src/decomposition/BCTree.cpp
A	extern/ogdf/src/decomposition/DynamicBCTree.cpp
A	extern/ogdf/src/decomposition/DynamicSPQRForest.cpp
A	extern/ogdf/src/decomposition/DynamicSPQRTree.cpp
A	extern/ogdf/src/decomposition/NonPlanarCore.cpp
A	extern/ogdf/src/decomposition/PlanarSPQRTree.cpp
A	extern/ogdf/src/decomposition/StaticSPQRTree.cpp
A	extern/ogdf/src/decomposition/TricComp.cpp
A	extern/ogdf/src/decomposition/TricComp.h
A	extern/ogdf/src/energybased/AdjacencyOracle.cpp
A	extern/ogdf/src/energybased/ArrayGraph.cpp
A	extern/ogdf/src/energybased/ArrayGraph.h
A	extern/ogdf/src/energybased/Attraction.cpp
A	extern/ogdf/src/energybased/CoinTutteLayout.cpp
A	extern/ogdf/src/energybased/ComplexDouble.h
A	extern/ogdf/src/energybased/DavidsonHarel.cpp
A	extern/ogdf/src/energybased/DavidsonHarelLayout.cpp
A	extern/ogdf/src/energybased/Edge.h
A	extern/ogdf/src/energybased/EdgeAttributes.cpp
A	extern/ogdf/src/energybased/EnergyFunction.cpp
A	extern/ogdf/src/energybased/FMEFunc.h
A	extern/ogdf/src/energybased/FMEFunctional.h
A	extern/ogdf/src/energybased/FMEKernel.cpp
A	extern/ogdf/src/energybased/FMEKernel.h
A	extern/ogdf/src/energybased/FMEMultipoleKernel.cpp
A	extern/ogdf/src/energybased/FMEMultipoleKernel.h
A	extern/ogdf/src/energybased/FMEThread.cpp
A	extern/ogdf/src/energybased/FMEThread.h
A	extern/ogdf/src/energybased/FMMMLayout.cpp
A	extern/ogdf/src/energybased/FastMultipoleEmbedder.cpp
A	extern/ogdf/src/energybased/FastUtils.h
A	extern/ogdf/src/energybased/FruchtermanReingold.cpp
A	extern/ogdf/src/energybased/GEMLayout.cpp
A	extern/ogdf/src/energybased/GalaxyMultilevel.cpp
A	extern/ogdf/src/energybased/GalaxyMultilevel.h
A	extern/ogdf/src/energybased/IntersectionRectangle.cpp
A	extern/ogdf/src/energybased/LinearQuadtree.cpp
A	extern/ogdf/src/energybased/LinearQuadtree.h
A	extern/ogdf/src/energybased/LinearQuadtreeBuilder.cpp
A	extern/ogdf/src/energybased/LinearQuadtreeBuilder.h
A	extern/ogdf/src/energybased/LinearQuadtreeExpansion.cpp
A	extern/ogdf/src/energybased/LinearQuadtreeExpansion.h
A	extern/ogdf/src/energybased/MAARPacking.cpp
A	extern/ogdf/src/energybased/MAARPacking.h
A	extern/ogdf/src/energybased/Multilevel.cpp
A	extern/ogdf/src/energybased/Multilevel.h
A	extern/ogdf/src/energybased/MultilevelGraph.cpp
A	extern/ogdf/src/energybased/MultilevelLayout.cpp
A	extern/ogdf/src/energybased/NMM.cpp
A	extern/ogdf/src/energybased/Node.h
A	extern/ogdf/src/energybased/NodeAttributes.cpp
A	extern/ogdf/src/energybased/NodePairEnergy.cpp
A	extern/ogdf/src/energybased/Overlap.cpp
A	extern/ogdf/src/energybased/PQueue.h
A	extern/ogdf/src/energybased/PackingRowInfo.h
A	extern/ogdf/src/energybased/Planarity.cpp
A	extern/ogdf/src/energybased/PlanarityGrid.cpp
A	extern/ogdf/src/energybased/QuadTreeNM.cpp
A	extern/ogdf/src/energybased/QuadTreeNodeNM.cpp
A	extern/ogdf/src/energybased/Rectangle.h
A	extern/ogdf/src/energybased/Repulsion.cpp
A	extern/ogdf/src/energybased/Set.cpp
A	extern/ogdf/src/energybased/Set.h
A	extern/ogdf/src/energybased/SpringEmbedderFR.cpp
A	extern/ogdf/src/energybased/SpringEmbedderFRExact.cpp
A	extern/ogdf/src/energybased/SpringEmbedderKK.cpp
A	extern/ogdf/src/energybased/StressMajorizationSimple.cpp
A	extern/ogdf/src/energybased/UniformGrid.cpp
A	extern/ogdf/src/energybased/WSPD.cpp
A	extern/ogdf/src/energybased/WSPD.h
A	extern/ogdf/src/energybased/multilevelmixer/BarycenterPlacer.cpp
A	extern/ogdf/src/energybased/multilevelmixer/CirclePlacer.cpp
A	extern/ogdf/src/energybased/multilevelmixer/EdgeCoverMerger.cpp
A	extern/ogdf/src/energybased/multilevelmixer/IndependentSetMerger.cpp
A	extern/ogdf/src/energybased/multilevelmixer/LocalBiconnectedMerger.cpp
A	extern/ogdf/src/energybased/multilevelmixer/MMMExampleFastLayout.cpp
A	extern/ogdf/src/energybased/multilevelmixer/MMMExampleNiceLayout.cpp
A	extern/ogdf/src/energybased/multilevelmixer/MMMExampleNoTwistLayout.cpp
A	extern/ogdf/src/energybased/multilevelmixer/MatchingMerger.cpp
A	extern/ogdf/src/energybased/multilevelmixer/MedianPlacer.cpp
A	extern/ogdf/src/energybased/multilevelmixer/MixedForceLayout.cpp
A	extern/ogdf/src/energybased/multilevelmixer/ModularMultilevelMixer.cpp
A	extern/ogdf/src/energybased/multilevelmixer/RandomMerger.cpp
A	extern/ogdf/src/energybased/multilevelmixer/RandomPlacer.cpp
A	extern/ogdf/src/energybased/multilevelmixer/ScalingLayout.cpp
A	extern/ogdf/src/energybased/multilevelmixer/SolarMerger.cpp
A	extern/ogdf/src/energybased/multilevelmixer/SolarPlacer.cpp
A	extern/ogdf/src/energybased/multilevelmixer/ZeroPlacer.cpp
A	extern/ogdf/src/energybased/numexcept.cpp
A	extern/ogdf/src/energybased/numexcept.h
A	extern/ogdf/src/external/coin.cpp
A	extern/ogdf/src/fileformats/DinoLineBuffer.cpp
A	extern/ogdf/src/fileformats/DinoTools.cpp
A	extern/ogdf/src/fileformats/DinoUmlDiagramGraph.cpp
A	extern/ogdf/src/fileformats/DinoUmlModelGraph.cpp
A	extern/ogdf/src/fileformats/DinoUmlToGraphConverter.cpp
A	extern/ogdf/src/fileformats/DinoXmlParser.cpp
A	extern/ogdf/src/fileformats/DinoXmlScanner.cpp
A	extern/ogdf/src/fileformats/GmlParser.cpp
A	extern/ogdf/src/fileformats/Ogml.cpp
A	extern/ogdf/src/fileformats/OgmlParser.cpp
A	extern/ogdf/src/fileformats/XmlParser.cpp
A	extern/ogdf/src/fileformats/simple_graph_load.cpp
A	extern/ogdf/src/graphalg/ConvexHull.cpp
A	extern/ogdf/src/graphalg/MinCostFlowModule.cpp
A	extern/ogdf/src/graphalg/MinCostFlowReinelt.cpp
A	extern/ogdf/src/graphalg/MinimumCut.cpp
A	extern/ogdf/src/graphalg/PageRank.cpp
A	extern/ogdf/src/graphalg/ShortestPathsWithBFM.cpp
A	extern/ogdf/src/graphalg/mcf_front_reinelt.cpp
A	extern/ogdf/src/incremental/SimpleIncNodeInserter.cpp
A	extern/ogdf/src/labeling/ELabelPosSimple.cpp
A	extern/ogdf/src/layered/CoffmanGrahamRanking.cpp
A	extern/ogdf/src/layered/CrossingsMatrix.cpp
A	extern/ogdf/src/layered/FastHierarchyLayout.cpp
A	extern/ogdf/src/layered/FastSimpleHierarchyLayout.cpp
A	extern/ogdf/src/layered/HierarchyLayoutModule.cpp
A	extern/ogdf/src/layered/OptimalHierarchyClusterLayout.cpp
A	extern/ogdf/src/layered/OptimalHierarchyLayout.cpp
A	extern/ogdf/src/layered/OptimalRanking.cpp
A	extern/ogdf/src/layered/SplitHeuristic.cpp
A	extern/ogdf/src/layered/acyclic_subgraph.cpp
A	extern/ogdf/src/layered/heuristics.cpp
A	extern/ogdf/src/layered/ranking.cpp
A	extern/ogdf/src/layered/sugiyama-cluster.cpp
A	extern/ogdf/src/layered/sugiyama.cpp
A	extern/ogdf/src/lpsolver/LPSolver_coin.cpp
A	extern/ogdf/src/misclayout/BalloonLayout.cpp
A	extern/ogdf/src/misclayout/CircularLayout.cpp
A	extern/ogdf/src/misclayout/ProcrustesSubLayout.cpp
A	extern/ogdf/src/orthogonal/ClusterOrthoLayout.cpp
A	extern/ogdf/src/orthogonal/ClusterOrthoShaper.cpp
A	extern/ogdf/src/orthogonal/CompactionConstraintGraph.cpp
A	extern/ogdf/src/orthogonal/EdgeLabel-impl.h
A	extern/ogdf/src/orthogonal/EdgeRouter.cpp
A	extern/ogdf/src/orthogonal/FlowCompaction.cpp
A	extern/ogdf/src/orthogonal/LongestPathCompaction.cpp
A	extern/ogdf/src/orthogonal/NodeInfo.cpp
A	extern/ogdf/src/orthogonal/OrthoLayout.cpp
A	extern/ogdf/src/orthogonal/OrthoRep.cpp
A	extern/ogdf/src/orthogonal/OrthoShaper.cpp
A	extern/ogdf/src/packing/CCLayoutPackModule.cpp
A	extern/ogdf/src/packing/ComponentSplitterLayout.cpp
A	extern/ogdf/src/packing/TileToRowsCCPacker.cpp
A	extern/ogdf/src/planarity/BoothLueker.cpp
A	extern/ogdf/src/planarity/BoyerMyrvold.cpp
A	extern/ogdf/src/planarity/BoyerMyrvoldInit.cpp
A	extern/ogdf/src/planarity/BoyerMyrvoldPlanar.cpp
A	extern/ogdf/src/planarity/ClusterPlanRep.cpp
A	extern/ogdf/src/planarity/EdgeInsertionModule.cpp
A	extern/ogdf/src/planarity/EmbedPQTree.cpp
A	extern/ogdf/src/planarity/EmbedderMaxFace.cpp
A	extern/ogdf/src/planarity/EmbedderMaxFaceLayers.cpp
A	extern/ogdf/src/planarity/EmbedderMinDepth.cpp
A	extern/ogdf/src/planarity/EmbedderMinDepthMaxFace.cpp
A	extern/ogdf/src/planarity/EmbedderMinDepthMaxFaceLayers.cpp
A	extern/ogdf/src/planarity/EmbedderMinDepthPiTa.cpp
A	extern/ogdf/src/planarity/ExtractKuratowskis.cpp
A	extern/ogdf/src/planarity/FastPlanarSubgraph.cpp
A	extern/ogdf/src/planarity/FindKuratowskis.cpp
A	extern/ogdf/src/planarity/FixedEmbeddingInserter.cpp
A	extern/ogdf/src/planarity/GraphReduction.cpp
A	extern/ogdf/src/planarity/Layout.cpp
A	extern/ogdf/src/planarity/LayoutPlanRepModule.cpp
A	extern/ogdf/src/planarity/MDMFLengthAttribute.cpp
A	extern/ogdf/src/planarity/MMCrossingMinimizationModule.cpp
A	extern/ogdf/src/planarity/MMFixedEmbeddingInserter.cpp
A	extern/ogdf/src/planarity/MMSubgraphPlanarizer.cpp
A	extern/ogdf/src/planarity/MMVariableEmbeddingInserter.cpp
A	extern/ogdf/src/planarity/MaximalPlanarSubgraphSimple.cpp
A	extern/ogdf/src/planarity/MaximumPlanarSubgraph.cpp
A	extern/ogdf/src/planarity/MultiEdgeApproxInserter.cpp
A	extern/ogdf/src/planarity/PlanRep.cpp
A	extern/ogdf/src/planarity/PlanRepExpansion.cpp
A	extern/ogdf/src/planarity/PlanRepInc.cpp
A	extern/ogdf/src/planarity/PlanRepUML.cpp
A	extern/ogdf/src/planarity/PlanarPQTree.cpp
A	extern/ogdf/src/planarity/PlanarSubgraphModule.cpp
A	extern/ogdf/src/planarity/PlanarSubgraphPQTree.cpp
A	extern/ogdf/src/planarity/PlanarizationGridLayout.cpp
A	extern/ogdf/src/planarity/PlanarizationLayout.cpp
A	extern/ogdf/src/planarity/PlanarizationLayout_inc.cpp
A	extern/ogdf/src/planarity/SimpleEmbedder.cpp
A	extern/ogdf/src/planarity/SubgraphPlanarizer.cpp
A	extern/ogdf/src/planarity/TopologyModule.cpp
A	extern/ogdf/src/planarity/VariableEmbeddingInserter.cpp
A	extern/ogdf/src/planarity/VariableEmbeddingInserter2.cpp
A	extern/ogdf/src/planarlayout/BiconnectedShellingOrder.cpp
A	extern/ogdf/src/planarlayout/FPPLayout.cpp
A	extern/ogdf/src/planarlayout/IOPoints.cpp
A	extern/ogdf/src/planarlayout/IOPoints.h
A	extern/ogdf/src/planarlayout/MMCBBase.cpp
A	extern/ogdf/src/planarlayout/MMOrder.h
A	extern/ogdf/src/planarlayout/MixedModelBase.cpp
A	extern/ogdf/src/planarlayout/MixedModelBase.h
A	extern/ogdf/src/planarlayout/MixedModelCrossingsBeautifierModule.cpp
A	extern/ogdf/src/planarlayout/MixedModelLayout.cpp
A	extern/ogdf/src/planarlayout/PlanarDrawLayout.cpp
A	extern/ogdf/src/planarlayout/PlanarStraightLayout.cpp
A	extern/ogdf/src/planarlayout/SchnyderLayout.cpp
A	extern/ogdf/src/planarlayout/ShellingOrder.cpp
A	extern/ogdf/src/planarlayout/ShellingOrderModule.cpp
A	extern/ogdf/src/planarlayout/TriconnectedShellingOrder.cpp
A	extern/ogdf/src/simultaneous/SimDraw.cpp
A	extern/ogdf/src/simultaneous/SimDrawCaller.cpp
A	extern/ogdf/src/simultaneous/SimDrawColorizer.cpp
A	extern/ogdf/src/simultaneous/SimDrawCreator.cpp
A	extern/ogdf/src/simultaneous/SimDrawCreatorSimple.cpp
A	extern/ogdf/src/simultaneous/SimDrawManipulatorModule.cpp
A	extern/ogdf/src/tree/RadialTreeLayout.cpp
A	extern/ogdf/src/tree/TreeLayout.cpp
A	extern/ogdf/src/upward/DominanceLayout.cpp
A	extern/ogdf/src/upward/ExpansionGraph.cpp
A	extern/ogdf/src/upward/FUPSSimple.cpp
A	extern/ogdf/src/upward/FaceSinkGraph.cpp
A	extern/ogdf/src/upward/FeasibleUpwardPlanarSubgraph.cpp
A	extern/ogdf/src/upward/FixedEmbeddingUpwardEdgeInserter.cpp
A	extern/ogdf/src/upward/LayerBasedUPRLayout.cpp
A	extern/ogdf/src/upward/SubgraphUpwardPlanarizer.cpp
A	extern/ogdf/src/upward/UpwardPlanRep.cpp
A	extern/ogdf/src/upward/UpwardPlanarModule.cpp
A	extern/ogdf/src/upward/UpwardPlanarSubgraphModule.cpp
A	extern/ogdf/src/upward/UpwardPlanarSubgraphSimple.cpp
A	extern/ogdf/src/upward/VisibilityLayout.cpp

===================================================================

diff --git a/build_files/scons/tools/btools.py b/build_files/scons/tools/btools.py
index 6354cac..2ad6da4 100644
--- a/build_files/scons/tools/btools.py
+++ b/build_files/scons/tools/btools.py
@@ -198,7 +198,7 @@ def validate_arguments(args, bc):
             'C_WARN', 'CC_WARN', 'CXX_WARN',
             'LLIBS', 'PLATFORM_LINKFLAGS', 'MACOSX_ARCHITECTURE', 'MACOSX_SDK', 'XCODE_CUR_VER', 'C_COMPILER_ID',
             'BF_CYCLES_CUDA_BINARIES_ARCH', 'BF_PROGRAM_LINKFLAGS', 'MACOSX_DEPLOYMENT_TARGET',
-            'WITH_BF_CYCLES_DEBUG', 'WITH_BF_CYCLES_LOGGING', 'WITH_BF_LEGACY_DEPSGRAPH'
+            'WITH_BF_CYCLES_DEBUG', 'WITH_BF_CYCLES_LOGGING', 'WITH_BF_LEGACY_DEPSGRAPH', 'WITH_BF_OGDF'
     ]
 
 
@@ -656,6 +656,7 @@ def read_opts(env, cfg, args):
         ('BF_PROGRAM_LINKFLAGS', 'Link flags applied only to final binaries (blender and blenderplayer, not makesrna/makesdna)', ''),
 
         (BoolVariable('WITH_BF_LEGACY_DEPSGRAPH', 'Build Blender with legacy dependency graph', True)),
+        (BoolVariable('WITH_BF_OGDF', 'Build Blender with OGDF for debugging depsgraph', True)),
     ) # end of opts.AddOptions()
 
     return localopts
diff --git a/extern/SConscript b/extern/SConscript
index 1f94f50..0ee135d 100644
--- a/extern/SConscript
+++ b/extern/SConscript
@@ -53,3 +53,8 @@ if env['WITH_GHOST_XDND']:
 
 if env['WITH_BF_SDL'] and env['WITH_BF_SDL_DYNLOAD']:
     SConscript(['sdlew/SConscript'])
+
+
+if env['WITH_BF_OGDF']:
+    SConscript(['ogdf/SConscript'])
+
diff --git a/extern/ogdf/LICENSE.txt b/extern/ogdf/LICENSE.txt
new file mode 100644
index 0000000..7eb9188
--- /dev/null
+++ b/extern/ogdf/LICENSE.txt
@@ -0,0 +1,32 @@
+***********************************************************
+*         OGDF - The Open Graph Drawing Framework         *
+*                                                         *
+*                        LICENSE                          *
+***********************************************************
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+Version 2 or 3 as published by the Free Software Foundation
+and appearing in the files LICENSE_GPL_v2.txt and
+LICENSE_GPL_v3.txt included in the packaging of this file.
+
+In addition, as a special exception, you have permission to link
+this software with
+
+  - Tulip (http://www.tulip-software.org)
+
+  - the libraries of the COIN-OR Osi project (see
+    http://www.coin-or.org/projects/Osi.xml);
+
+  - all libraries required by Osi;
+
+  - and all LP-solver libraries directly supported by the
+    COIN-OR Osi project,
+
+and distribute executables, as long as you follow the requirements
+of the GNU General Public License in regard to all of the software
+in the executable aside from these third-party libraries.
+
+See also: http://www.ogdf.net/license.html
+
+Contact: license at ogdf.net
diff --git a/extern/ogdf/README.txt b/extern/ogdf/README.txt
new file mode 100644
index 0000000..c36b677
--- /dev/null
+++ b/extern/ogdf/README.txt
@@ -0,0 +1,91 @@
+***********************************************************
+*         OGDF - The Open Graph Drawing Framework         *
+*                                                         *
+*                         README                          *
+***********************************************************
+
+Welcome to OGDF!
+
+OGDF is a portable C++ class library for graph drawing.
+This archive contains the source-code of OGDF.
+
+
+******************** LICENSE ********************
+
+This software is distributed under the terms of the GNU
+General Public License v2 or v3, with special exceptions
+allowing to link against LP-solvers (see the LICENSE.txt
+file for details!). By installing this software you agree
+to these license terms.
+
+If you have questions, please write to license at ogdf.net .
+
+
+******************* COPYRIGHT *******************
+
+All files in the OGDF distribution are copyrighted:
+
+Copyright (C) 2005-2012
+
+
+****************** INSTALLATION *****************
+
+Unpack the OGDF archive in the directory, where you want to
+install OGDF.
+
+Build OGDF (gcc Compiler [Linux, Mac OS]):
+
+  1. Edit makeMakefile.config for your configuration 
+     (if necessary): check the [GENERAL] section. If 
+     you do not use Coin, the default parameters should
+     be suitable.
+
+  2. Execute makeMakefile.sh to generate a suitable Makefile.
+
+  3. Call make to build the OGDF library (you may also call
+     make debug_all to generate a debuggable version).
+
+
+Build OGDF (Visual Studio [Windows]):
+
+  1. Create Visual Studio project file:
+  
+     Visual Studio 2008: Execute the python script makeVCProj.py
+       to generate a Visual Studio 2008 project file ogdf.vcproj.
+	   
+     Visual Studio 2010: Execute the python script makeVCXProj.py
+       to generate a Visual Studio 2010 project file ogdf.vcxproj.
+
+  2. Open the created project file (.vcproj or .vcxproj) with
+     Visual Studio and call build.
+
+OGDF also contains some optional features which require COIN
+Osi as LP solver. It is also possible to generate project
+files for Visual Studio 2003 & 2005.
+
+Please refer to the OGDF Wiki for more detailed information:
+
+gcc:        http://www.ogdf.net/ogdf.php/tech:installgcc
+Visual C++: http://www.ogdf.net/ogdf.php/tech:installvcc
+
+
+******************** CHANGES ********************
+
+For changes refer to the version history at
+
+http://www.ogdf.net/doku.php?id=tech:versions
+
+Version ogdf.v2012.07
+
+
+******************** CONTACT ********************
+
+Email: info at ogdf.net
+
+Web:   http://www.ogdf.net
+Forum: http://www.ogdf.net/forum
+
+
+Enjoy!
+
+  The OGDF Team.
diff --git a/extern/ogdf/SConscript b/extern/ogdf/SConscript
new file mode 100644
index 0000000..74ab644
--- /dev/null
+++ b/extern/ogdf/SConscript
@@ -0,0 +1,9 @@
+#!/usr/bin/python
+Import ('env')
+
+sources = env.Glob('src/*/*.c') + env.Glob('src/*/*.cpp')
+
+defs = ''
+incs = '. ogdf ' 
+
+env.BlenderLib ('extern_ogdf', sources, Split(incs), Split(defs), libtype=['extern'], priority=[40] )
diff --git a/extern/ogdf/ogdf/augmentation/DfsMakeBiconnected.h b/extern/ogdf/ogdf/augmentation/DfsMakeBiconnected.h
new file mode 100644
index 0000000..48ab333
--- /dev/null
+++ b/extern/ogdf/ogdf/augmentation/DfsMakeBiconnected.h
@@ -0,0 +1,82 @@
+/*
+ * $Revision: 2523 $
+ *
+ * last checkin:
+ *   $Author: gutwenger $
+ *   $Date: 2012-07-02 20:59:27 +0200 (Mon, 02 Jul 2012) $
+ ***************************************************************/
+
+/** \file
+ * \brief Provides a simple, dfs-based algorithm for biconnectivity augmentation.
+ *
+ * \author Carsten Gutwenger
+ *
+ * \par License:
+ * This file is part of the Open Graph Drawing Framework (OGDF).
+ *
+ * \par
+ * Copyright (C)<br>
+ * See README.txt in the root directory of the OGDF installation for details.
+ *
+ * \par
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * Version 2 or 3 as published by the Free Software Foundation;
+ * see the file LICENSE.txt included in the packaging of this file
+ * for details.
+ *
+ * \par
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * \par
+ * You should have received a copy of the GNU General Public
+ * License along with this program; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ *
+ * \see  http://www.gnu.org/copyleft/gpl.html
+ ***************************************************************/
+
+#ifdef _MSC_VER
+#pragma once
+#endif
+
+#ifndef OGDF_DFS_MAKE_BICONNECTED_H
+#define OGDF_DFS_MAKE_BICONNECTED_H
+
+
+
+#include <ogdf/module/AugmentationModule.h>
+
+namespace ogdf {
+
+/**
+ * \brief Implementation of a DFS-based algorithm for biconnectivity augmentation.
+ *
+ * The class \a DfsMakeBiconnected implements an augmentation algorithms
+ * that augments a graph to a biconnected graph. In addition, if the graph was
+ * planar before augmentation, the resulting graph will be biconnected and
+ * planar.
+ * The algorithm simply uses DFS and, whenever a cut vertex is discovered,
+ * a new edge is added.
+ */
+
+class OGDF_EXPORT DfsMakeBiconnected : public AugmentationModule {
+public:
+	//! Creates an instance of DFS-based biconnectivity augmentation.
+	DfsMakeBiconnected() { }
+
+	// destruction
+	~DfsMakeBiconnected() { }
+
+protected:
+	//! Implements the algorithm call.
+	void doCall(Graph& G, List<edge> &L);
+};
+
+} // end namespace ogdf
+
+#endif
diff --git a/extern/ogdf/ogdf/augmentation/PlanarAugmentation.h b/extern/ogdf/ogdf/augmentation/PlanarAugmentation.h
new file mode 100644
index 0000000..8a00882
--- /dev/null
+++ b/extern/ogdf/ogdf/augmentation/PlanarAugmentation.h
@@ -0,0 +1,305 @@
+/*
+ * $Revision: 2583 $
+ *
+ * last checkin:
+ *   $Author: gutwenger $
+ *   $Date: 2012-07-12 01:02:21 +0200 (Do, 12. Jul 2012) $
+ ***************************************************************/
+
+/** \file
+ * \brief planar biconnected augmentation approximation algorithm
+ *
+ * \author Bernd Zey
+ *
+ * \par License:
+ * This file is part of the Open Graph Drawing Framework (OGDF).
+ *
+ * \par
+ * Copyright (C)<br>
+ * See README.txt in the root directory of the OGDF installation for details.
+ *
+ * \par
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * Version 2 or 3 as published by the Free Software Foundation;
+ * see the file LICENSE.txt included in the packaging of this file
+ * for details.
+ *
+ * \par
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * \par
+ * You should have received a copy of the GNU General Public
+ * License along with this program; if not, write to the F

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list