mirror of
https://github.com/fnproject/fn.git
synced 2022-10-28 21:29:17 +03:00
* add jaeger support, link hot container & req span * adds jaeger support now with FN_JAEGER_URL, there's a simple tutorial in the operating/metrics.md file now and it's pretty easy to get up and running. * links a hot request span to a hot container span. when we change this to sample at a lower ratio we'll need to finagle the hot container span to always sample or something, otherwise we'll hide that info. at least, since we're sampling at 100% for now if this is flipped on, can see freeze/unfreeze etc. if they hit. this is useful for debugging. note that zipkin's exporter does not follow the link at all, hence jaeger... and they're backed by the Cloud Empire now (CNCF) so we'll probably use it anyway. * vendor: add thrift for jaeger
165 lines
5.6 KiB
Batchfile
165 lines
5.6 KiB
Batchfile
::
|
|
:: Licensed under the Apache License, Version 2.0 (the "License");
|
|
:: you may not use this file except in compliance with the License.
|
|
:: You may obtain a copy of the License at
|
|
::
|
|
:: http://www.apache.org/licenses/LICENSE-2.0
|
|
::
|
|
:: Unless required by applicable law or agreed to in writing, software
|
|
:: distributed under the License is distributed on an "AS IS" BASIS,
|
|
:: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
:: See the License for the specific language governing permissions and
|
|
:: limitations under the License.
|
|
::
|
|
|
|
::
|
|
:: Generates a Visual Studio solution for thrift and then builds it.
|
|
:: Assumes third party libraries have been built or placed already.
|
|
::
|
|
:: Open a Visual Studio Command Prompt of your choosing and then
|
|
:: run this script.
|
|
::
|
|
:: Normally the script will run cmake to generate a solution, then
|
|
:: perform a build, then run tests on the complete thrift library
|
|
:: in release mode.
|
|
::
|
|
:: Flags you can use to change this behavior:
|
|
::
|
|
:: /DEBUG - debug instead of release
|
|
:: /IDE - launch Visual Studio with a path set
|
|
:: up correctly to run tests instead of
|
|
:: performing any other actions, i.e.
|
|
:: implies setting the next three flags
|
|
:: /NOGENERATE - skip cmake generation - useful if you
|
|
:: have already generated a solution and just
|
|
:: want to build
|
|
:: /NOBUILD - skip cmake build - useful if you just
|
|
:: want to generate a solution
|
|
:: /NOTEST - skip ctest execution
|
|
::
|
|
|
|
@ECHO OFF
|
|
SETLOCAL EnableDelayedExpansion
|
|
|
|
:: Sets variables for third party versions used in build
|
|
CALL scripts\tpversions.bat || EXIT /B
|
|
|
|
IF NOT DEFINED PACKAGE_NAME SET PACKAGE_NAME=thrift
|
|
IF NOT DEFINED PACKAGE_VERSION SET PACKAGE_VERSION=dev
|
|
IF NOT DEFINED SOURCE_DIR SET SOURCEDIR=%~dp0%PACKAGE_NAME%
|
|
IF NOT DEFINED WIN3P_ROOT SET WIN3P_ROOT=%~dp0thirdparty
|
|
|
|
:: Set COMPILER to (vc100 - vc140) depending on the current environment
|
|
CALL scripts\cl_setcompiler.bat || EXIT /B
|
|
|
|
:: Set ARCH to either win32 or x64 depending on the current environment
|
|
CALL scripts\cl_setarch.bat || EXIT /B
|
|
|
|
:: Set GENERATOR for CMake depending on the current environment
|
|
CALL scripts\cl_setgenerator.bat || EXIT /B
|
|
|
|
:: Defaults
|
|
|
|
IF NOT DEFINED BUILDTYPE SET BUILDTYPE=Release
|
|
SET OPT_IDE=0
|
|
SET OPT_BUILD=1
|
|
SET OPT_GENERATE=1
|
|
SET OPT_TEST=1
|
|
|
|
:: Apply Flags
|
|
|
|
IF /I "%1" == "/DEBUG" SET BUILDTYPE=Debug
|
|
IF /I "%2" == "/DEBUG" SET BUILDTYPE=Debug
|
|
IF /I "%3" == "/DEBUG" SET BUILDTYPE=Debug
|
|
IF /I "%1" == "/IDE" SET OPT_IDE=1
|
|
IF /I "%2" == "/IDE" SET OPT_IDE=1
|
|
IF /I "%3" == "/IDE" SET OPT_IDE=1
|
|
IF /I "%1" == "/NOBUILD" SET OPT_BUILD=0
|
|
IF /I "%2" == "/NOBUILD" SET OPT_BUILD=0
|
|
IF /I "%3" == "/NOBUILD" SET OPT_BUILD=0
|
|
IF /I "%1" == "/NOGENERATE" SET OPT_GENERATE=0
|
|
IF /I "%2" == "/NOGENERATE" SET OPT_GENERATE=0
|
|
IF /I "%3" == "/NOGENERATE" SET OPT_GENERATE=0
|
|
IF /I "%1" == "/NOTEST" SET OPT_TEST=0
|
|
IF /I "%2" == "/NOTEST" SET OPT_TEST=0
|
|
IF /I "%3" == "/NOTEST" SET OPT_TEST=0
|
|
|
|
IF %OPT_IDE% == 1 (
|
|
SET OPT_GENERATE=0
|
|
SET OPT_BUILD=0
|
|
SET OPT_TEST=0
|
|
)
|
|
|
|
SET BUILDDIR=%~dp0build\%PACKAGE_NAME%\%PACKAGE_VERSION%\%COMPILER%\%ARCH%\
|
|
SET OUTDIR=%~dp0dist\%PACKAGE_NAME%-%PACKAGE_VERSION%\%COMPILER%\%ARCH%\%BUILDTYPE%\
|
|
SET BOOST_LIBDIR=lib%ARCH:~-2,2%-msvc-%COMPILER:~-3,2%.0
|
|
IF "%BUILDTYPE%" == "Debug" (SET ZLIB_STATIC_SUFFIX=d)
|
|
|
|
ECHO/
|
|
ECHO =========================================================================
|
|
ECHO Configuration: %PACKAGE_NAME% %PACKAGE_VERSION% %COMPILER%:%ARCH%:%BUILDTYPE% "%GENERATOR%"
|
|
IF DEFINED COMPILERONLY (
|
|
ECHO COMPILER ONLY
|
|
)
|
|
ECHO Build Directory: %BUILDDIR%
|
|
ECHO Install Directory: %OUTDIR%
|
|
ECHO Source Directory: %SOURCEDIR%
|
|
ECHO =========================================================================
|
|
ECHO/
|
|
|
|
IF %OPT_IDE% == 1 (
|
|
|
|
CALL :SETRUNPATH || EXIT /B
|
|
CALL DEVENV "!BUILDDIR!Apache Thrift.sln" || EXIT /B
|
|
EXIT /B
|
|
|
|
)
|
|
|
|
MKDIR "%BUILDDIR%"
|
|
CD "%BUILDDIR%" || EXIT /B
|
|
|
|
IF %OPT_GENERATE% == 1 (
|
|
|
|
CMAKE.EXE %~dp0thrift ^
|
|
-G"%GENERATOR%" ^
|
|
-DBISON_EXECUTABLE=%WIN3P_ROOT%\dist\winflexbison\win_bison.exe ^
|
|
-DBOOST_ROOT=%WIN3P_ROOT%\dist\boost_%TP_BOOST_VERSION% ^
|
|
-DBOOST_LIBRARYDIR=%WIN3P_ROOT%\dist\boost_%TP_BOOST_VERSION%\%BOOST_LIBDIR% ^
|
|
-DCMAKE_INSTALL_PREFIX=%OUTDIR% ^
|
|
-DCMAKE_BUILD_TYPE=%BUILDTYPE% ^
|
|
-DFLEX_EXECUTABLE=%WIN3P_ROOT%\dist\winflexbison\win_flex.exe ^
|
|
-DINTTYPES_ROOT=%WIN3P_ROOT%\dist\msinttypes ^
|
|
-DLIBEVENT_ROOT=%WIN3P_ROOT%\dist\libevent-%TP_LIBEVENT_VERSION%\%COMPILER%\%ARCH%\%BUILDTYPE% ^
|
|
-DOPENSSL_ROOT_DIR=%WIN3P_ROOT%\dist\openssl-%TP_OPENSSL_VERSION%\%COMPILER%\%ARCH%\%BUILDTYPE%\dynamic ^
|
|
-DOPENSSL_USE_STATIC_LIBS=OFF ^
|
|
-DZLIB_LIBRARY=%WIN3P_ROOT%\dist\zlib-%TP_ZLIB_VERSION%\%COMPILER%\%ARCH%\lib\zlib%ZLIB_LIB_SUFFIX%.lib ^
|
|
-DZLIB_ROOT=%WIN3P_ROOT%\dist\zlib-%TP_ZLIB_VERSION%\%COMPILER%\%ARCH% ^
|
|
-DWITH_BOOSTTHREADS=ON ^
|
|
-DWITH_SHARED_LIB=OFF ^
|
|
-DWITH_STATIC_LIB=ON || EXIT /B
|
|
|
|
)
|
|
|
|
IF %OPT_BUILD% == 1 (
|
|
|
|
CD %BUILDDIR%
|
|
CMAKE.EXE --build . --config %BUILDTYPE% --target INSTALL || EXIT /B
|
|
|
|
)
|
|
|
|
IF %OPT_TEST% == 1 (
|
|
|
|
CALL :SETRUNPATH || EXIT /B
|
|
CMAKE.EXE --build . --config %BUILDTYPE% --target RUN_TESTS || EXIT /B
|
|
|
|
)
|
|
|
|
:SETRUNPATH
|
|
SET PATH=!PATH!;%WIN3P_ROOT%\dist\boost_%TP_BOOST_VERSION%\%BOOST_LIBDIR%
|
|
SET PATH=!PATH!;%WIN3P_ROOT%\dist\openssl-%TP_OPENSSL_VERSION%\%COMPILER%\%ARCH%\%BUILDTYPE%\dynamic\bin
|
|
SET PATH=!PATH!;%WIN3P_ROOT%\dist\zlib-%TP_ZLIB_VERSION%\%COMPILER%\%ARCH%\bin
|
|
EXIT /B
|
|
|
|
ENDLOCAL
|
|
EXIT /B
|