Browse Source

Do not use libprofile.a from sources

```
TypeError: join() argument must be str, bytes, or os.PathLike object, not 'NoneType'
Failed
```
thegeorg 1 year ago
parent
commit
d8bf44488d
4 changed files with 5 additions and 91 deletions
  1. 4 31
      build/conf/linkers/ld.conf
  2. 0 45
      build/scripts/clang_profile.py
  3. 0 1
      build/scripts/ya.make
  4. 1 14
      build/ymake.core.conf

+ 4 - 31
build/conf/linkers/ld.conf

@@ -191,9 +191,8 @@ LINK_SCRIPT_EXE_FLAGS=
 REAL_LINK_EXE_CMDLINE =\
     $YMAKE_PYTHON ${input:"build/scripts/link_exe.py"} \
     --source-root $ARCADIA_ROOT
-
-REAL_LINK_EXE_CMDLINE+=$_LD_LINKER_OUTPUT
-REAL_LINK_EXE_CMDLINE+=\
+    REAL_LINK_EXE_CMDLINE+=$_LD_LINKER_OUTPUT
+    REAL_LINK_EXE_CMDLINE+=\
     ${pre=--whole-archive-peers :WHOLE_ARCHIVE_PEERS} \
     ${pre=--whole-archive-libs :_WHOLE_ARCHIVE_LIBS_VALUE_GLOBAL} \
     $_LD_ARCH_FLAG \
@@ -213,17 +212,6 @@ REAL_LINK_EXE_TIDY=\
     $AUTO_INPUT \
     $_LD_ENV_STYLE
 
-PROFILE_RUNTIME_ARGS_END=end_of_args
-COPY_PROFILE_RUNTIME=\
-    $YMAKE_PYTHON3 ${input:"build/scripts/clang_profile.py"} \
-    --arch $TARGET_PLATFORM \
-    --build-root $ARCADIA_BUILD_ROOT \
-    --need-profile-runtime $NEED_PROFILE_RUNTIME \
-    $PROFILE_RUNTIME_ARGS_END
-COPY_PROFILE_RUNTIME+=\
-    ${rootrel:PEERS} \
-    $LDFLAGS
-
 # Executable Shared Library
 
 REAL_LINK_EXEC_DYN_LIB_CMDLINE =\
