[xiph-commits] r14820 - in icecast/branches/kh/icecast: . admin web win32

karl at svn.xiph.org karl at svn.xiph.org
Wed Apr 30 19:22:06 PDT 2008


Author: karl
Date: 2008-04-30 19:22:06 -0700 (Wed, 30 Apr 2008)
New Revision: 14820

Added:
   icecast/branches/kh/icecast/win32/icecastService.cpp
   icecast/branches/kh/icecast/win32/icecastService.dsp
Modified:
   icecast/branches/kh/icecast/admin/listclients.xsl
   icecast/branches/kh/icecast/admin/listmounts.xsl
   icecast/branches/kh/icecast/admin/stats.xsl
   icecast/branches/kh/icecast/config.h.vc6
   icecast/branches/kh/icecast/web/status.xsl
   icecast/branches/kh/icecast/web/style.css
   icecast/branches/kh/icecast/win32/Icecast2win.clw
   icecast/branches/kh/icecast/win32/Icecast2win.dsp
   icecast/branches/kh/icecast/win32/icecast.dsp
   icecast/branches/kh/icecast/win32/icecast2.iss
   icecast/branches/kh/icecast/win32/icecast2_console.dsp
Log:
update from win32 testing. windows service should be better now, display of
xspf links on web pages, tested with IE7 as well as FF


Modified: icecast/branches/kh/icecast/admin/listclients.xsl
===================================================================
--- icecast/branches/kh/icecast/admin/listclients.xsl	2008-05-01 01:27:29 UTC (rev 14819)
+++ icecast/branches/kh/icecast/admin/listclients.xsl	2008-05-01 02:22:06 UTC (rev 14820)
@@ -19,27 +19,29 @@
 </div>
 <div class="newscontent">
 <xsl:for-each select="source">
-<h3>
+    <div class="streamheader">
+        <table cellspacing="0" cellpadding="0">
+            <colgroup align="left" />
+            <colgroup align="right" width="300" />
+            <tr>
+                <td><h3>Mount Point <xsl:value-of select="@mount" /></h3></td>
+                <xsl:choose>
+                    <xsl:when test="authenticator">
+                        <td align="right"><a class="auth" href="/auth.xsl">Login</a></td>
+                    </xsl:when>
+                    <xsl:otherwise>
+                        <td align="right"> <a href="{@mount}.m3u">M3U</a> <a href="{@mount}.xspf">XSPF</a></td>
+                    </xsl:otherwise>
+                </xsl:choose>
+        </tr></table>
+    </div>
 
-<xsl:choose>
-<xsl:when test="authenticator">
-<a href="/auth.xsl"><img border="0" src="/images/key.png"/></a> Authentication Required
-</xsl:when>
-<xsl:otherwise>
-<a href="{@mount}.m3u"><img border="0" src="/images/tunein.png"/></a> Mount Point
-</xsl:otherwise>
-</xsl:choose>
-<xsl:if test="server_name"><xsl:value-of select="server_name" /> </xsl:if>
-(<xsl:value-of select="@mount" />)
-<xsl:if test="authenticator"><a href="manageauth.xsl?mount={@mount}"><img border="0" src="/images/key.png"/></a> </xsl:if>
-
-</h3>
 	<table border="0" cellpadding="1" cellspacing="5" bgcolor="444444">
 	<tr>        
 	    <td align="center">
-			<a class="nav2" href="listclients.xsl?mount={@mount}">List Clients</a> | 
-        	<a class="nav2" href="moveclients.xsl?mount={@mount}">Move Listeners</a> | 
-			<a class="nav2" href="updatemetadata.xsl?mount={@mount}">Update Metadata</a> |
+			<a class="nav2" href="listclients.xsl?mount={@mount}">List Clients</a>
+        	<a class="nav2" href="moveclients.xsl?mount={@mount}">Move Listeners</a>
+			<a class="nav2" href="updatemetadata.xsl?mount={@mount}">Update Metadata</a>
         	<a class="nav2" href="killsource.xsl?mount={@mount}">Kill Source</a>
 	    </td></tr>
 	</table>

Modified: icecast/branches/kh/icecast/admin/listmounts.xsl
===================================================================
--- icecast/branches/kh/icecast/admin/listmounts.xsl	2008-05-01 01:27:29 UTC (rev 14819)
+++ icecast/branches/kh/icecast/admin/listmounts.xsl	2008-05-01 02:22:06 UTC (rev 14820)
@@ -19,29 +19,31 @@
 </div>
 <div class="newscontent">
 <xsl:for-each select="source">
-<h3>
-<xsl:choose>
-<xsl:when test="authenticator">
-<a href="/auth.xsl"><img border="0" src="/images/key.png"/></a> Authentication Required
-</xsl:when>
-<xsl:otherwise>
-<a href="{@mount}.m3u"><img border="0" src="/images/tunein.png"/></a> Mount Point
-</xsl:otherwise>
-</xsl:choose>
-<xsl:if test="server_name"><xsl:value-of select="server_name" /> </xsl:if>
-(<xsl:value-of select="@mount" />)
-<xsl:if test="authenticator"> <a href="manageauth.xsl?mount={@mount}"><img border="0" src="/images/key.png"/></a> </xsl:if>
+    <div class="streamheader">
+        <table cellspacing="0" cellpadding="0">
+            <colgroup align="left" />
+            <colgroup align="right" width="300" />
+            <tr>
+                <td><h3>Mount Point <xsl:value-of select="@mount" /></h3></td>
+                <xsl:choose>
+                    <xsl:when test="authenticator">
+                        <td align="right"><a class="auth" href="/auth.xsl">Login</a></td>
+                    </xsl:when>
+                    <xsl:otherwise>
+                        <td align="right"> <a href="{@mount}.m3u">M3U</a> <a href="{@mount}.xspf">XSPF</a></td>
+                    </xsl:otherwise>
+                </xsl:choose>
+        </tr></table>
+    </div>
 
