changeset 15367:bdcd608b0e97

MinGW compilation fix by Erik Lunchpail <erik_27can at yahoo dot com>
author diego
date Sun, 08 May 2005 14:38:35 +0000
parents d2180f62e0e8
children f2109e48a3c1
files TOOLS/netstream/Makefile TOOLS/netstream/netstream.c
diffstat 2 files changed, 33 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/TOOLS/netstream/Makefile	Sun May 08 14:30:53 2005 +0000
+++ b/TOOLS/netstream/Makefile	Sun May 08 14:38:35 2005 +0000
@@ -16,11 +16,9 @@
 	$(CC) -c $(CFLAGS) -o $@ $<
 
 
-netstream: $(MPROOT)/libmpdemux/libmpdemux.a netstream.o
 # FIXME: linking is a mess that should be fixed properly some day
 # it does not work with either GUI, live.com or libavformat enabled
-	$(CC) $(CFLAGS) netstream.o -o netstream \
-		$(MPROOT)/libmpdemux/libmpdemux.a \
+DEPS =		$(MPROOT)/libmpdemux/libmpdemux.a \
 		$(MPROOT)/libmpdvdkit2/libmpdvdkit.a \
 		$(MPROOT)/libmpcodecs/native/minilzo.o \
 		$(MPROOT)/libvo/aclib.o $(MPROOT)/libmpcodecs/img_format.o \
@@ -31,6 +29,14 @@
 		$(VORBIS_LIB) $(CDPARANOIA_LIB) $(Z_LIB) $(GIF_LIB) \
 		$(SMBSUPPORT_LIB) $(LIVE_LIBS) $(ARCH_LIB) $(COMMON_LIBS) -lm
 
+ifeq ($(TARGET_WIN32),yes)
+DEPS += $(MPROOT)/osdep/glob-win.o $(WIN32_LIB) -lwsock32
+endif
+
+netstream: $(MPROOT)/libmpdemux/libmpdemux.a netstream.o
+
+	$(CC) $(CFLAGS) netstream.o -o netstream $(DEPS)
+
 clean:
 	rm -f *.o *.a *~
 
--- a/TOOLS/netstream/netstream.c	Sun May 08 14:30:53 2005 +0000
+++ b/TOOLS/netstream/netstream.c	Sun May 08 14:38:35 2005 +0000
@@ -38,6 +38,7 @@
 #include <arpa/inet.h>
 #else
 #include <winsock2.h>
+#include <ws2tcpip.h>
 #endif
 
 #include <libmpdemux/stream.h>
@@ -53,6 +54,16 @@
 char* dvdsub_lang=NULL;
 char* audio_lang=NULL;
 int sub_justify=0;
+int identify=0;
+int dvdsub_id=0;
+int audio_id=0;
+int video_id=0;
+void af_fmt2str() {};
+
+#ifdef __MINGW32__
+#define usleep sleep
+void strsep() {};
+#endif
 
 static unsigned short int port = 10000;
 
@@ -254,7 +265,11 @@
   count++;
   if(count==3) exit(1);
   if(count > 3)
+#ifdef __MINGW32__
+    WSACleanup();
+#else
     kill(getpid(),SIGKILL);
+#endif
   run_server = 0;
 }
 
@@ -263,10 +278,11 @@
   fd_set fds;
 
   signal(SIGTERM,exit_sig); // kill
+#ifndef __MINGW32__
   signal(SIGHUP,exit_sig);  // kill -HUP  /  xterm closed
   signal(SIGINT,exit_sig);  // Interrupt from keyboard
   signal(SIGQUIT,exit_sig); // Quit from keyboard
-  
+#endif 
 
   while(run_server) {
     int sel_n = make_fd_set(&fds,&clients,listen_fd);
@@ -309,6 +325,9 @@
   }
   mp_msg(MSGT_NETST,MSGL_INFO,"Exit ....\n");
   close(listen_fd);
+#ifdef __MINGW32__
+  WSACleanup();
+#endif
   while(clients) {
     client_t* f = clients;
     if(f->stream) free_stream(f->stream);
@@ -326,6 +345,10 @@
   mp_msg_init();
   mp_msg_set_level(verbose+MSGL_STATUS);
   
+#ifdef __MINGW32__
+  WSADATA wsaData;
+  WSAStartup(MAKEWORD(1,1), &wsaData);
+#endif
   listen_fd = socket(AF_INET, SOCK_STREAM, 0);
   if(listen_fd < 0) {
     mp_msg(MSGT_NETST,MSGL_FATAL,"Failed to create listen_fd: %s\n",strerror(errno));