Glad: Como usar diretamente do CMAKE

Criado em 7 nov. 2018  ·  6Comentários  ·  Fonte: Dav1dde/glad

Oi,

Quero usar os arquivos .h e .c. criados pelo webservice em meu projeto, mas não quero armazenar cada arquivo de linha de ~ 10k em meu repo.

Existe uma maneira de incluir isso e "construir" via CMAKE e ter os arquivos necessários gerados (semelhante ao GLFW)?

Obrigado pelo seu projeto

C cmake glad1 question

Comentários muito úteis

Sim é possivel. Crie um subdiretório em seu projeto e adicione CMakeLists.txt nele junto com os arquivos:

cmake_minimum_required(VERSION 3.0)
project(Glad)

add_library(glad include/glad/glad.h src/glad.c)
target_include_directories(glad PUBLIC include/)

Em seguida, em seu arquivo principal CMakeLists.txt coloque:

add_subdirectory(glad/)
target_link_libraries(<your target> PRIVATE glad)

Ou algo assim. Existem várias maneiras de se conseguir isso.

Todos 6 comentários

Sim é possivel. Crie um subdiretório em seu projeto e adicione CMakeLists.txt nele junto com os arquivos:

cmake_minimum_required(VERSION 3.0)
project(Glad)

add_library(glad include/glad/glad.h src/glad.c)
target_include_directories(glad PUBLIC include/)

Em seguida, em seu arquivo principal CMakeLists.txt coloque:

add_subdirectory(glad/)
target_link_libraries(<your target> PRIVATE glad)

Ou algo assim. Existem várias maneiras de se conseguir isso.

@Shimmen obrigado pela explicação!

Você também pode consultar o problema https://github.com/Dav1dde/glad/issues/174, onde algumas pessoas incríveis adicionaram outras maneiras de fazer isso.

Pessoalmente, eu incluiria os arquivos gerados, os símbolos devem ser classificados de forma que se você atualizar os arquivos gerados em um ponto, você obterá diferenças mínimas, também significa que você não tem uma dependência de recursos externos e Python.

Acabei de perceber que não respondi à pergunta original! Pessoalmente, gosto de manter as coisas boas fora do meu diretório de código-fonte e fora da etapa de construção do meu executável principal, então é isso que meu exemplo faz.

Presumo que já tenha respondido, se não, sinta-se à vontade para reabrir.

Eu entendo que é comum colocar os arquivos gerados em seu diretório de inclusão, mas existe uma maneira de gerar isso ao construir o CMake?

Não acho que exigir Python seja tão grande assim, é um lugar muito comum. Ter a opção é pelo menos legal.

@DerekCresswell sim, você pode executar o gerador em um build, há um CMakeLists.txt na raiz deste repositório que deve permitir que você faça isso (iirc através de add_subdirectory ).

Também tenho trabalhado em glad2, que tem um novo CMakeLists.txt com um exemplo aqui .

Esta página foi útil?
0 / 5 - 0 avaliações