[matroska] r757 - trunk/DvdMenuXtractor

[email protected]
Newsgroups gmane.comp.multimedia.matroska.cvs
Message-ID <[email protected]>
Author: robux4
Date: 2004-09-08 18:35:21 +0400 (Wed, 08 Sep 2004)
New Revision: 757

Modified:
   trunk/DvdMenuXtractor/DvdMenuXtractor.bkl
   trunk/DvdMenuXtractor/makefile.vc
Log:
handle a debug and release build

Modified: trunk/DvdMenuXtractor/DvdMenuXtractor.bkl
===================================================================
--- trunk/DvdMenuXtractor/DvdMenuXtractor.bkl	2004-09-08 12:58:17 UTC (rev 756)
+++ trunk/DvdMenuXtractor/DvdMenuXtractor.bkl	2004-09-08 14:35:21 UTC (rev 757)
@@ -1,47 +1,68 @@
 <?xml version="1.0" ?>
 <makefile>
-	<option name="BUILD">
-		<values>debug release</values>
-		<default-value>release</default-value>
-	</option>
-
-	<set var="BUILDDIR">
-		Release
-<!-- doesn't work        <if cond="BUILD=='debug'">Debug</if>
-        <if cond="BUILD!='debug'">Release</if>-->
+    <option name="BUILD">
+        <values>debug,release</values>
+        <values-description>Debug,Release</values-description>
+        <default-value>release</default-value>
+        <description>Type of compiled binaries</description>
+    </option>
+    
+    <set var="BUILDDIR">build</set>
+	<set var="DEBUG_FLAG">
+		<if cond="BUILD=='debug'">on</if>
+		<if cond="BUILD=='release'">off</if>
 	</set>
+	<set var="OPTIMIZE">
+		<if cond="BUILD=='debug'">off</if>
+		<if cond="BUILD=='release'">speed</if>
+	</set>
+	<set var="DEBUG_SUFFIX">
+		<if cond="BUILD=='debug'">d</if>
+	</set>
+	<set var="LDFLAGS" append="1">
+		<if cond="BUILD=='release'">/opt:ref</if>
+	</set>
+	<set var="WX_FLAGS">
+		<if cond="BUILD=='debug'">__WXDEBUG__</if>
+	</set>
 	
-    <exe id="DvdMenuXtractor">
-		<debug-info>on</debug-info>
-		<debug-runtime-libs>off</debug-runtime-libs>
-		<optimize>speed</optimize>
-		
+    <exe id="DvdMenuXtractor">
+		<debug-info>$(DEBUG_FLAG)</debug-info>
+		<debug-runtime-libs>$(DEBUG_FLAG)</debug-runtime-libs>
+		<optimize>$(OPTIMIZE)</optimize>
+		
 		<res-include>F:\tmp\wxWindows-2.5.1\include</res-include>
 		<win32-res>DvdMenuXtractor.rc</win32-res>
 
 		<app-type>gui</app-type>
-		<define>__WXDEBUG__</define>
+		<define>$(WX_FLAGS)</define>
         <sources>A52Decoder.cpp DvdMenuXtractor.cpp IFOFile.cpp MPEG2Decoder.cpp MyWizard.cpp SUBDecoder.cpp VobParser.cpp base64.cpp spudec/spudec.c dvdread_win32/dvd_reader.c dvdread_win32/ifo_read.c dvdread_win32/iso_lang.c</sources>
-		<!-- Change these paths to your local wxWidget installation -->
-		<include>F:\tmp\wxWindows-2.5.1\include</include>
-		<include>F:\tmp\wxWindows-2.5.1\lib\vc_lib\mswd</include>
 		
+		<if cond="PLATFORM_WIN32=='1'">
+			<!-- Change these paths to your local wxWidget installation -->
+			<include>F:\tmp\wxWindows-2.5.1\include</include>
+			<include>F:\tmp\wxWindows-2.5.1\lib\vc_lib\msw$(DEBUG_SUFFIX)</include>
+		</if>
+		
 		<include>mpeg2dec/include</include>
 		<include>a52dec/include</include>
 		<include>./</include>
 		
