Hello!
I've added -mno-cygwin and -I/cygdrive/c/Mingw/include -L/cygdrive/c/Mingw/lib because:
1° The __WIN32 flag doesn't work with cygwin 2° there is a cruel conflict with errno.h cygwin version.
So it's not possible to compile with cygwin without mingw, unless using voodoo...
Also the dllwrap doesn't seem to work good with cygwin, because the built pd.exe is linked to cygwin1.dll (with using cygwin only), else, I suspect that it causes many other errors, see an example of error it might cause below (after the diffs), I just suppose that we can't use both a def file (see dllwrap) and dll<import/export> (see m_pd.h), obviously I might be wrong (it won't be surprising).
===================================================================
$ diff -uw configure.in.old configure.in --- configure.in.old 2007-11-04 23:08:24.000000000 +0100 +++ configure.in 2007-12-03 00:04:37.578125000 +0100 @@ -341,7 +341,7 @@ if test `uname -s` == MINGW32_NT-5.0; then EXT=dll - MORECFLAGS="-DUSEAPI_PORTAUDIO -DPA19 -DMSW -DPA_NO_DS -DPD_INTERNAL \ + MORECFLAGS="-DUSEAPI_PORTAUDIO -DUSEAPI_PORTMIDI -DPA19 -DMSW -DPA_NO_DS -D PD_INTERNAL \ -I../portaudio/pa_common -I../portaudio/pablio \ -mwindows -mms-bitfields "$MORECFLAGS PDLIB=$PDLIB" -lwsock32 -lwinmm -lole32 -lstdc++" @@ -368,6 +368,49 @@ GUIFLAGS= fi
+if test `uname -s` == CYGWIN_NT-5.1; +then + EXT=dll + MORECFLAGS="-mno-cygwin -DUSEAPI_PORTAUDIO -DPA_LITTLE_ENDIAN -DPA19 \ + -I/cygdrive/c/Mingw/include -L/cygdrive/c/Mingw/lib \ + -I../portaudio/pa_common -I../portaudio/pablio \ + -I../portaudio/pa_asio \ + -I../portmidi/pm_common -I../portmidi/porttime \ + -I../portmidi/pm_win -I../portmidi/pm_win_ds \ + -mms-bitfields "$MORECFLAGS + + PDLIB=$PDLIB" -lwsock32 -lwinmm -lole32 -lstdc++" + + SYSSRC="s_midi_pm.c \ + s_audio_pa.c s_audio_pablio.c s_audio_paring.c \ + ../portaudio/pa_common/pa_allocation.c \ + ../portaudio/pa_common/pa_converters.c \ + ../portaudio/pa_common/pa_cpuload.c \ + ../portaudio/pa_common/pa_dither.c \ + ../portaudio/pa_common/pa_front.c \ + ../portaudio/pa_common/pa_process.c \ + ../portaudio/pa_common/pa_skeleton.c \ + ../portaudio/pa_common/pa_stream.c \ + ../portaudio/pa_common/pa_trace.c \ + ../portaudio/pa_win/pa_win_util.c \ + ../portaudio/pa_win/pa_win_hostapis.c \ + ../portaudio/pa_win_wmme/pa_win_wmme.c \ + ../portaudio/pa_win_ds/pa_win_ds.c \ + ../portaudio/pa_win_ds/dsound_wrapper.c \ + ../portmidi/pm_common/pmutil.c \ + ../portmidi/pm_common/portmidi.c \ + ../portmidi/pm_win/pmdll.c \ + ../portmidi/pm_win/pmwin.c \ + ../portmidi/pm_win/pmwinmm.c \ + ../portmidi/porttime/ptwinmm.c" + + ASIOSRC="../portaudio/pa_asio/iasiothiscallresolver.cpp \ + ../portaudio/pa_asio/pa_asio.cpp ../asio/asio.cpp \ + ../asio/asiodrivers.cpp ../asio/asiolist.cpp" + STRIPFLAG="--strip-unneeded" + GUINAME="pdtcl.dll" + GUIFLAGS= +fi # support for jack, on either linux or darwin:
if test x$jack == "xyes";
==================================================================== $ diff -uw makefile.in.old makefile.in --- makefile.in.old 2007-11-04 23:08:24.000000000 +0100 +++ makefile.in 2007-12-03 00:54:34.750000000 +0100 @@ -12,6 +12,10 @@ EXT= @EXT@ GUINAME= @GUINAME@
+PDEXEC_WIN = pd.exe +GUINAME_WIN = pdtcl.dll +DLLWRAP= dllwrap + prefix = @prefix@ exec_prefix = @exec_prefix@ bindir = @bindir@ @@ -49,6 +53,8 @@
ASIOOBJ = $(ASIOSRC:.cpp=.o)
+ + SRC = g_canvas.c g_graph.c g_text.c g_rtext.c g_array.c g_template.c g_io.c \ g_scalar.c g_traversal.c g_guiconnect.c g_readwrite.c g_editor.c \ g_all_guis.c g_bang.c g_hdial.c g_hslider.c g_mycanvas.c g_numbox.c \ @@ -147,9 +153,15 @@
@executable_path/../Frameworks/Tk.framework/Versions/8.4/Tk \ ../bin/libPdTcl.dylib
-# this is for Windows/MinGW (only?) +# this is for cygwin +#$(BIN_DIR)/pdtcl.dll: $(GOBJ) +# cd $(BIN_DIR); echo EXPORTS > pdtcl.def +# nm pdtcl.dll | grep ' T _' | sed 's/.* T _//' >> pdtcl.def +# dlltool --def pdtcl.def --dllname pdtcl.dll --output-lib pdtcl.a + +# this is for mingw $(BIN_DIR)/pdtcl.dll: $(GOBJ) - cd $(BIN_DIR); dllwrap --export-all-symbols --output-def pdtcl.def \ + dllwrap --export-all-symbol --output-def pdtcl.def \ --output-lib=pdtcl.a --dllname=$(GUINAME) $(OBJ_DIR)/t_tkcmd.o $(LIB) $( GLIB) strip --strip-unneeded $(BIN_DIR)/pdtcl.dll
@@ -203,17 +215,18 @@ @echo "Pd install succeeded."
local-clean: - -rm -f ../obj/* $(BIN_DIR)/pd $(BIN_DIR)/$(GUINAME) $(BIN_DIR)/pdsend \ - $(BIN_DIR)/pdreceive $(BIN_DIR)/pd-watchdog m_stamp.c + -rm -f ../obj/* $(BIN_DIR)/pd* $(BIN_DIR)/$(GUINAME) $(BIN_DIR)/pdsend* \ + $(BIN_DIR)/pdreceive* $(BIN_DIR)/pd-watchdog m_stamp.c -rm -f `find ../portaudio -name "*.o"` -rm -f *~ - -(cd ../doc/6.externs; rm -f *.pd_linux) + -(cd ../doc/6.externs; rm -f *.pd_linux; rm -f *.dll) -rm -f makefile.dependencies touch makefile.dependencies chmod 666 makefile.dependencies
extra-clean: -rm -f `find ../extra/ -name "*.pd_*"` + -rm -f `find ../extra/ -name "*.dll*"` -rm -f tags
clean: extra-clean local-clean @@ -229,7 +242,7 @@ depend: makefile.dependencies
makefile.dependencies: makefile - $(CC) $(CPPFLAGS) -M $(SRC) > makefile.dependencies + $(CC) $(CFLAGS) -M $(SRC) > makefile.dependencies
uninstall: rm -f -r $(libpddir)
=======================================================================
$ diff -uw d_array.c.old d_array.c --- d_array.c.old 2007-11-04 23:08:24.000000000 +0100 +++ d_array.c 2007-12-03 00:31:56.453125000 +0100 @@ -507,7 +507,7 @@ #define int32 long /* a data type that has 32 bits */ #endif /* IRIX */
-#ifdef MSW +#ifdef __WIN32 /* little-endian; most significant byte is at highest address */ #define HIOFFSET 1 #define LOWOFFSET 0 ===================================================================== $ diff -uw d_osc.c.old d_osc.c --- d_osc.c.old 2007-01-19 07:37:56.000000000 +0100 +++ d_osc.c 2007-12-02 22:05:43.343750000 +0100 @@ -7,7 +7,6 @@
#include "m_pd.h" #include "math.h" - #define UNITBIT32 1572864. /* 3*2^19; bit 32 has place value 1 */
/* machine-dependent definitions. These ifdefs really @@ -19,7 +18,7 @@ #define int32 long /* a data type that has 32 bits */ #endif /* IRIX */
-#ifdef MSW +#ifdef __WIN32 /* little-endian; most significant byte is at highest address */ #define HIOFFSET 1 #define LOWOFFSET 0 ====================================================================== $ diff -uw g_canvas.c.old g_canvas.c --- g_canvas.c.old 2007-12-02 22:49:55.265625000 +0100 +++ g_canvas.c 2007-12-02 22:50:44.156250000 +0100 @@ -757,7 +757,7 @@ /* test if we're already visible and toplevel */ if (x->gl_editor) { /* just put us in front */ -#ifdef MSW +#ifdef __WIN32 canvas_vis(x, 0); canvas_vis(x, 1); #else ==================================================================== $ diff -uw m_binbuf.c.old m_binbuf.c --- m_binbuf.c.old 2007-12-02 22:27:03.531250000 +0100 +++ m_binbuf.c 2007-12-02 22:27:44.453125000 +0100 @@ -10,7 +10,7 @@ #ifdef UNISTD #include <unistd.h> #endif -#ifdef MSW +#ifdef __WIN32 #include <io.h> #endif #include <fcntl.h> @@ -697,7 +697,7 @@ static int binbuf_doopen(char *s, int mode) { char namebuf[MAXPDSTRING]; -#ifdef MSW +#ifdef __WIN32 mode |= O_BINARY; #endif sys_bashfilename(s, namebuf); ================================================================== $ diff -uw m_glob.c.old m_glob.c --- m_glob.c.old 2007-12-01 20:36:16.671875000 +0100 +++ m_glob.c 2007-12-01 22:32:12.468750000 +0100 @@ -35,7 +35,7 @@ void alsa_resync( void);
-#ifdef MSW +#ifdef _WIN32 void glob_audio(void *dummy, t_floatarg adc, t_floatarg dac); #endif =================================================================== $ diff -uw m_pd.h.old m_pd.h --- m_pd.h.old 2007-12-02 22:43:07.109375000 +0100 +++ m_pd.h 2007-12-03 00:02:57.578125000 +0100 @@ -13,10 +13,10 @@ #define PD_BUGFIX_VERSION 3 #define PD_TEST_VERSION "extended-20071104"
-/* old name for "MSW" flag -- we have to take it for the sake of many old -"nmakefiles" for externs, which will define NT and not MSW */ -#if defined(NT) && !defined(MSW) -#define MSW +/* old name for "__WIN32" flag -- we have to take it for the sake of many old +"nmakefiles" for externs, which will define NT and not __WIN32 */ +#if defined(NT) && !defined(__WIN32) +#define __WIN32 #endif
/* These pragmas are only used for MSVC, not MinGW or Cygwin hans@at.or.at */
@@ -27,8 +27,8 @@ #pragma warning( disable : 4101 ) /* unused automatic variables */ #endif /* _MSC_VER */
- /* the external storage class is "extern" in UNIX; in MSW it's ugly. */ -#ifdef MSW + /* the external storage class is "extern" in UNIX; in __WIN32 it's ugly. */
+#ifdef __WIN32 #ifdef PD_INTERNAL #define EXTERN __declspec(dllexport) extern #else @@ -36,7 +36,7 @@ #endif /* PD_INTERNAL */ #else #define EXTERN extern -#endif /* MSW */ +#endif /* __WIN32 */
/* and depending on the compiler, hidden data structures are declared differently: */ ====================================================================== $ diff -uw s_stuff.h.old s_stuff.h --- s_stuff.h.old 2007-11-04 23:08:24.000000000 +0100 +++ s_stuff.h 2007-12-02 22:34:13.375000000 +0100 @@ -181,7 +181,7 @@ #define API_DEFAULT API_OSS #define API_DEFSTRING "OSS" #endif -#ifdef MSW +#ifdef __WIN32 #define API_DEFAULT API_MMIO #define API_DEFSTRING "MMIO" #endif @@ -201,7 +201,7 @@ #define DEFMIDIDEV 0
#define DEFAULTSRATE 44100 -#ifdef MSW +#ifdef __WIN32 #define DEFAULTADVANCE 70 #else #define DEFAULTADVANCE 50 @@ -282,8 +282,8 @@ typedef void (*t_printhook)(const char *s); extern t_printhook sys_printhook; /* set this to override printing */ extern int sys_printtostderr; -#ifdef MSW -#define vsnprintf _vsnprintf /* jsarlo -- alias this name for msw */ +#ifdef __WIN32 +#define vsnprintf _vsnprintf /* jsarlo -- alias this name for __WIN32 */ #endif
/* jsarlo { */ ======================================================================== $ diff -uw t_tkcmd.c.old t_tkcmd.c --- t_tkcmd.c.old 2007-12-02 03:11:59.500000000 +0100 +++ t_tkcmd.c 2007-12-03 00:52:53.640625000 +0100 @@ -2,7 +2,7 @@ * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */
-#ifndef MSW /* in unix this only works first; in MSW it only works last. */
+#ifndef __WIN32 /* in unix this only works first; in __WIN32 it only works last. */ #include "tk.h" #endif
@@ -13,7 +13,7 @@ #include <stdarg.h> #include <sys/types.h>
-#ifndef MSW +#ifndef __WIN32 #include <unistd.h> #include <sys/socket.h> #include <netinet/in.h> @@ -26,7 +26,7 @@ #include <errno.h> #include <fcntl.h> #endif -#ifdef MSW +#ifdef __WIN32 #include <winsock.h> #include <io.h> #endif @@ -38,7 +38,7 @@ #pragma warning( disable : 4101 ) /* unused local variables */ #endif
-#ifdef MSW +#ifdef __WIN32 #include "tk.h" #endif
@@ -87,10 +87,10 @@
static void pdgui_sockerror(char *s) { -#ifdef MSW +#ifdef __WIN32 int err = WSAGetLastError(); #endif -#ifndef MSW +#ifndef __WIN32 int err = errno; #endif
@@ -229,7 +229,7 @@ } }
-#ifdef MSW +#ifdef __WIN32 /* if we're in Gatesland, we add a tcl command to poll the socket for data. */ static int pd_pollsocketCmd(ClientData cd, Tcl_Interp *interp, @@ -242,7 +242,7 @@
static void pd_sockerror(char *s) { -#ifdef MSW +#ifdef __WIN32 int err = WSAGetLastError(); if (err == 10054) return; else if (err == 10044) @@ -261,12 +261,12 @@ { struct sockaddr_in server; struct hostent *hp; -#ifndef MSW +#ifndef __WIN32 int retry = 10; #else int retry = 1; #endif -#ifdef MSW +#ifdef __WIN32 short version = MAKEWORD(2, 0); WSADATA nobby;
@@ -307,7 +307,7 @@ retry. */ else { -#ifndef MSW +#ifndef __WIN32 fd_set readset, writeset, exceptset; struct timeval timout;
@@ -319,16 +319,16 @@ fprintf(stderr, "retrying connect...\n"); if (select(1, &readset, &writeset, &exceptset, &timout) < 0) perror("select"); -#endif /* !MSW */ +#endif /* !__WIN32 */ } } pdgui_sockerror("connecting stream socket"); gotit: ; -#ifndef MSW - /* normally we ask TK to call us back; but in MSW we have to poll. */ +#ifndef __WIN32 + /* normally we ask TK to call us back; but in __WIN32 we have to poll. */ Tk_CreateFileHandler(sockfd, TK_READABLE | TK_EXCEPTION, pd_readsocket, 0); -#endif /* !MSW */ +#endif /* !__WIN32 */ }
#ifdef STARTGUI @@ -351,7 +351,7 @@ int ntry = 0, portno = FIRSTPORTNUM; int xsock = -1; char morebuf[256]; -#ifdef MSW +#ifdef __WIN32 short version = MAKEWORD(2, 0); WSADATA nobby; char scriptbuf[1000], wishbuf[1000], portbuf[80]; @@ -376,7 +376,7 @@ fprintf(stderr, "pdbuf is %s\n", pdbuf); #endif
-#ifdef MSW +#ifdef __WIN32 if (WSAStartup(version, &nobby)) pd_sockerror("WSAstartup"); #endif @@ -398,7 +398,7 @@ /* name the socket */ while (bind(xsock, (struct sockaddr *)&server, sizeof(server)) < 0) { -#ifdef MSW +#ifdef __WIN32 int err = WSAGetLastError(); #else int err = errno; @@ -440,7 +440,7 @@ } #endif /* UNISTD */
-#ifdef MSW +#ifdef __WIN32
#error not yet used.... sys_bashfilename() not filled in here
@@ -458,7 +458,7 @@ return; }
-#endif /* MSW */ +#endif /* __WIN32 */
#ifdef DEBUGCONNECT fprintf(stderr, "Waiting for connection request... \n"); @@ -470,18 +470,18 @@ fprintf(stderr, "... connected\n"); #endif
-#ifndef MSW - /* normally we ask TK to call us back; but in MSW we have to poll. */ +#ifndef __WIN32 + /* normally we ask TK to call us back; but in __WIN32 we have to poll. */ Tk_CreateFileHandler(sockfd, TK_READABLE | TK_EXCEPTION, pd_readsocket, 0); -#endif /* !MSW */ +#endif /* !__WIN32 */ }
#endif /* STARTGUI */
static void pdgui_setupsocket(void) { -#ifdef MSW +#ifdef __WIN32 pdgui_connecttosocket(); #else if (pd_portno) @@ -545,10 +545,10 @@ } }
- /* in linux, we load the tk code from here (in MSW and MACOS, this + /* in linux, we load the tk code from here (in __WIN32 and MACOS, this is done by passing the name of the file as a startup argument to the wish shell.) */ -#if !defined(MSW) && !defined(__APPLE__) +#if !defined(__WIN32) && !defined(__APPLE__) void pdgui_doevalfile(Tcl_Interp *interp, char *s) { char buf[GUISTRING]; @@ -580,18 +580,18 @@ /* add our own TK commands */ Tcl_CreateCommand(interp, "pd", (Tcl_CmdProc*)pdCmd, (ClientData)NULL, (Tcl_CmdDeleteProc *)NULL); -#ifdef MSW +#ifdef __WIN32 Tcl_CreateCommand(interp, "pd_pollsocket",(Tcl_CmdProc*) pd_pollsocketCmd,
(ClientData)NULL, (Tcl_CmdDeleteProc *)NULL); #endif pdgui_setupsocket(); /* read in the startup file */ -#if !defined(MSW) && !defined(__APPLE__) +#if !defined(__WIN32) && !defined(__APPLE__) pdgui_evalfile("pd.tk"); #endif }
-#ifndef MSW +#ifndef __WIN32 void pdgui_setname(char *s) { char *t; @@ -619,11 +619,11 @@ { const char *argv = Tcl_GetVar(interp, "argv", 0); int portno, argno = 0; - /* argument passing seems to be different in MSW as opposed to + /* argument passing seems to be different in __WIN32 as opposed to unix-likes. Here we check if we got sent a "port number" as an argument. If so. we're to connect to a previously running pd (i.e., pd got started first). If not, we start Pd from here. */ -#ifdef MSW +#ifdef __WIN32 if (argv && (portno = atoi(argv)) > 1) #else char *firstspace; ==================================================================== $ diff -uw x_list.c.old x_list.c --- x_list.c.old 2007-12-02 21:47:52.312500000 +0100 +++ x_list.c 2007-12-02 21:47:16.187500000 +0100 @@ -4,7 +4,7 @@
#include "m_pd.h" /* #include <string.h> */ -#ifdef MSW +#ifdef __WIN32 #include <malloc.h> #else #include <alloca.h> ======================================================================= $ diff -uw x_net.c.old x_net.c --- x_net.c.old 2007-12-02 21:37:51.468750000 +0100 +++ x_net.c 2007-12-02 21:45:07.453125000 +0100 @@ -9,7 +9,7 @@
#include <sys/types.h> #include <string.h> -#ifdef MSW +#ifdef __WIN32 #include <winsock.h> #else #include <sys/socket.h> ============================================================= $ diff -uw x_qlist.c.old x_qlist.c --- x_qlist.c.old 2007-12-02 21:48:07.875000000 +0100 +++ x_qlist.c 2007-12-02 21:45:46.921875000 +0100 @@ -7,7 +7,7 @@ #ifdef UNISTD #include <unistd.h> #endif -#ifdef MSW +#ifdef __WIN32 #include <io.h> #endif ===========================================================
$ make distclean && autoconf && ./configure && make rm -f `find ../extra/ -name "*.pd_*"` rm -f tags rm -f ../obj/* ../bin/pd ../bin/pdtcl.dll ../bin/pdsend \ ../bin/pdreceive ../bin/pd-watchdog m_stamp.c rm: ne peut enlever `../obj/CVS': Is a directory make: [local-clean] Erreur 1 (ignor'ee) rm -f `find ../portaudio -name "*.o"` rm -f *~ (cd ../doc/6.externs; rm -f *.pd_linux; rm -f *.dll) rm -f makefile.dependencies touch makefile.dependencies chmod 666 makefile.dependencies rm -f config.cache config.log config.status makefile tags \ autom4te.cache/output.* autom4te.cache/traces.* autom4te.cache/r equests rmdir autom4te.cache rm -rf autom4te-*.cache checking for gcc... gcc checking for C compiler default output file name... a.exe checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... .exe checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for a BSD-compatible install... /usr/bin/install -c checking whether make sets $(MAKE)... yes checking how to run the C preprocessor... gcc -E checking for an ANSI C-conforming const... yes checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for pid_t... yes checking for size_t... yes checking whether time.h and sys/time.h may both be included... yes checking for ANSI C header files... (cached) yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking sys/ioctl.h usability... yes checking sys/ioctl.h presence... yes checking for sys/ioctl.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking for unistd.h... (cached) yes checking bstring.h usability... no checking bstring.h presence... no checking for bstring.h... no checking whether gcc needs -traditional... no checking return type of signal handlers... void checking for vprintf... yes checking for _doprnt... no checking for gettimeofday... yes checking for select... yes checking for socket... yes checking for strerror... yes checking for working alloca.h... yes checking for alloca... yes checking for dlopen in -ldl... yes checking for sin in -lffm... no checking for sin in -lm... yes checking for pthread_create in -lpthread... no checking for pthread_create in -lpthreadGC2... yes checking tcl.h usability... yes checking tcl.h presence... yes checking for tcl.h... yes checking for main in -ltcl85... no checking for main in -ltcl8.5... no checking for main in -ltcl84... yes checking for main in -ltk85... no checking for main in -ltk8.5... no checking for main in -ltk84... yes checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no configure: creating ./config.status config.status: creating makefile config.status: WARNING: makefile.in seems to ignore the --datarootdir setting cc -g -O2 -DPD -Wall -W -Wstrict-prototypes -Wno-unused -Wno-parentheses -Wno-s witch -mno-cygwin -DUSEAPI_PORTAUDIO -DPA_LITTLE_ENDIAN -DPA19 -I/cygdr ive/c/Mingw/include -L/cygdrive/c/Mingw/lib -I../portaudio/pa_common -I../po rtaudio/pablio -I../portaudio/pa_asio -I../portmidi/pm_common -I../portmidi/po rttime -I../portmidi/pm_win -I../portmidi/pm_win_ds -mms-bitfields -M g_ca nvas.c g_graph.c g_text.c g_rtext.c g_array.c g_template.c g_io.c g_scalar.c g_t raversal.c g_guiconnect.c g_readwrite.c g_editor.c g_all_guis.c g_bang.c g_hdial .c g_hslider.c g_mycanvas.c g_numbox.c g_toggle.c g_vdial.c g_vslider.c g_vumete r.c m_pd.c m_class.c m_obj.c m_atom.c m_memory.c m_binbuf.c m_conf.c m_glob.c m_ sched.c s_main.c s_inter.c s_file.c s_print.c s_loader.c s_path.c s_entry.c s_au dio.c s_midi.c d_ugen.c d_ctl.c d_arithmetic.c d_osc.c d_filter.c d_dac.c d_misc .c d_math.c d_fft.c d_array.c d_global.c d_delay.c d_resample.c x_arithmetic.c x _connective.c x_interface.c x_midi.c x_misc.c x_time.c x_acoustics.c x_net.c x_q list.c x_gui.c x_list.c d_soundfile.c s_midi_pm.c s_audio_pa.c s_audio_pab lio.c s_audio_paring.c ../portaudio/pa_common/pa_allocation.c . ./portaudio/pa_common/pa_converters.c ../portaudio/pa_common/pa_cpuload .c ../portaudio/pa_common/pa_dither.c ../portaudio/pa_c ommon/pa_front.c ../portaudio/pa_common/pa_process.c . ./portaudio/pa_common/pa_skeleton.c ../portaudio/pa_common/pa_stream. c ../portaudio/pa_common/pa_trace.c ../portaudio/pa_w in/pa_win_util.c ../portaudio/pa_win/pa_win_hostapis.c . ./portaudio/pa_win_wmme/pa_win_wmme.c ../portaudio/pa_win_ds/pa_win_ds. c ../portaudio/pa_win_ds/dsound_wrapper.c ../p ortmidi/pm_common/pmutil.c ../portmidi/pm_common/portmidi.c ../portmidi/pm_win/pmdll.c ../portmidi/pm_win/p mwin.c ../portmidi/pm_win/pmwinmm.c ../p ortmidi/porttime/ptwinmm.c d_fft_mayer.c d_fftroutine.c > makefile.dependencies cc -g -O2 -DPD -Wall -W -Wstrict-prototypes -Wno-unused -Wno-parentheses -Wno-s witch -mno-cygwin -DUSEAPI_PORTAUDIO -DPA_LITTLE_ENDIAN -DPA19 -I/cygdr ive/c/Mingw/include -L/cygdrive/c/Mingw/lib -I../portaudio/pa_common -I../po rtaudio/pablio -I../portaudio/pa_asio -I../portmidi/pm_common -I../portmidi/po rttime -I../portmidi/pm_win -I../portmidi/pm_win_ds -mms-bitfields -DINSTA LL_PREFIX="/usr/local" -c -o ../obj/g_canvas.o g_canvas.c g_canvas.c:58: erreur: un 'el'ement de l'initialisation n'est pas une constante g_canvas.c:59: erreur: un 'el'ement de l'initialisation n'est pas une constante g_canvas.c:574: attention : << canvas_makebindsym >> d'efini localement apr`es a voir 'et'e r'ef'erenc'e avec lien dllimport. g_canvas.c:677: attention : << canvas_redraw >> d'efini localement apr`es avoir 'et'e r'ef'erenc'e avec lien dllimport. g_canvas.c:749: attention : << canvas_vis >> d'efini localement apr`es avoir 'et 'e r'ef'erenc'e avec lien dllimport. g_canvas.c:847: attention : << glist_isvisible >> d'efini localement apr`es avoi r 'et'e r'ef'erenc'e avec lien dllimport. g_canvas.c:852: attention : << glist_istoplevel >> d'efini localement apr`es avo ir 'et'e r'ef'erenc'e avec lien dllimport. g_canvas.c:1043: attention : << canvas_loadbang >> d'efini localement apr`es avo ir 'et'e r'ef'erenc'e avec lien dllimport. g_canvas.c:1221: attention : << canvas_isabstraction >> d'efini localement apr`e s avoir 'et'e r'ef'erenc'e avec lien dllimport. g_canvas.c:1252: attention : << canvas_getrootfor >> d'efini localement apr`es a voir 'et'e r'ef'erenc'e avec lien dllimport. g_canvas.c:1344: attention : << canvas_suspend_dsp >> d'efini localement apr`es avoir 'et'e r'ef'erenc'e avec lien dllimport. g_canvas.c:1351: attention : << canvas_resume_dsp >> d'efini localement apr`es a voir 'et'e r'ef'erenc'e avec lien dllimport. make: *** [g_canvas.o] Erreur 1
==========================================================================
I have to give up for the moment, even if I've just replaced MSW with __WIN32 and added a few lines of codes to configure.in and makefile.in, it took me too much time for no satisfying results.
Let the sun be with you, Patko.