CMake에서 현재 헤더를 생성하는 간단한 Python 스크립트가 있지만 스크립트 자체를 업데이트하면 CMake는 스크립트를 다시 실행하지 않습니다. 내가 CMake에게이 일을시킬 수있는 방법이 있습니까?CMake 헤더 생성기 업데이트
1
A
답변
2
cmake가 실행될 때 코드 생성 스크립트를 직접 호출하는 것 같습니다. 가능한 솔루션이지만 cmake에 코드 생성기를 사용하는 것은 올바른 방법이 아닙니다.
add_custom_command(
OUTPUT generated.h
COMMAND ${PYTHON_EXECUTABLE} generator.py
DEPENDS generator.py
)
을 그리고 당신은 간단한 add_library
/add_executable
명령에 전달 된 소스 파일의 목록에 헤더를 넣을 수 있습니다 다음 :
나는 당신이 당신의 사건에 대한 add_custom_command
을 사용하는 것이 좋습니다. cmake는 자동으로 모든 의존성을 추적하고 스크립트를 호출합니다.
기간 DEPENDS generator.py
은 스크립트가 변경되면 헤더를 다시 생성해야한다고 cmake에 알립니다.
generated.h
은 빌드시 (make
을 실행하거나 IDE에서 빌드 명령을 실행할 때)에만 생성됩니다. 반대로 cmake 시간에 스크립트를 실행하는 경우 (execute_process
명령 사용) cmake를 다시 실행하여 파일을 재생성해야합니다. 가능하지만 비표준 종속성을 도입하기 위해 몇 가지 트릭을 사용해야합니다.
관련 문제
- 1. C 함수 헤더 생성기
- 2. CMake GUI - X 코드 생성기 추가
- 3. (헤더 파일의 코드 스텁 생성기 찾기)
- 4. CMake
- 5. 자동 업데이트 헤더?
- 6. CMake ... ccmake 또는 cmake?
- 7. jQuery CSS 생성기 - CSS 출력 업데이트?
- 8. WCF REST 서비스 업데이트 헤더
- 9. 내 특정 CMake 프로젝트에서 CMake
- 10. Qt + VTK + Cmake
- 11. CMake 및 XCode - CMake ReRun 및 CMake PostBuild 규칙의 기본 생성을 비활성화합니다.
- 12. CMake RequireAdministrator
- 13. cmake add_custom_command
- 14. cmake : 프로그램의 여러 버전 빌드하기
- 15. C++ 정식 클래스 선언 생성기
- 16. 이미지 생성기
- 17. 결합 생성기
- 18. 난수 생성기
- 19. 스윙 생성기
- 20. 난수 생성기
- 21. NHibernate 생성기
- 22. HTML 생성기?
- 23. 난수 생성기
- 24. CMake : 타사 헤더를 디렉토리로 내 보냅니다.
- 25. CMake 컴파일 오류 .. (알 수없는 CMake 명령 "QT4_WRAP_UI")
- 26. cmake move directory
- 27. CMake 환경에서 플래그 적용하기
- 28. ++ 사용 cmake (QT)
- 29. cmake 공유 라이브러리
- 30. CMake 링크 스테이지 질문