-		<ldflags>/opt:ref</ldflags>
-		<sys-lib>wxbase25d</sys-lib>
-		<sys-lib>wxmsw25d_core</sys-lib>
-		<sys-lib>user32</sys-lib>
-		<sys-lib>comdlg32</sys-lib>
-		<sys-lib>comctl32</sys-lib>
-		<sys-lib>shell32</sys-lib>
-		<sys-lib>gdi32</sys-lib>
-		<sys-lib>advapi32</sys-lib>
-		<sys-lib>ole32</sys-lib>
-		<sys-lib>rpcrt4</sys-lib>
-		<lib-path>F:\tmp\wxWindows-2.5.1\lib\vc_lib</lib-path>
+		<if cond="PLATFORM_WIN32=='1'">
+			<sys-lib>wxbase25$(DEBUG_SUFFIX)</sys-lib>
+			<sys-lib>wxmsw25$(DEBUG_SUFFIX)_core</sys-lib>
+			<sys-lib>user32</sys-lib>
+			<sys-lib>comdlg32</sys-lib>
+			<sys-lib>comctl32</sys-lib>
+			<sys-lib>shell32</sys-lib>
+			<sys-lib>gdi32</sys-lib>
+			<sys-lib>advapi32</sys-lib>
+			<sys-lib>ole32</sys-lib>
+			<sys-lib>rpcrt4</sys-lib>
+		</if>
+		<if cond="PLATFORM_WIN32=='1'">
+			<lib-path>F:\tmp\wxWindows-2.5.1\lib\vc_lib</lib-path>
+		</if>
 		<lib-path>a52dec/vc++</lib-path>
 		<lib-path>mpeg2dec/vc++</lib-path>
 

Modified: trunk/DvdMenuXtractor/makefile.vc
===================================================================
--- trunk/DvdMenuXtractor/makefile.vc	2004-09-08 12:58:17 UTC (rev 756)
+++ trunk/DvdMenuXtractor/makefile.vc	2004-09-08 14:35:21 UTC (rev 757)
@@ -28,96 +28,146 @@
 # Standard linker flags 
 LDFLAGS = 
 
+# Type of compiled binaries [debug,release]
+BUILD = release
 
 
+
 # -------------------------------------------------------------------------
 # Do not modify the rest of this file!
 # -------------------------------------------------------------------------
 
 ### Variables: ###
 
-DVDMENUXTRACTOR_CFLAGS = /MD /DWIN32 /Zi /FdRelease\DvdMenuXtractor.pdb /O2 \
-	/D_WINDOWS /D__WXDEBUG__ /IF:\tmp\wxWindows-2.5.1\include \
-	/IF:\tmp\wxWindows-2.5.1\lib\vc_lib\mswd /Impeg2dec\include \
+DVDMENUXTRACTOR_CFLAGS = /MD$(__DEBUG_FLAG_5) /DWIN32 $(__DEBUG_FLAG_2) \
+	/Fdbuild\DvdMenuXtractor.pdb $(____DEBUG_FLAG_4_p) $(__OPTIMIZE_6) \
+	/D_WINDOWS $(__WX_FLAGS_p) /IF:\tmp\wxWindows-2.5.1\include \
+	/IF:\tmp\wxWindows-2.5.1\lib\vc_lib\msw$(DEBUG_SUFFIX) /Impeg2dec\include \
 	/Ia52dec\include /I.\ $(CPPFLAGS) $(CFLAGS)
-DVDMENUXTRACTOR_CXXFLAGS = /MD /DWIN32 /Zi /FdRelease\DvdMenuXtractor.pdb /O2 \
-	/D_WINDOWS /D__WXDEBUG__ /IF:\tmp\wxWindows-2.5.1\include \
-	/IF:\tmp\wxWindows-2.5.1\lib\vc_lib\mswd /Impeg2dec\include \
+DVDMENUXTRACTOR_CXXFLAGS = /MD$(__DEBUG_FLAG_5) /DWIN32 $(__DEBUG_FLAG_2) \
+	/Fdbuild\DvdMenuXtractor.pdb $(____DEBUG_FLAG_4_p) $(__OPTIMIZE_6) \
+	/D_WINDOWS $(__WX_FLAGS_p) /IF:\tmp\wxWindows-2.5.1\include \
+	/IF:\tmp\wxWindows-2.5.1\lib\vc_lib\msw$(DEBUG_SUFFIX) /Impeg2dec\include \
 	/Ia52dec\include /I.\ /GR /GX $(CPPFLAGS) $(CXXFLAGS)
 DVDMENUXTRACTOR_OBJECTS =  \
-	Release\DvdMenuXtractor_DvdMenuXtractor.res \
-	Release\DvdMenuXtractor_A52Decoder.obj \
-	Release\DvdMenuXtractor_DvdMenuXtractor.obj \
-	Release\DvdMenuXtractor_IFOFile.obj \
-	Release\DvdMenuXtractor_MPEG2Decoder.obj \
-	Release\DvdMenuXtractor_MyWizard.obj \
-	Release\DvdMenuXtractor_SUBDecoder.obj \
-	Release\DvdMenuXtractor_VobParser.obj \
-	Release\DvdMenuXtractor_base64.obj \
-	Release\DvdMenuXtractor_spudec.obj \
-	Release\DvdMenuXtractor_dvd_reader.obj \
-	Release\DvdMenuXtractor_ifo_read.obj \
-	Release\DvdMenuXtractor_iso_lang.obj
+	build\DvdMenuXtractor_DvdMenuXtractor.res \
+	build\DvdMenuXtractor_A52Decoder.obj \
+	build\DvdMenuXtractor_DvdMenuXtractor.obj \
+	build\DvdMenuXtractor_IFOFile.obj \
+	build\DvdMenuXtractor_MPEG2Decoder.obj \
+	build\DvdMenuXtractor_MyWizard.obj \
+	build\DvdMenuXtractor_SUBDecoder.obj \
+	build\DvdMenuXtractor_VobParser.obj \
+	build\DvdMenuXtractor_base64.obj \
+	build\DvdMenuXtractor_spudec.obj \
+	build\DvdMenuXtractor_dvd_reader.obj \
+	build\DvdMenuXtractor_ifo_read.obj \
+	build\DvdMenuXtractor_iso_lang.obj
 
 ### Conditionally set variables: ###
 