-
-</h3>
 	<table border="0" cellpadding="1" cellspacing="5" bgcolor="444444">
 	<tr>        
 	    <td align="center">
-			<a class="nav2" href="listclients.xsl?mount={@mount}">List Clients</a> | 
-        	<a class="nav2" href="moveclients.xsl?mount={@mount}">Move Listeners</a> | 
-			<a class="nav2" href="updatemetadata.xsl?mount={@mount}">Update Metadata</a> |
+			<a class="nav2" href="listclients.xsl?mount={@mount}">List Clients</a>
+        	<a class="nav2" href="moveclients.xsl?mount={@mount}">Move Listeners</a>
+			<a class="nav2" href="updatemetadata.xsl?mount={@mount}">Update Metadata</a>
         	<a class="nav2" href="killsource.xsl?mount={@mount}">Kill Source</a>
-                <xsl:if test="authenticator"> | <a class="nav2" href="manageauth.xsl?mount={@mount}">Manage Authentication</a></xsl:if>
+                <xsl:if test="authenticator"><a class="nav2" href="manageauth.xsl?mount={@mount}">Manage Authentication</a></xsl:if>
 	    </td></tr>
 	</table>
 <br />

Modified: icecast/branches/kh/icecast/admin/stats.xsl
===================================================================
--- icecast/branches/kh/icecast/admin/stats.xsl	2008-05-01 01:27:29 UTC (rev 14819)
+++ icecast/branches/kh/icecast/admin/stats.xsl	2008-05-01 02:22:06 UTC (rev 14820)
@@ -50,25 +50,31 @@
 <img src="/images/corner_topleft.jpg" class="corner" style="display: none" />
 </div>
 <div class="newscontent">
-<h3>
-<xsl:choose>
-<xsl:when test="authenticator">
-<a href="/auth.xsl"><img border="0" src="/images/key.png"/></a> Authentication Required
-</xsl:when>
-<xsl:otherwise>
-<a href="{@mount}.m3u"><img border="0" src="/images/tunein.png"/></a>
-</xsl:otherwise>
-</xsl:choose>
-Mount Point : (<xsl:value-of select="@mount" />)
-</h3>
+<div class="streamheader">
+    <table cellspacing="0" cellpadding="0">
+        <colgroup align="left" />
+        <colgroup align="right" width="300" />
+        <tr>
+            <td><h3>Mount Point <xsl:value-of select="@mount" /></h3></td>
+            <xsl:choose>
+                <xsl:when test="authenticator">
+                    <td align="right"><a class="auth" href="/auth.xsl">Login</a></td>
+                </xsl:when>
+                <xsl:otherwise>
+                    <td align="right"> <a href="{@mount}.m3u">M3U</a> <a href="{@mount}.xspf">XSPF</a></td>
+                </xsl:otherwise>
+            </xsl:choose>
+    </tr></table>
+</div>
+
 	<table border="0" cellpadding="1" cellspacing="5" bgcolor="444444">
 	<tr>        
 	    <td align="center">
-		    <a class="nav2" href="listclients.xsl?mount={@mount}">List Clients</a> | 
-        	<a class="nav2" href="moveclients.xsl?mount={@mount}">Move MountPoints</a> | 
-        	<a class="nav2" href="updatemetadata.xsl?mount={@mount}">Update Metadata</a> |
+		    <a class="nav2" href="listclients.xsl?mount={@mount}">List Clients</a>
+        	<a class="nav2" href="moveclients.xsl?mount={@mount}">Move MountPoints</a>
+        	<a class="nav2" href="updatemetadata.xsl?mount={@mount}">Update Metadata</a>
         	<a class="nav2" href="killsource.xsl?mount={@mount}">Kill Source</a>
-                <xsl:if test="authenticator"> | <a class="nav2" href="manageauth.xsl?mount={@mount}">Manage Authentication</a></xsl:if>
+                <xsl:if test="authenticator"><a class="nav2" href="manageauth.xsl?mount={@mount}">Manage Authentication</a></xsl:if>
 	    </td></tr>
 	</table>
 <br />

Modified: icecast/branches/kh/icecast/config.h.vc6
===================================================================
--- icecast/branches/kh/icecast/config.h.vc6	2008-05-01 01:27:29 UTC (rev 14819)
+++ icecast/branches/kh/icecast/config.h.vc6	2008-05-01 02:22:06 UTC (rev 14820)
@@ -13,6 +13,9 @@
 /* Define to 1 if you have the <curl/curl.h> header file. */
 #define HAVE_CURL_CURL_H 1
 
+/* Define t o1 if you have the 'curl_global_init' function */
+#define HAVE_CURL_GLOBAL_INIT 1
+
 /* Define to 1 if you have the `inet_aton' function. */
 #define HAVE_INET_ATON 1
 
