diff --git a/BUCK b/BUCK index 93a09374..d81f4daf 100644 --- a/BUCK +++ b/BUCK @@ -15,6 +15,7 @@ COMPILER_FLAGS = LIBRARY_COMPILER_FLAGS + [ TEST_COMPILER_FLAGS = BASE_COMPILER_FLAGS + GMOCK_OVERRIDE_FLAGS + [ "-std=c++1y", + "-DDEBUG", ] yoga_cxx_library( @@ -31,6 +32,20 @@ yoga_cxx_library( ], ) +yoga_cxx_library( + name = "yogaForDebug", + srcs = glob(["yoga/*.cpp"]), + header_namespace = "", + exported_headers = subdir_glob([("", "yoga/*.h")]), + compiler_flags = TEST_COMPILER_FLAGS, + soname = "libyogacore.$(ext)", + tests = [":YogaTests"], + visibility = ["PUBLIC"], + deps = [ + yoga_dep("lib/fb:ndklog"), + ], +) + yoga_cxx_test( name = "YogaTests", srcs = glob(["tests/*.cpp"]), @@ -39,7 +54,7 @@ yoga_cxx_test( contacts = ["emilsj@fb.com"], visibility = ["PUBLIC"], deps = [ - ":yoga", + ":yogaForDebug", GTEST_TARGET, ], ) diff --git a/java/jni/YGJNI.cpp b/java/jni/YGJNI.cpp index 0cd97be8..cf923dc8 100644 --- a/java/jni/YGJNI.cpp +++ b/java/jni/YGJNI.cpp @@ -352,11 +352,13 @@ void jni_YGNodeReset(jlong nativePointer) { } void jni_YGNodePrint(jlong nativePointer) { +#ifdef DEBUG const YGNodeRef node = _jlong2YGNodeRef(nativePointer); YGNodePrint( node, (YGPrintOptions)( YGPrintOptionsStyle | YGPrintOptionsLayout | YGPrintOptionsChildren)); +#endif } void jni_YGNodeInsertChild( diff --git a/yoga/YGNodePrint.cpp b/yoga/YGNodePrint.cpp index 5dbd214f..ee07ac92 100644 --- a/yoga/YGNodePrint.cpp +++ b/yoga/YGNodePrint.cpp @@ -4,6 +4,7 @@ * This source code is licensed under the MIT license found in the LICENSE * file in the root directory of this source tree. */ +#ifdef DEBUG #include "YGNodePrint.h" #include #include "YGEnums.h" @@ -230,3 +231,4 @@ void YGNodeToString( } } // namespace yoga } // namespace facebook +#endif diff --git a/yoga/YGNodePrint.h b/yoga/YGNodePrint.h index 9615bf8e..13cf367b 100644 --- a/yoga/YGNodePrint.h +++ b/yoga/YGNodePrint.h @@ -4,6 +4,7 @@ * This source code is licensed under the MIT license found in the LICENSE * file in the root directory of this source tree. */ +#ifdef DEBUG #pragma once #include @@ -20,3 +21,4 @@ void YGNodeToString( } // namespace yoga } // namespace facebook +#endif diff --git a/yoga/Yoga.cpp b/yoga/Yoga.cpp index 94d9a602..81903991 100644 --- a/yoga/Yoga.cpp +++ b/yoga/Yoga.cpp @@ -979,6 +979,7 @@ bool YGLayoutNodeInternal( YGMarkerLayoutData& layoutMarkerData, void* const layoutContext); +#ifdef DEBUG static void YGNodePrintInternal( const YGNodeRef node, const YGPrintOptions options) { @@ -990,6 +991,7 @@ static void YGNodePrintInternal( void YGNodePrint(const YGNodeRef node, const YGPrintOptions options) { YGNodePrintInternal(node, options); } +#endif const std::array leading = { {YGEdgeTop, YGEdgeBottom, YGEdgeLeft, YGEdgeRight}}; @@ -4091,6 +4093,7 @@ void YGNodeCalculateLayoutWithContext( node->getLayout().direction, ownerWidth, ownerHeight, ownerWidth); YGRoundToPixelGrid(node, node->getConfig()->pointScaleFactor, 0.0f, 0.0f); +#ifdef DEBUG if (node->getConfig()->printTree) { YGNodePrint( node, @@ -4098,6 +4101,7 @@ void YGNodeCalculateLayoutWithContext( YGPrintOptionsLayout | YGPrintOptionsChildren | YGPrintOptionsStyle)); } +#endif } // We want to get rid off `useLegacyStretchBehaviour` from YGConfig. But we @@ -4147,6 +4151,7 @@ void YGNodeCalculateLayoutWithContext( !originalNode->isLayoutTreeEqualToNode(*node); node->setLayoutDoesLegacyFlagAffectsLayout(neededLegacyStretchBehaviour); +#ifdef DEBUG if (originalNode->getConfig()->printTree) { YGNodePrint( originalNode, @@ -4154,6 +4159,7 @@ void YGNodeCalculateLayoutWithContext( YGPrintOptionsLayout | YGPrintOptionsChildren | YGPrintOptionsStyle)); } +#endif } YGConfigFreeRecursive(originalNode); YGNodeFreeRecursive(originalNode);