+!if "$(BUILD)" == "release"
+LDFLAGS = /opt:ref
+!endif
+!if "$(BUILD)" == "debug"
+__DEBUG_FLAG_2 = /Zi
+!endif
+!if "$(BUILD)" == "release"
+__DEBUG_FLAG_2 = 
+!endif
+!if "$(BUILD)" == "debug"
+__DEBUG_FLAG_3 = /DEBUG
+!endif
+!if "$(BUILD)" == "release"
+__DEBUG_FLAG_3 = 
+!endif
+!if "$(BUILD)" == "debug"
+____DEBUG_FLAG_4_p = /D_DEBUG
+!endif
+!if "$(BUILD)" == "release"
+____DEBUG_FLAG_4_p = 
+!endif
+!if "$(BUILD)" == "debug"
+____DEBUG_FLAG_4_p_1 = /d _DEBUG
+!endif
+!if "$(BUILD)" == "release"
+____DEBUG_FLAG_4_p_1 = 
+!endif
+!if "$(BUILD)" == "debug"
+__DEBUG_FLAG_5 = d
+!endif
+!if "$(BUILD)" == "release"
+__DEBUG_FLAG_5 = 
+!endif
+!if "$(BUILD)" == "debug"
+__OPTIMIZE_6 = /Od
+!endif
+!if "$(BUILD)" == "release"
+__OPTIMIZE_6 = /O2
+!endif
+!if "$(BUILD)" == "debug"
+__WX_FLAGS_p = /D__WXDEBUG__
+!endif
+!if "$(BUILD)" == "debug"
+DEBUG_SUFFIX = d
+!endif
 
 
-all: Release
-Release:
-	-if not exist Release mkdir Release
+all: build
+build:
+	-if not exist build mkdir build
 
 ### Targets: ###
 
-all: Release\DvdMenuXtractor.exe
+all: build\DvdMenuXtractor.exe
 
 clean: 
-	-if exist Release\*.obj del Release\*.obj
-	-if exist Release\*.res del Release\*.res
-	-if exist Release\DvdMenuXtractor.exe del Release\DvdMenuXtractor.exe
-	-if exist Release\DvdMenuXtractor.ilk del Release\DvdMenuXtractor.ilk
-	-if exist Release\DvdMenuXtractor.pdb del Release\DvdMenuXtractor.pdb
+	-if exist build\*.obj del build\*.obj
+	-if exist build\*.res del build\*.res
+	-if exist build\DvdMenuXtractor.exe del build\DvdMenuXtractor.exe
+	-if exist build\DvdMenuXtractor.ilk del build\DvdMenuXtractor.ilk
+	-if exist build\DvdMenuXtractor.pdb del build\DvdMenuXtractor.pdb
 
-Release\DvdMenuXtractor.exe: $(DVDMENUXTRACTOR_OBJECTS) Release\DvdMenuXtractor_DvdMenuXtractor.res
-	link /NOLOGO /OUT:$@ $(LDFLAGS) /DEBUG /SUBSYSTEM:WINDOWS /opt:ref /LIBPATH:F:\tmp\wxWindows-2.5.1\lib\vc_lib /LIBPATH:a52dec\vc++ /LIBPATH:mpeg2dec\vc++ @<<
-	$(DVDMENUXTRACTOR_OBJECTS)  wxbase25d.lib wxmsw25d_core.lib user32.lib comdlg32.lib comctl32.lib shell32.lib gdi32.lib advapi32.lib ole32.lib rpcrt4.lib
+build\DvdMenuXtractor.exe: $(DVDMENUXTRACTOR_OBJECTS) build\DvdMenuXtractor_DvdMenuXtractor.res
+	link /NOLOGO /OUT:$@ $(LDFLAGS) $(__DEBUG_FLAG_3) /SUBSYSTEM:WINDOWS /LIBPATH:F:\tmp\wxWindows-2.5.1\lib\vc_lib /LIBPATH:a52dec\vc++ /LIBPATH:mpeg2dec\vc++ @<<
+	$(DVDMENUXTRACTOR_OBJECTS)  wxbase25$(DEBUG_SUFFIX).lib wxmsw25$(DEBUG_SUFFIX)_core.lib user32.lib comdlg32.lib comctl32.lib shell32.lib gdi32.lib advapi32.lib ole32.lib rpcrt4.lib
 <<
 