@@ -92,13 +95,13 @@
 #define PACKAGE_NAME "Icecast"
 
 /* Version number of package */
-#define VERSION "2.3-kh32"
+#define VERSION "2.3-kh34"
 
 /* Define to the version of this package. */
 #define PACKAGE_VERSION VERSION
 
 /* Define to the full name and version of this package. */
-#define PACKAGE_STRING PACKAGE_NAME PACKAGE_VERSION
+#define PACKAGE_STRING PACKAGE_NAME " " PACKAGE_VERSION
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "icecast"
@@ -138,7 +141,7 @@
 #define SCNdMAX "ld"
 
 #define PRId64	"I64d"
-#define PRIu64	"I64u"
+#define PRIu64	"I64u"
 #define SCNd64	"I64d"
 
 #define bool int

Modified: icecast/branches/kh/icecast/web/status.xsl
===================================================================
--- icecast/branches/kh/icecast/web/status.xsl	2008-05-01 01:27:29 UTC (rev 14819)
+++ icecast/branches/kh/icecast/web/status.xsl	2008-05-01 02:22:06 UTC (rev 14820)
@@ -21,26 +21,24 @@
 <img src="/images/corner_topleft.jpg" class="corner" style="display: none" alt=""/>
 </div>
 <div class="newscontent">
-<h3>
-<xsl:choose>
-<xsl:when test="authenticator">
-<a href="/auth.xsl"><img border="0" src="/images/key.png" alt="" /></a>
-</xsl:when>
-<xsl:otherwise>
-<a href="{@mount}.m3u"><img border="0" src="/images/tunein.png" alt="" /></a>
-</xsl:otherwise>
-</xsl:choose>
-Mount Point : (<xsl:value-of select="@mount" />) :
-<xsl:choose>
-<xsl:when test="authenticator">
-<a href="/auth.xsl">Click to Listen</a>
-</xsl:when>
-<xsl:otherwise>
-<a href="{@mount}.m3u">Click to Listen</a>
-</xsl:otherwise>
-</xsl:choose>
-</h3>
+    <div class="streamheader">
+        <table cellspacing="0" cellpadding="0">
+            <colgroup align="left" />
+            <colgroup align="right" width="300" />
+            <tr>
+                <td><h3>Mount Point <xsl:value-of select="@mount" /></h3></td>
+                <xsl:choose>
+                    <xsl:when test="authenticator">
+                        <td align="right"><a class="auth" href="/auth.xsl">Login</a></td>
+                    </xsl:when>
+                    <xsl:otherwise>
+                        <td align="right"> <a href="{@mount}.m3u">M3U</a> <a href="{@mount}.xspf">XSPF</a></td>
+                    </xsl:otherwise>
+                </xsl:choose>
+        </tr></table>
+    </div>
 
+
 <table border="0" cellpadding="4">
 <xsl:if test="server_name">
 <tr><td>Stream Title:</td><td class="streamdata"> <xsl:value-of select="server_name" /></td></tr>
@@ -48,8 +46,12 @@
 <xsl:if test="server_description">
 <tr><td>Stream Description:</td><td class="streamdata"> <xsl:value-of select="server_description" /></td></tr>
 </xsl:if>
+<xsl:if test="server_type">
 <tr><td>Content Type:</td><td class="streamdata"><xsl:value-of select="server_type" /></td></tr>
-<tr><td>Mount Uptime:</td><td class="streamdata"><xsl:value-of select="stream_start" /></td></tr>
+</xsl:if>
+<xsl:if test="stream_start">
+<tr><td>Mount Start:</td><td class="streamdata"><xsl:value-of select="stream_start" /></td></tr>
+</xsl:if>
 <xsl:if test="bitrate">
 <tr><td>Bitrate:</td><td class="streamdata"> <xsl:value-of select="bitrate" /></td></tr>
 </xsl:if>

Modified: icecast/branches/kh/icecast/web/style.css
===================================================================
--- icecast/branches/kh/icecast/web/style.css	2008-05-01 01:27:29 UTC (rev 14819)
+++ icecast/branches/kh/icecast/web/style.css	2008-05-01 02:22:06 UTC (rev 14820)
@@ -139,15 +139,19 @@
 .newscontent {
 	margin: 0 20px;
 }