@@ -283,23 +271,8 @@ otherwise {
 DWARF_COMMAND=$_DWARF_COMMAND
 
 _REAL_LINK_EXE=$REAL_LINK_EXE_IMPL($_WHOLE_ARCHIVE_PEERS_VALUE)
-_LINK_EXE=
-_LINK_EXE+=$GENERATE_MF
-_LINK_EXE+=&& $GENERATE_VCS_C_INFO_NODEP
-_LINK_EXE+=&& $COPY_PROFILE_RUNTIME
-_LINK_EXE+=&& $REAL_LINK_EXE
-_LINK_EXE+=&& $DWARF_COMMAND
-_LINK_EXE+=&& $LINK_ADDITIONAL_SECTIONS_COMMAND
-_LINK_EXE+=&& $PACK_IOS_CMD
-
-_LINK_DYN_LIB=
-_LINK_DYN_LIB+=$GENERATE_MF
-_LINK_DYN_LIB+=&& $GENERATE_VCS_C_INFO_NODEP
-_LINK_DYN_LIB+=&& $COPY_PROFILE_RUNTIME
-_LINK_DYN_LIB+=&& $REAL_LINK_DYN_LIB
-_LINK_DYN_LIB+=&& $DWARF_COMMAND
-_LINK_DYN_LIB+=&& $LINK_ADDITIONAL_SECTIONS_COMMAND
-
+_LINK_EXE=$GENERATE_MF && $GENERATE_VCS_C_INFO_NODEP && $REAL_LINK_EXE && $DWARF_COMMAND && $LINK_ADDITIONAL_SECTIONS_COMMAND && $PACK_IOS_CMD
+_LINK_DYN_LIB=$GENERATE_MF && $GENERATE_VCS_C_INFO_NODEP && $REAL_LINK_DYN_LIB && $DWARF_COMMAND && $LINK_ADDITIONAL_SECTIONS_COMMAND
 when ($TIDY == "yes") {
     _REAL_LINK_EXE=$REAL_LINK_EXE_TIDY
     _LINK_EXE=$REAL_LINK_EXE

+ 0 - 45
build/scripts/clang_profile.py

@@ -1,45 +0,0 @@
-import fnmatch
-import shutil
-import optparse
-import os
-
-import process_command_files as pcf
-
-def copy_clang_rt_profile(cmd, build_root, arch):
-    profile_path = None
-    resource_dir_path = None
-
-    for flag in cmd:
-        if fnmatch.fnmatch(flag, 'contrib/libs/clang14-rt/lib/profile/libclang_rt.profile-*.a'):
-            profile_path = flag
-        if flag.startswith('-resource-dir='):
-            resource_dir_path = flag[len('-resource-dir='):]
-
-    lib_profile = os.path.join(build_root, profile_path)
-    profile_name = os.path.basename(lib_profile)
-
-    if arch == 'DARWIN':
-        dst_dir = os.path.join(build_root, resource_dir_path, 'lib/darwin')
-
-    if arch == 'LINUX':
-        dst_dir = os.path.join(build_root, resource_dir_path, 'lib/linux')
-
-    os.makedirs(dst_dir, exist_ok=True)
-    shutil.copy(lib_profile, os.path.join(dst_dir, profile_name))
-
-
-def parse_args():
-    parser = optparse.OptionParser()
-    parser.disable_interspersed_args()
-    parser.add_option('--build-root')
-    parser.add_option('--arch')
-    parser.add_option('--need-profile-runtime')
-    return parser.parse_args()
-
-
-if __name__ == '__main__':
-    opts, args = parse_args()
-    args = pcf.skip_markers(args)
-
-    if opts.need_profile_runtime != "no":
-        copy_clang_rt_profile(args, opts.build_root, opts.arch)

+ 0 - 1
build/scripts/ya.make

@@ -102,7 +102,6 @@ ELSEIF(PY3)
 
     TEST_SRCS(
         build_info_gen.py
-        clang_profile.py
     )
 ENDIF()
 

+ 1 - 14
build/ymake.core.conf

@@ -9,7 +9,7 @@
 FAKEID=314159265358
 
 SANDBOX_FAKEID=${FAKEID}.7600000
-CPP_FAKEID=2023-07-19
+CPP_FAKEID=2023-06-06
 GO_FAKEID=11100371
 ANDROID_FAKEID=2023-05-17
 CLANG_TIDY_FAKEID=2023-06-06
@@ -1132,14 +1132,6 @@ when ($ALLOCATOR == "LF") {
 SANITIZE_HEADERS=yes
 SANITIZER_CFLAGS=
 
-# tag:profile
-NEED_PROFILE_RUNTIME=no
-when ($BUILD_TYPE == "PROFILE" || $BUILD_TYPE == "COVERAGE" || ($CLANG_COVERAGE && $CLANG_COVERAGE != "no")) {
-    when($CLANG && ($TARGET_PLATFORM == "LINUX" || $TARGET_PLATFORM == "DARWIN")) {
-        NEED_PROFILE_RUNTIME=yes
-    }
-}
-
 # tag:proto tag:grpc
 _GRPC_ENABLED=no
 
@@ -1778,11 +1770,6 @@ module _LINK_UNIT: _BASE_UNIT {
         LINK_SCRIPT_EXE_FLAGS += --dynamic-cuda
     }
 
-    when ($NEED_PROFILE_RUNTIME && $NEED_PROFILE_RUNTIME != "no") {
-        LDFLAGS+=-resource-dir=contrib/libs/clang-rt
-        PEERDIR+=contrib/libs/clang14-rt/lib/profile
-    }
-
     ENABLE(COMMON_LINK_SETTINGS)
     CHECK_PROVIDES()
 }