aboutsummaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authorsvidyuk <svidyuk@yandex-team.com>2024-04-05 07:07:56 +0300
committersvidyuk <svidyuk@yandex-team.com>2024-04-05 07:17:50 +0300
commit6484550aa9842e870619262b6ff32e2e35820210 (patch)
tree014cf2c50eb53eb5365a51ee0a0b61cc02ed9afe /build
parent72c0e2fa8054597e8e76a0c1dd60e5539a4278fe (diff)
downloadydb-6484550aa9842e870619262b6ff32e2e35820210.tar.gz
Do not drop adincls in ya make opensource build because of cmake export replacements
a118aa391374ee757d795d5237e28fb8cf1e74fe
Diffstat (limited to 'build')
-rw-r--r--build/conf/opensource_export.conf20
-rw-r--r--build/conf/proto.conf23
-rw-r--r--build/ymake.core.conf1
3 files changed, 37 insertions, 7 deletions
diff --git a/build/conf/opensource_export.conf b/build/conf/opensource_export.conf
new file mode 100644
index 0000000000..3437b7efd8
--- /dev/null
+++ b/build/conf/opensource_export.conf
@@ -0,0 +1,20 @@
+when ($OPENSOURCE_PROJECT) {
+ select ($OPENSOURCE_PROJECT) {
+ "catboost" ? {
+ OPENSOURCE_REPLACE_OPENSSL="1.1.1t"
+ }
+ "yt" ? {
+ OPENSOURCE_REPLACE_LINUX_HEADERS="6.5.9"
+ }
+ "yt-cpp-sdk" ? {
+ USE_STL_SYSTEM=yes
+ USE_INTERNAL_STL=no
+ OS_SDK=ubuntu-20
+ TSTRING_IS_STD_STRING=yes
+ _SEM_EXTRA_CXX_FLAGS=-DNO_CUSTOM_CHAR_PTR_STD_COMPARATOR
+ OPENSOURCE_REPLACE_PROTOBUF="3.19.1"
+ OPENSOURCE_REPLACE_LINUX_HEADERS="6.5.9"
+ # OPENSOURCE_REPLACE_OPENSSL="[>=3.2.0]"
+ }
+ }
+}
diff --git a/build/conf/proto.conf b/build/conf/proto.conf
index 486b32f106..1028a8c79a 100644
--- a/build/conf/proto.conf
+++ b/build/conf/proto.conf
@@ -5,9 +5,18 @@ NEW_JAVA_PROTOC=yes
when ($NEW_JAVA_PROTOC == "yes") {
JAVA_PROTOC=${tool:"build/platform/java/protoc"}
}
-PROTOC_STYLEGUIDE_OUT=--cpp_styleguide_out=$ARCADIA_BUILD_ROOT/$PROTO_NAMESPACE
-PROTOC_PLUGIN_STYLEGUIDE=--plugin=protoc-gen-cpp_styleguide=${tool:"contrib/tools/protoc/plugins/cpp_styleguide"}
-PROTOBUF_PATH=${ARCADIA_ROOT}/contrib/libs/protobuf/src
+when ($OPENSOURCE_REPLACE_PROTOBUF) {
+ PROTOC_STYLEGUIDE_OUT=
+ PROTOC_PLUGIN_STYLEGUIDE=
+ PROTOBUF_PATH="${protobuf_INCLUDE_DIRS}"
+ DEFAULT_PROTOC_TOOLS=
+}
+otherwise {
+ PROTOC_STYLEGUIDE_OUT=--cpp_styleguide_out=$ARCADIA_BUILD_ROOT/$PROTO_NAMESPACE
+ PROTOC_PLUGIN_STYLEGUIDE=--plugin=protoc-gen-cpp_styleguide=${tool:"contrib/tools/protoc/plugins/cpp_styleguide"}
+ PROTOBUF_PATH=${ARCADIA_ROOT}/contrib/libs/protobuf/src
+ DEFAULT_PROTOC_TOOLS=${hide;tool:"contrib/tools/protoc/bin"} ${hide;tool:"contrib/tools/protoc/plugins/cpp_styleguide"}
+}
USE_VANILLA_PROTOC=no
PROTOC_TRANSITIVE_HEADERS=yes
_PROTOC_FLAGS=
@@ -352,7 +361,7 @@ GO_PROTO_CMDLINE=${cwd;rootdir;input:File} $YMAKE_PYTHON3 ${input:"build/scripts
macro _GO_PROTO_CMD_IMPL(File, OPTS...) {
.CMD=$GO_PROTO_CMDLINE $OPTS ${kv;hide:"p PB"} ${kv;hide:"pc yellow"}
.PEERDIR=${GO_PROTOBUF_IMPORTS} ${GO_PROTOBUF_WELLKNOWN_TYPES}
- .ADDINCL=FOR proto contrib/libs/protobuf/src
+ .ADDINCL=FOR proto ${PROTOBUF_PATH}
}
# tag:go-specific tag:proto
@@ -366,12 +375,12 @@ macro _GO_PROTO_CMD(File) {
### Generate .yson.go from .proto using yt/yt/orm/go/codegen/yson/internal/proto-yson-gen/cmd/proto-yson-gen
macro YT_ORM_PROTO_YSON(OUT_OPTS[], Files...) {
.CMD=${cwd:BINDIR} $PROTOC --plugin=protoc-gen-custom=${tool:"yt/yt/orm/go/codegen/yson/internal/proto-yson-gen/cmd/proto-yson-gen"} -I=${ARCADIA_ROOT}/${PROTO_NAMESPACE} ${pre=-I=:_PROTO__INCLUDE} -I=${ARCADIA_ROOT} --custom_out="$OUT_OPTS paths=base_name:." --custom_opt="goroot=${GO_TOOLS_ROOT}" $_PROTOC_FLAGS ${input:Files} ${output;hide;noauto;nopath;noext;suf=.yson.go:Files} ${hide:PROTO_FAKEID}
- .ADDINCL=FOR proto ${ARCADIA_ROOT}/${MODDIR} FOR proto ${ARCADIA_ROOT}/${GO_TEST_IMPORT_PATH} FOR proto yt ${ARCADIA_BUILD_ROOT}/yt FOR proto contrib/libs/protobuf/src
+ .ADDINCL=FOR proto ${ARCADIA_ROOT}/${MODDIR} FOR proto ${ARCADIA_ROOT}/${GO_TEST_IMPORT_PATH} FOR proto yt ${ARCADIA_BUILD_ROOT}/yt FOR proto ${PROTOBUF_PATH}
.PEERDIR=$GOSTD/strings $GOSTD/fmt $GOSTD/errors $GOSTD/encoding/json library/go/core/xerrors yt/go/yson yt/go/yterrors yt/yt/orm/go/codegen/yson/ytypes contrib/libs/protobuf
}
-_SEM_CPP_PROTO_CMD=target_proto_messages PRIVATE ${input:File} $CPP_PROTO_OUTS_SEM ${output;hide;suf=${OBJ_SUF}.pb.o:File} ${hide;tool:"contrib/tools/protoc/bin"} ${hide;tool:"contrib/tools/protoc/plugins/cpp_styleguide"} \
+_SEM_CPP_PROTO_CMD=target_proto_messages PRIVATE ${input:File} $CPP_PROTO_OUTS_SEM ${output;hide;suf=${OBJ_SUF}.pb.o:File} $DEFAULT_PROTOC_TOOLS \
&& set_global_flags COMMON_PROTOC_FLAGS \
&& target_proto_outs --cpp_out=$ARCADIA_BUILD_ROOT/$PROTO_NAMESPACE $PROTOC_STYLEGUIDE_OUT \
&& target_proto_addincls ./$PROTO_NAMESPACE $ARCADIA_ROOT/$PROTO_NAMESPACE ${_PROTO__INCLUDE} $ARCADIA_BUILD_ROOT $PROTOBUF_PATH
@@ -389,7 +398,7 @@ macro _CPP_VANILLA_PROTO_CMD(File) {
.PEERDIR=contrib/libs/protobuf_std
}
-_SEM_CPP_EV_CMD=target_ev_messages PRIVATE ${input:File} $CPP_EV_OUTS_SEM ${output;hide;suf=${OBJ_SUF}.pb.o:File} ${hide;tool:"tools/event2cpp/bin"} ${hide;tool:"contrib/tools/protoc/bin"} ${hide;tool:"contrib/tools/protoc/plugins/cpp_styleguide"} \
+_SEM_CPP_EV_CMD=target_ev_messages PRIVATE ${input:File} $CPP_EV_OUTS_SEM ${output;hide;suf=${OBJ_SUF}.pb.o:File} ${hide;tool:"tools/event2cpp/bin"} $DEFAULT_PROTOC_TOOLS \
&& set_global_flags COMMON_PROTOC_FLAGS \
&& target_proto_outs --cpp_out=$ARCADIA_BUILD_ROOT/$PROTO_NAMESPACE $PROTOC_STYLEGUIDE_OUT --event2cpp_out=$ARCADIA_BUILD_ROOT/$PROTO_NAMESPACE \
&& target_proto_addincls ./$PROTO_NAMESPACE $ARCADIA_ROOT/$PROTO_NAMESPACE ${_PROTO__INCLUDE} $ARCADIA_BUILD_ROOT $PROTOBUF_PATH $ARCADIA_ROOT/library/cpp/eventlog
diff --git a/build/ymake.core.conf b/build/ymake.core.conf
index 160cd249ed..18b7851a4f 100644
--- a/build/ymake.core.conf
+++ b/build/ymake.core.conf
@@ -71,6 +71,7 @@ when ($LOCAL && $XCODE) {
@import "${CONF_ROOT}/conf/settings.conf"
@import "${CONF_ROOT}/conf/opensource.conf"
+@import "${CONF_ROOT}/conf/opensource_export.conf"
@import "${CONF_ROOT}/conf/sysincl.conf"
@import "${CONF_ROOT}/conf/license.conf"
@import "${CONF_ROOT}/conf/docs.conf"