-.newscontent h3 {
-	margin: 10px 0px;
+h3 {
+	margin: 0px;
+    padding: 0px;
 	font-family: Verdana, sans-serif;
 	text-decoration: none;
 	font-weight: bold;
 	font-size: 110%;
 	color: #f8ef64;
-        border-bottom:  1px groove #ACACAC;
 }
+.newscontent h3 {
+    margin-bottom: 10px;
+    border-bottom: 1px groove #ACACAC;
+}
 .newscontent h4 {
 	margin: 10px 0px;
 	font-family: Verdana, sans-serif;
@@ -178,6 +182,33 @@
 	font-size: 90%;
     color: #f8ef64;
 }
+.streamheader table {
+    width: 100%;
+    margin-bottom: 10px;
+    border-bottom: 1px groove #ACACAC;
+}
+.streamheader td {
+    margin: 0px;
+    padding: 6px 0px;
+    border: 0px solid cyan;
+}
+.streamheader h3 {
+    margin: 0px;
+    border: 0px solid blue;
+    vertical-align: lower;
+}
+.streamheader a {
+    padding: 8px 5px 3px 30px;
+    text-decoration: none;
+    margin: 0px 0px 0px 20px;
+    background: transparent url("/images/tunein.png") no-repeat left center;
+}
+.streamheader a.auth {
+    margin: 0px;
+    padding-top: 14px;
+    padding-bottom: 14px;
+    background: transparent url("/images/key.png") no-repeat left center;
+}
 .newscontent a {
     font-family: Verdana, sans-serif;
     text-decoration: none;
@@ -192,6 +223,7 @@
     font-family: Verdana, sans-serif;
     text-decoration: none;
     font-weight: bold;
+    padding: 2px 9px;
     background: #444;
     color: #f8ef64;
 }
@@ -204,8 +236,7 @@
 }
 .poster {
 	font-family: Verdana, sans-serif;
-	margin: 0px;
-	margin-top: 50px;
+    margin: 50px 0px 20px 0px;
 	padding-top: 10px;
 	padding-bottom: 10px;
 	display: block;
@@ -213,7 +244,7 @@
 	font-size: 100%;
     font-weight: bold;
 	color: #f8ef64;
-	border-top:  4px solid #656565;
+	border-top: 1px groove #ACACAC;
 }
 .poster a {
 	color: white;


Property changes on: icecast/branches/kh/icecast/win32/Icecast2win.clw
___________________________________________________________________
Name: svn:executable
   - *

Modified: icecast/branches/kh/icecast/win32/Icecast2win.dsp
===================================================================
--- icecast/branches/kh/icecast/win32/Icecast2win.dsp	2008-05-01 01:27:29 UTC (rev 14819)
+++ icecast/branches/kh/icecast/win32/Icecast2win.dsp	2008-05-01 02:22:06 UTC (rev 14820)
@@ -53,7 +53,7 @@
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 /nologo /subsystem:windows /machine:I386
-# ADD LINK32 libspeex.lib theora_static_d.lib ogg_static_d.lib vorbis_static_d.lib pthreadVSE.lib ssleay32MT.lib libcurl.lib libxml2.lib libxslt.lib iconv.lib ws2_32.lib winmm.lib /nologo /subsystem:windows /machine:I386 /nodefaultlib:"libcd.lib" /nodefaultlib:"libcmtd.lib"
+# ADD LINK32 libspeex.lib theora_static_d.lib ogg_static.lib vorbis_static.lib pthreadVSE.lib ssleay32MT.lib libcurl.lib libxml2.lib libxslt.lib iconv.lib ws2_32.lib winmm.lib /nologo /version:2.3 /subsystem:windows /pdb:none /machine:I386 /nodefaultlib:"libcd.lib" /nodefaultlib:"libcmtd.lib"
 
 !ELSEIF  "$(CFG)" == "Icecast2win - Win32 Debug"
 
@@ -79,7 +79,7 @@
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 libspeex.lib theora_static_d.lib ogg_static_d.lib vorbis_static_d.lib pthreadVSE.lib ssleay32MT.lib libcurl.lib libxml2.lib libxslt.lib iconv.lib ws2_32.lib winmm.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libcd.lib" /pdbtype:sept
+# ADD LINK32 libspeex.lib theora_static_d.lib ogg_static.lib vorbis_static.lib pthreadVSE.lib ssleay32MT.lib libcurl.lib libxml2.lib libxslt.lib iconv.lib ws2_32.lib winmm.lib /nologo /version:2.3 /subsystem:windows /incremental:no /debug /machine:I386 /nodefaultlib:"libcd.lib" /pdbtype:sept
 # SUBTRACT LINK32 /verbose
 
 !ENDIF 
@@ -130,24 +130,12 @@
 # End Source File
 # Begin Source File
 
-SOURCE=.\TabCtrlSSL.h
-# End Source File
-# Begin Source File
-
 SOURCE=.\TabPageSSL.cpp
 # End Source File
 # Begin Source File
 
-SOURCE=.\TabPageSSL.h
-# End Source File
-# Begin Source File
-
 SOURCE=.\Traynot.cpp
 # End Source File
-# Begin Source File
-
-SOURCE=.\TRAYNOT.H
-# End Source File
 # End Group
 # Begin Group "Header Files"
 
@@ -184,6 +172,18 @@
 
 SOURCE=.\StdAfx.h
 # End Source File
+# Begin Source File
+
+SOURCE=.\TabCtrlSSL.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\TabPageSSL.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\TRAYNOT.H
+# End Source File
 # End Group
 # Begin Group "Resource Files"
 

Modified: icecast/branches/kh/icecast/win32/icecast.dsp
===================================================================
--- icecast/branches/kh/icecast/win32/icecast.dsp	2008-05-01 01:27:29 UTC (rev 14819)
+++ icecast/branches/kh/icecast/win32/icecast.dsp	2008-05-01 02:22:06 UTC (rev 14820)
@@ -89,43 +89,48 @@
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\admin.h
-# End Source File
-# Begin Source File
-
 SOURCE=..\src\auth.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\auth.h
+SOURCE=..\src\auth_htpasswd.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\auth_htpasswd.c
+SOURCE=..\src\auth_url.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\auth_htpasswd.h
+SOURCE=..\src\avl\avl.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\auth_url.c
+SOURCE=..\src\cfgfile.c
+
+!IF  "$(CFG)" == "icecast - Win32 Release"
+
+# ADD CPP /I "."
+
+!ELSEIF  "$(CFG)" == "icecast - Win32 Debug"
+
+!ENDIF 
+
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\auth_url.h
+SOURCE=..\src\client.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\avl\avl.c
+SOURCE=..\src\connection.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\avl\avl.h
+SOURCE=..\src\event.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\cfgfile.c
+SOURCE=..\src\fnmatch.c
 
 !IF  "$(CFG)" == "icecast - Win32 Release"
 
@@ -138,260 +143,255 @@
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\cfgfile.h
+SOURCE=..\src\format.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\client.c
+SOURCE=..\src\format_flac.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\client.h
+SOURCE=..\src\format_kate.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\compat.h
+SOURCE=..\src\format_midi.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\connection.c
+SOURCE=..\src\format_mp3.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\connection.h
+SOURCE=..\src\format_ogg.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\event.c
+SOURCE=..\src\format_skeleton.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\event.h
+SOURCE=..\src\format_speex.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\fnmatch.c
+SOURCE=..\src\format_theora.c
+# End Source File
+# Begin Source File
 
-!IF  "$(CFG)" == "icecast - Win32 Release"
-
-# ADD CPP /I "."
-
-!ELSEIF  "$(CFG)" == "icecast - Win32 Debug"
-
-!ENDIF 
-
+SOURCE=..\src\format_vorbis.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format.c
+SOURCE=..\src\fserve.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format.h
+SOURCE=..\src\global.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_flac.c
+SOURCE=..\src\httpp\httpp.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_flac.h
+SOURCE=..\src\log\log.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_midi.c
+SOURCE=..\src\logging.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_midi.h
+SOURCE=..\src\md5.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_mp3.c
+SOURCE=..\src\refbuf.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_mp3.h
+SOURCE=..\src\net\resolver.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_ogg.c
+SOURCE=..\src\sighandler.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_ogg.h
+SOURCE=..\src\slave.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_speex.c
+SOURCE=..\src\net\sock.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_speex.h
+SOURCE=..\src\source.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_theora.c
+SOURCE=..\src\stats.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_theora.h
+SOURCE=..\src\thread\thread.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_vorbis.c
+SOURCE=..\src\timing\timing.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\format_vorbis.h
+SOURCE=..\src\util.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\fserve.c
+SOURCE=..\src\xslt.c
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\fserve.h
+SOURCE=..\src\yp.c
 # End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
 # Begin Source File
 
-SOURCE=..\src\global.c
+SOURCE=..\src\admin.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\global.h
+SOURCE=..\src\auth.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\httpp\httpp.c
+SOURCE=..\src\auth_htpasswd.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\httpp\httpp.h
+SOURCE=..\src\auth_url.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\log\log.c
+SOURCE=..\src\avl\avl.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\log\log.h
+SOURCE=..\src\cfgfile.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\logging.c
+SOURCE=..\src\client.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\logging.h
+SOURCE=..\src\compat.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\md5.c
+SOURCE=\config.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\md5.h
+SOURCE=..\src\connection.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\os.h
+SOURCE=..\src\event.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\refbuf.c
+SOURCE=.\fnmatch.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\refbuf.h
+SOURCE=..\src\format.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\net\resolver.c
+SOURCE=..\src\format_flac.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\net\resolver.h
+SOURCE=..\src\format_midi.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\sighandler.c
+SOURCE=..\src\format_mp3.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\sighandler.h
+SOURCE=..\src\format_ogg.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\slave.c
+SOURCE=..\src\format_speex.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\net\sock.c
+SOURCE=..\src\format_theora.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\net\sock.h
+SOURCE=..\src\format_vorbis.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\source.c
+SOURCE=..\src\fserve.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\source.h
+SOURCE=..\src\global.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\stats.c
+SOURCE=..\src\httpp\httpp.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\stats.h
+SOURCE=..\src\log\log.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\thread\thread.c
+SOURCE=..\src\logging.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\thread\thread.h
+SOURCE=..\src\md5.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\timing\timing.c
+SOURCE=..\src\os.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\util.c
+SOURCE=..\src\refbuf.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\util.h
+SOURCE=..\src\net\resolver.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\xslt.c
+SOURCE=..\src\sighandler.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\yp.c
+SOURCE=..\src\net\sock.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\src\yp.h
+SOURCE=..\src\source.h
 # End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
 # Begin Source File
 
-SOURCE=\config.h
+SOURCE=..\src\stats.h
 # End Source File
 # Begin Source File
 
-SOURCE=.\fnmatch.h
+SOURCE=..\src\thread\thread.h
 # End Source File
 # Begin Source File
 
@@ -399,8 +399,16 @@
 # End Source File
 # Begin Source File
 
+SOURCE=..\src\util.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\src\xslt.h
 # End Source File
+# Begin Source File
+
+SOURCE=..\src\yp.h
+# End Source File
 # End Group
 # End Target
 # End Project

Modified: icecast/branches/kh/icecast/win32/icecast2.iss
===================================================================
--- icecast/branches/kh/icecast/win32/icecast2.iss	2008-05-01 01:27:29 UTC (rev 14819)
+++ icecast/branches/kh/icecast/win32/icecast2.iss	2008-05-01 02:22:06 UTC (rev 14820)
@@ -3,7 +3,7 @@
 
 [Setup]
 AppName=Icecast2-KH
-AppVerName=Icecast v2.3.1-kh32
+AppVerName=Icecast v2.3.1-kh34
 AppPublisherURL=http://www.icecast.org
 AppSupportURL=http://www.icecast.org
 AppUpdatesURL=http://www.icecast.org
@@ -13,7 +13,7 @@
 LicenseFile=..\COPYING
 InfoAfterFile=..\README
 OutputDir=.
-OutputBaseFilename=icecast2_win32_v2.3.1-kh32_setup
+OutputBaseFilename=icecast2_win32_v2.3.1-kh34_setup
 WizardImageFile=icecast2logo2.bmp
 WizardImageStretch=no
 ; uncomment the following line if you want your installation to run on NT 3.51 too.

Modified: icecast/branches/kh/icecast/win32/icecast2_console.dsp
===================================================================
--- icecast/branches/kh/icecast/win32/icecast2_console.dsp	2008-05-01 01:27:29 UTC (rev 14819)
+++ icecast/branches/kh/icecast/win32/icecast2_console.dsp	2008-05-01 02:22:06 UTC (rev 14820)
@@ -42,7 +42,7 @@
 # PROP Ignore_Export_Lib 0
 # PROP Target_Dir ""
 # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /MT /W3 /GX /O2 /I "../../libxslt/include" /I "../../curl/include" /I "../../iconv/include" /I "../../libxml2/include" /I "../" /I "..\src" /I "..\src/httpp" /I "..\src/thread" /I "..\src/log" /I "..\src/avl" /I "..\src/net" /I "..\src/timings" /I ".." /D "NDEBUG" /D "_CONSOLE" /D HAVE_CONFIG_H=1 /D "WIN32" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /MD /W3 /GX /O2 /I "../../libxslt/include" /I "../../curl/include" /I "../../iconv/include" /I "../../libxml2/include" /I "../" /I "..\src" /I "..\src/httpp" /I "..\src/thread" /I "..\src/log" /I "..\src/avl" /I "..\src/net" /I "..\src/timings" /I ".." /D "NDEBUG" /D "_CONSOLE" /D HAVE_CONFIG_H=1 /D "WIN32" /D "_MBCS" /YX /FD /c
 # ADD BASE RSC /l 0x409 /d "NDEBUG"
 # ADD RSC /l 0x409 /d "NDEBUG"
 BSC32=bscmake.exe
@@ -50,7 +50,7 @@
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 theora_static_d.lib libspeex.lib ogg_static_d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib libcurl.lib vorbis_static.lib libxml2.lib libxslt.lib iconv.lib pthreadVSE.lib ws2_32.lib ssleay32MT.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libcd.lib" /nodefaultlib:"libcmt.lib"
+# ADD LINK32 theora_static_d.lib libspeex.lib ogg_static.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib libcurl.lib vorbis_static.lib libxml2.lib libxslt.lib iconv.lib pthreadVSE.lib ws2_32.lib ssleay32MT.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libcd.lib" /nodefaultlib:"libcmt.lib"
 
 !ELSEIF  "$(CFG)" == "icecast2 console - Win32 Debug"
 
@@ -74,7 +74,7 @@
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 theora_static_d.lib libspeex.lib ogg_static_d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib libcurl.lib vorbis_static.lib libxml2.lib libxslt.lib iconv.lib pthreadVSE.lib ws2_32.lib ssleay32MT.lib /nologo /subsystem:console /debug /machine:I386 /nodefaultlib:"libcmt.lib" /nodefaultlib:"libcmtd.lib" /pdbtype:sept
+# ADD LINK32 theora_static_d.lib libspeex.lib ogg_static.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib libcurl.lib vorbis_static.lib libxml2.lib libxslt.lib iconv.lib pthreadVSE.lib ws2_32.lib ssleay32MT.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /nodefaultlib:"libcmt.lib" /nodefaultlib:"libcmtd.lib" /pdbtype:sept
 
 !ENDIF 
 

Added: icecast/branches/kh/icecast/win32/icecastService.cpp
===================================================================
--- icecast/branches/kh/icecast/win32/icecastService.cpp	                        (rev 0)
+++ icecast/branches/kh/icecast/win32/icecastService.cpp	2008-05-01 02:22:06 UTC (rev 14820)
@@ -0,0 +1,255 @@
+#include <config.h>
+#include <stdio.h>
+#include <direct.h>
+extern "C" {
+#include "thread/thread.h"
+#include "avl/avl.h"
+#include "log/log.h"
+#include "global.h"
+#include "httpp/httpp.h"
+#include "net/sock.h"
+#include "connection.h"
+#include "refbuf.h"
+#include "client.h"
+#include "stats.h"
+}
+
+// Issues to be wary of. Careful of the runtime you use, I've had printf and similar routines
+// crash because of this on apparently valid strings. some weird thing related to checking for
+// multiple byte characters.  DeleteService only marks a service for deletion, and the docs
+// are unclear on the cases that lead to purging however a reboot should do it.
+
+SERVICE_STATUS          ServiceStatus; 
+SERVICE_STATUS_HANDLE   hStatus; 
+ 
+void  ServiceMain(int argc, char** argv); 
+void  ControlHandler(DWORD request); 
+int InitService();
+extern "C" int mainService(int argc, char **argv);
+
+int InitService() 
+{ 
+   int result = 0;
+   return(result); 
+}
+
+void installService (const char *path)
+{
+	if (path) {
+		char	buffer[8096*2] = "\"";
+        int len = GetModuleFileName (NULL, buffer+1, sizeof (buffer)-1);
+
+		_snprintf (buffer+len+1, sizeof (buffer)-len, "\" \"%s\"", path);
+
+		SC_HANDLE manager = OpenSCManager( NULL, NULL, SC_MANAGER_ALL_ACCESS );
+		if (manager == NULL)
+		{
+			LPVOID lpMsgBuf;
+			FormatMessage( 
+					FORMAT_MESSAGE_ALLOCATE_BUFFER | 
+					FORMAT_MESSAGE_FROM_SYSTEM | 
+					FORMAT_MESSAGE_IGNORE_INSERTS,
+					NULL,
+					GetLastError(),
+					MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
+					(LPTSTR) &lpMsgBuf,
+					0,
+					NULL 
+					);
+
+			printf ("OpenSCManager: %s\n", (LPCTSTR)lpMsgBuf);
+			LocalFree( lpMsgBuf );
+			return;
+		}
+
+		SC_HANDLE service = CreateService(
+			manager,
+			PACKAGE_STRING,
+			PACKAGE_STRING " Streaming Media Server",
+			GENERIC_READ | GENERIC_EXECUTE,
+			SERVICE_WIN32_OWN_PROCESS,
+			SERVICE_AUTO_START,
+			SERVICE_ERROR_IGNORE,
+			buffer,
+			NULL,
+			NULL,
+			NULL,
+			NULL,
+			NULL
+		);
+		if (service == NULL)
+		{
+			LPVOID lpMsgBuf;
+			FormatMessage( 
+					FORMAT_MESSAGE_ALLOCATE_BUFFER | 
+					FORMAT_MESSAGE_FROM_SYSTEM | 
+					FORMAT_MESSAGE_IGNORE_INSERTS,
+					NULL,
+					GetLastError(),
+					MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
+					(LPTSTR) &lpMsgBuf,
+					0,
+					NULL 
+					);
+
+			printf ("CreateService: %s\n", (LPCTSTR)lpMsgBuf);
+            LocalFree( lpMsgBuf );
+			CloseServiceHandle (manager);
+			return;
+		}
+
+		printf ("Service Installed\n");
+		CloseServiceHandle (service);
+		CloseServiceHandle (manager);
+	}
+}
+void removeService()
+{
+	SC_HANDLE manager = OpenSCManager( NULL, NULL, SC_MANAGER_ALL_ACCESS );
+	if (manager == NULL)
+	{
+		LPVOID lpMsgBuf;
+		FormatMessage( 
+				FORMAT_MESSAGE_ALLOCATE_BUFFER | 
+				FORMAT_MESSAGE_FROM_SYSTEM | 
+				FORMAT_MESSAGE_IGNORE_INSERTS,
+				NULL,
+				GetLastError(),
+				MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
+				(LPTSTR) &lpMsgBuf,
+				0,
+				NULL 
+				);
+
+		printf ("OpenSCManager: %s\n", (LPCTSTR)lpMsgBuf);
+		LocalFree( lpMsgBuf );
+		return;
+	}
+
+	SC_HANDLE service = OpenService (manager, PACKAGE_STRING, DELETE);
+	if (service) {
+		DeleteService(service);
+		printf ("Service Removed\n");
+        CloseServiceHandle (service);
+	}
+	else
+		printf ("Service not found\n");
+    CloseServiceHandle (manager);
+}
+void ControlHandler(DWORD request) 
+{ 
+   switch(request) { 
+      case SERVICE_CONTROL_STOP: 
+		global.running = ICE_HALTING;
+		ServiceStatus.dwWin32ExitCode = 0; 
+		ServiceStatus.dwCurrentState = SERVICE_STOPPED; 
+		SetServiceStatus (hStatus, &ServiceStatus);
+		return; 
+ 
+      case SERVICE_CONTROL_SHUTDOWN: 
+		global.running = ICE_HALTING;
+		ServiceStatus.dwWin32ExitCode = 0; 
+		ServiceStatus.dwCurrentState = SERVICE_STOPPED; 
+		SetServiceStatus (hStatus, &ServiceStatus);
+		return; 
+      default:
+		break;
+    } 
+ 
+    // Report current status
+    SetServiceStatus (hStatus, &ServiceStatus);
+ 
+    return; 
+}
+
+void ServiceMain(int argc, char** argv) 
+{ 
+   int error; 
+ 
+   ServiceStatus.dwServiceType = SERVICE_WIN32; 
+   ServiceStatus.dwCurrentState = SERVICE_START_PENDING; 
+   ServiceStatus.dwControlsAccepted = SERVICE_ACCEPT_STOP | SERVICE_ACCEPT_SHUTDOWN;
+   ServiceStatus.dwWin32ExitCode = 0; 
+   ServiceStatus.dwServiceSpecificExitCode = 0; 
+   ServiceStatus.dwCheckPoint = 0; 
+   ServiceStatus.dwWaitHint = 0; 
+ 
+   hStatus = RegisterServiceCtrlHandler(PACKAGE_STRING, (LPHANDLER_FUNCTION)ControlHandler); 
+   if (hStatus == (SERVICE_STATUS_HANDLE)0) { 
+      // Registering Control Handler failed
+      return; 
+   }  
+   // Initialize Service 
+   error = InitService(); 
+   if (error) {
+      // Initialization failed
+      ServiceStatus.dwCurrentState = SERVICE_STOPPED; 
+      ServiceStatus.dwWin32ExitCode = -1; 
+      SetServiceStatus(hStatus, &ServiceStatus); 
+      return; 
+   } 
+   // We report the running status to SCM. 
+   ServiceStatus.dwCurrentState = SERVICE_RUNNING; 
+   SetServiceStatus (hStatus, &ServiceStatus);
+ 
+   /* Here we do the work */
+
+   	int		argc2 = 3;
+	char*	argv2 [3];
+
+    argv2 [0] = argv[0];
+    argv2 [1] = "-c";
+    if (argc < 2)
+        argv2 [2] = "icecast.xml";
+    else
+        argv2 [2] = argv[1];
+
+	int ret = mainService(argc2, (char **)argv2);
+
+	ServiceStatus.dwCurrentState = SERVICE_STOPPED;
+	ServiceStatus.dwWin32ExitCode = -1;
+	SetServiceStatus(hStatus, &ServiceStatus);
+	return; 
+}
+
+
+void main(int argc, char *argv[]) 
+{
+    if (argc < 2)
+    {
+        printf ("Usage: icecastservice [remove] | [install <path>]\n");
+        return;
+    }
+    if (!strcmp(argv[1], "install"))
+    {
+        if (argc > 2)
+            installService(argv[2]);
+        else
+            printf ("install requires a path arg as well\n");
+        Sleep (1000);
+        return;
+    }
+    if (!strcmp(argv[1], "remove") || !strcmp(argv[1], "uninstall"))
+    {
+        removeService();
+		printf ("service removed, may require a reboot\n");
+        Sleep (1000);
+        return;
+    }
+
+   if (_chdir(argv[1]) < 0)
+   {
+       printf ("unable to change to directory %s\n", argv[1]);
+       Sleep (1000);
+       return;
+   }
+
+    SERVICE_TABLE_ENTRY ServiceTable[2];
+    ServiceTable[0].lpServiceName = PACKAGE_STRING;
+    ServiceTable[0].lpServiceProc = (LPSERVICE_MAIN_FUNCTION)ServiceMain;
+
+    ServiceTable[1].lpServiceName = NULL;
+    ServiceTable[1].lpServiceProc = NULL;
+    // Start the control dispatcher thread for our service
+    StartServiceCtrlDispatcher(ServiceTable);
+}

Added: icecast/branches/kh/icecast/win32/icecastService.dsp
===================================================================
--- icecast/branches/kh/icecast/win32/icecastService.dsp	                        (rev 0)
+++ icecast/branches/kh/icecast/win32/icecastService.dsp	2008-05-01 02:22:06 UTC (rev 14820)
@@ -0,0 +1,109 @@
+# Microsoft Developer Studio Project File - Name="icecastService" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Console Application" 0x0103
+
+CFG=icecastService - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE 
+!MESSAGE NMAKE /f "icecastService.mak".
+!MESSAGE 
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE 
+!MESSAGE NMAKE /f "icecastService.mak" CFG="icecastService - Win32 Debug"
+!MESSAGE 
+!MESSAGE Possible choices for configuration are:
+!MESSAGE 
+!MESSAGE "icecastService - Win32 Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "icecastService - Win32 Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE 
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+RSC=rc.exe
+
+!IF  "$(CFG)" == "icecastService - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "service_release"
+# PROP Intermediate_Dir "service_release"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /MD /W3 /GX /O2 /I ".." /I "..\src" /D "NDEBUG" /D "_CONSOLE" /D "WIN32_SERVICE" /D HAVE_CONFIG_H=1 /D "WIN32" /D "_MBCS" /YX /FD /c
+# SUBTRACT CPP /Z<none>
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 libspeex.lib theora_static_d.lib ogg_static.lib vorbis_static.lib pthreadVSE.lib ssleay32MT.lib libcurl.lib libxml2.lib libxslt.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /machine:I386 /nodefaultlib:"libcmt.lib" /nodefaultlib:"libcmtd.lib" /nodefaultlib:"libcd.lib"
+# SUBTRACT LINK32 /debug
+
+!ELSEIF  "$(CFG)" == "icecastService - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "icecastService___Win32_Debug"
+# PROP BASE Intermediate_Dir "icecastService___Win32_Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "service_debug"
+# PROP Intermediate_Dir "service_debug"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
+# ADD CPP /nologo /MTd /W3 /GX /Zd /Od /I ".." /I "..\src" /D "_DEBUG" /D HAVE_CONFIG_H=1 /D "_CONSOLE" /D "WIN32_SERVICE" /D "WIN32" /D "_MBCS" /FR /YX /FD /GZ /c
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 vorbis_static.lib iconv.lib libspeex.lib theora_static_d.lib ogg_static_d.lib vorbis_static_d.lib pthreadVSE.lib ssleay32MT.lib libcurl.lib libxml2.lib libxslt.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /nodefaultlib:"libcd.lib" /nodefaultlib:"libcmt.lib" /out:"service_debug/icecast2service.exe" /pdbtype:sept
+# SUBTRACT LINK32 /verbose
+
+!ENDIF 
+
+# Begin Target
+
+# Name "icecastService - Win32 Release"
+# Name "icecastService - Win32 Debug"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=.\icecastService.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\main.c
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# End Group
+# Begin Group "Resource Files"
+
+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+# End Group
+# End Target
+# End Project



More information about the commits mailing list