CharSyam
Tag | Location | Media | Guestbook | Admin

2009/11/21 11:54 2009/11/21 11:54
재미나고 유용한 VC 옵션 한가지

한방빌드를 만들어서 쓰다보면, 다음과 같은 경우가 생깁니다.

1. 소스 트리는 하나로 유지하고 싶다.

2. 나가는 대상에 따라서 서로 다른 기능이 동작해야 한다.(바이너리에서 완전히 빠져있게)

사실 결론은 하나입니다. #ifdef 등으로 기능이 다르게 동작하게 하는 것.

그럼 여기에 적용할 수 있는 간단한 방법은 다음과 같습니다.

1. 소스 트리를 따로 유지한다. –> 1번에 위배되고, 유지보수에 손이 많이 갑니다.

2. 프로젝트 속성을 여러개 만들어서, 사용한다. 하지만, 이것도, 한 솔루션에 프로젝트가 여러 개 있다면, 굉장히 번거로운 작업이 생깁니다.

3. 하나의 프로젝트 속성을 쓰데, 매번, 빌드 할 때, #define 속성을 변경해준다.

4. 빌드 시, 자동으로 소스 코드에 설정에 맞는 #define 이 들어가도록 빌드 스크립트를 작성한다.

위에 것들을 보면 4번이 그래도 가장 나아보입니다. 그리고, 설정 작업이 복잡해 진다면, 4번 형태로 가는게 좋을듯 합니다.

그런데, 지금부터 알려드릴(이미 공개된 ㅋㅋ) 옵션을 사용하게 되면, 한방에 처리가 됩니다.

뭐냐 하면,  CL 이라는 환경 변수입니다.

먼저 자세한 건 다음 사이트에서 알 수 있습니다.

http://msdn.microsoft.com/en-us/library/kezkeayy.aspx

간단하게 설명하자면 set CL=-D_TEST_A_

이런식으로 지정하면 빌드시에 자동으로 _TEST_A_ 옵션이 적용됩니다. –D 뿐만 아니라 다른 것들도 쉽게 바뀌게 됩니다. 즉, 같은 빌드 프로세스를 타면서 앞쪽에 CL옵션을 설정해서 #define 한것과 같은 효과를 낼 수 있습니다.

간단한 빌드 프로세스에서는 위의 4번과 같은 방법을 쓰지 않고도 효과적으로 사용할 수 있습니다.

Track this back : http://liso.or.kr/~charsyam/charsyam/tc/CharSyam/trackback/63

[로그인][오픈아이디란?]
name    password    homepage
 hidden


BLOG main image
CharSyam
 Notice
 Category
전체 (90)
(19)
(3)
프로그래밍 (61)
게임 (1)
Server Setting (5)
대학원 (1)
 TAGS
모듈 분할 뷰 구글드 공병호 이미지로드 일일 빌드 지속적인 통합 뷰패킷 XML Atomic TDD 여론 조작 고수 리눅스 커널 Head First Software Development 전문가 포팅 C# 지식인의 책임 드래곤퀘스트4 더블버퍼링 MACOSX 문제 프로젝트 다국어바로가기 googletest Window Mobile 6 도전 임베디드 OS 만들기 한글바로가기 윈도우즈 모바일 google test WindowsMobile
 Calendar
«   2010/07   »
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
 Recent Entries
YES24 총알 배송 광고
CMake – CMakeLis...
Autotools 관련 좋은 링...
고수와 전문가의 차이
Zookeeper 설치 방법
 Recent Comments
오~ 이 책도 땡기는군요...
ohyecloudy - 05/25
항상 정리해야 되는데,...
CharSyam - 05/13
잘 정리하셨네요. ^^
고감자 - 05/12
네, 저도 동감합니다....
CharSyam - 2009
http://www.thisisgame....
ParkPD - 2009
 Recent Trackbacks
Discount patio furniture.
Discount furniture.
Furniture competition.
Furniture design compe...
Acomplia ribona.
Acomplia.
Premarin.
Premarin vaginal cream.
스크럼과 XP
The note of Legendre
 Archive
2010/07
2010/06
2010/05
2010/04
2010/03
 Link Site
 Visitor Statistics
Total : 38341
Today : 43
Yesterday : 73
rss
Powered by Tistory & Designed by webnoon.net