2011-08-09 4 views
1

나는 SCons로 코드 :: 블록 프로젝트를 이동합니다. - 각 응용 프로그램 및 lib 폴더 또는 큰 하나에 여러 개의 작은 SConscripts을 가지고이 SCons는 내 처음 Scons : 하나의 큰 SContruct 모든 대 많은 작은 것들

trunk 
    lib1 
    lib2 
    libn 
    app1 
    app2 
    appn 

입니다

내가 더 나은 것 알아 내려고 노력하고 있어요 : 나는 다음과 같은 구조의 소스 트리를 트렁크 아래 소스, 스위치 및 각 프로젝트의 사전/사후 빌드 명령을 설명하는 섹션으로 구성합니다.

저는 개인적으로 하나의 파일을 다루는 것을 선호하지만 SCons에 경험이있는 사람들의 의견을 듣고 싶습니다.

감사합니다.

답변

2

개개의 SConscript 파일의 장점은 각 파일 내의 파일 이름이 SConscript 파일이 상주하는 디렉토리와 관련된다는 것입니다. 따라서 빌드 대상에 대한 파일 이름 목록을 만드는 것이 덜 장황하게됩니다. 한편

이 필요 목표는 때때로 Export() -ing와 서로 통신하는 기호 Import() -ing 많이 필요 결국 다른 SConscript 파일을 공유 할 수 있습니다.

앱과 라이브러리가 상당히 구분되어있는 것 같습니다. 귀하의 경우, 각 주요 디렉토리에 여러 개의 SConscript 파일을 작성하는 것으로 시작합니다. 일반적으로 나중에 분리하는 것보다 나중에 결합하는 것이 더 쉽습니다. 그것의

+0

나는 수십개의 SConscript 파일을 일관된 형식으로 유지하여 각각의 SConscript 건물이 자체적으로는 조금씩 다른 방식으로 끝나지 않을 것이라고 생각합니다. – jackhab

+0

이 인수는 의미가 없습니다. 왜냐하면 이미 많은 다른 소스 코드 파일에 대해 이미 그렇게하고 있기 때문입니다. SConscript 파일은 Python 소스 코드입니다. 일관성있게 유지하는 것이 그리 어렵지 않습니다. –

0

생각해이 방법 :

당신이 당신의 실제 프로젝트가 하나 개의 큰 파일이나 여러 개의 작은 파일로 구성 할 것인가? 물론 모든 것이 하나의 파일에 모두 포함되어 있다면 일을 더 쉽게 할 수 있지만 조직을 위해서는 여러 파일을 더 쉽게 만들 수 있습니다.

메인 트렁크에 위치한 SConstruct 파일 (경고 및 최적화 플래그와 같은 것들)에서 글로벌 설정을하는 등의 작업을 수행 한 다음 대상 특정 세부 사항을 처리하는 SConscript 파일로 가져올 수 있습니다 .

관련 문제