2017-01-23 6 views
0

Я пытаюсь построить последний хром (cef) на моей локальной машине. Мне удалось создать его через automate-git.py с помощью GN framework. Тем не менее, мне также необходимо предоставить некоторые дополнительные флаги компоновщика для конкретной цели (libcef).Как предоставить пользовательские флаги компоновщика для конкретной цели при построении хром через GN?

Я считаю, что это должно быть сделано путем изменения файла args.gn при создании нового каталога сборки. Но я не мог получить достаточную документацию о том, как именно предоставить флагов компоновщика конкретной цели в GN.

Любая помощь будет оценена по достоинству.

ответ

0

О хром конфигураций сборки, вы можете ссылаться на следующие ссылки:

  1. инструкции по сборке (Android) https://www.chromium.org/developers/how-tos/android-build-instructions

  2. В руководстве системы дп сборки https://chromium.googlesource.com/chromium/src/+/master/tools/gn/docs/quick_start.md

  3. О ссылки, вы можете ссылаться: ldflags https://codereview.chromium.org/1887303003/diff/20001/build/config/compiler/BUILD.gn

    ldflags += [ 
        "-fPIC", 
        "-Wl,-z,noexecstack", 
        "-Wl,-z,now", 
        "-Wl,-z,relro", 
    ] 
    if (!using_sanitizer) { 
        if (!use_cfi_diag) { 
        ldflags += [ "-Wl,-z,defs" ] 
        } 
    
        # Functions interposed by the sanitizers can make ld think 
        # that some libraries aren't needed when they actually are, 
        # http://crbug.com/234010. As workaround, disable --as-needed. 
        if (!is_nacl && !is_android) { 
        # TODO(pcc): Fix linker bug which requires us to link pthread 
        # unconditionally here (crbug.com/623236). 
        ldflags += [ 
         "-Wl,--no-as-needed", 
         "-lpthread", 
        ] 
        } 
        ldflags += [ "-Wl,--as-needed" ] 
    } 
    

    }