-Release\DvdMenuXtractor_DvdMenuXtractor.res: .\DvdMenuXtractor.rc
-	rc /fo$@  /d WIN32  /i F:\tmp\wxWindows-2.5.1\include $**
+build\DvdMenuXtractor_DvdMenuXtractor.res: .\DvdMenuXtractor.rc
+	rc /fo$@  /d WIN32 $(____DEBUG_FLAG_4_p_1) /i F:\tmp\wxWindows-2.5.1\include $**
 
-Release\DvdMenuXtractor_A52Decoder.obj: .\A52Decoder.cpp
+build\DvdMenuXtractor_A52Decoder.obj: .\A52Decoder.cpp
 	$(CXX) /c /nologo /TP /Fo$@ $(DVDMENUXTRACTOR_CXXFLAGS) $**
 
-Release\DvdMenuXtractor_DvdMenuXtractor.obj: .\DvdMenuXtractor.cpp
+build\DvdMenuXtractor_DvdMenuXtractor.obj: .\DvdMenuXtractor.cpp
 	$(CXX) /c /nologo /TP /Fo$@ $(DVDMENUXTRACTOR_CXXFLAGS) $**
 
-Release\DvdMenuXtractor_IFOFile.obj: .\IFOFile.cpp
+build\DvdMenuXtractor_IFOFile.obj: .\IFOFile.cpp
 	$(CXX) /c /nologo /TP /Fo$@ $(DVDMENUXTRACTOR_CXXFLAGS) $**
 
-Release\DvdMenuXtractor_MPEG2Decoder.obj: .\MPEG2Decoder.cpp
+build\DvdMenuXtractor_MPEG2Decoder.obj: .\MPEG2Decoder.cpp
 	$(CXX) /c /nologo /TP /Fo$@ $(DVDMENUXTRACTOR_CXXFLAGS) $**
 
-Release\DvdMenuXtractor_MyWizard.obj: .\MyWizard.cpp
+build\DvdMenuXtractor_MyWizard.obj: .\MyWizard.cpp
 	$(CXX) /c /nologo /TP /Fo$@ $(DVDMENUXTRACTOR_CXXFLAGS) $**
 
-Release\DvdMenuXtractor_SUBDecoder.obj: .\SUBDecoder.cpp
+build\DvdMenuXtractor_SUBDecoder.obj: .\SUBDecoder.cpp
 	$(CXX) /c /nologo /TP /Fo$@ $(DVDMENUXTRACTOR_CXXFLAGS) $**
 
-Release\DvdMenuXtractor_VobParser.obj: .\VobParser.cpp
+build\DvdMenuXtractor_VobParser.obj: .\VobParser.cpp
 	$(CXX) /c /nologo /TP /Fo$@ $(DVDMENUXTRACTOR_CXXFLAGS) $**
 
-Release\DvdMenuXtractor_base64.obj: .\base64.cpp
+build\DvdMenuXtractor_base64.obj: .\base64.cpp
 	$(CXX) /c /nologo /TP /Fo$@ $(DVDMENUXTRACTOR_CXXFLAGS) $**
 
-Release\DvdMenuXtractor_spudec.obj: .\spudec\spudec.c
+build\DvdMenuXtractor_spudec.obj: .\spudec\spudec.c
 	$(CC) /c /nologo /TC /Fo$@ $(DVDMENUXTRACTOR_CFLAGS) $**
 
-Release\DvdMenuXtractor_dvd_reader.obj: .\dvdread_win32\dvd_reader.c
+build\DvdMenuXtractor_dvd_reader.obj: .\dvdread_win32\dvd_reader.c
 	$(CC) /c /nologo /TC /Fo$@ $(DVDMENUXTRACTOR_CFLAGS) $**
 
-Release\DvdMenuXtractor_ifo_read.obj: .\dvdread_win32\ifo_read.c
+build\DvdMenuXtractor_ifo_read.obj: .\dvdread_win32\ifo_read.c
 	$(CC) /c /nologo /TC /Fo$@ $(DVDMENUXTRACTOR_CFLAGS) $**
 
-Release\DvdMenuXtractor_iso_lang.obj: .\dvdread_win32\iso_lang.c
+build\DvdMenuXtractor_iso_lang.obj: .\dvdread_win32\iso_lang.c
 	$(CC) /c /nologo /TC /Fo$@ $(DVDMENUXTRACTOR_CFLAGS) $**
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.