Csound Csound-dev Csound-tekno Search About

Re: [Cs-dev] Csound 5 status

Date2005-09-02 14:39
FromMichael Gogins
SubjectRe: [Cs-dev] Csound 5 status
If you don't mind, I would prefer it if you send me your complete SConstruct (to gogins@pipeline.com) and I will merge it. Same for any source code changes that needed to make -- I prefer complete files.

Regards,
Mike

-----Original Message-----
From: Graham Breed 
Sent: Sep 2, 2005 8:50 AM
To: csound-devel@lists.sourceforge.net
Subject: Re: [Cs-dev] Csound 5 status

Michael Gogins wrote:
> You need to make sure the directory where _CsoundVST.so or whatever is located, is identified in your PYTHONPATH environment variable. I have a feeling this may do the job.

Yes, it's _CsoundVST.so.  There I was trying to be clever and changing 
it to .dylib!  It runs happily with this command:

env OPCODEDIR=`pwd` PYTHONPATH=`pwd` ./CsoundVST

Here's the patch:


Index: SConstruct
===================================================================
RCS file: /cvsroot/csound/csound5/SConstruct,v
retrieving revision 1.282
diff -u -p -r1.282 SConstruct
--- SConstruct  1 Sep 2005 22:04:46 -0000       1.282
+++ SConstruct  2 Sep 2005 12:35:24 -0000
@@ -1042,6 +1042,17 @@ else:
          vstEnvironment.Append(SHLINKFLAGS = '--no-export-all-symbols')
          vstEnvironment.Append(SHLINKFLAGS = '--add-stdcall-alias')
          guiProgramEnvironment.Prepend(LINKFLAGS = ['-mwindows', 
'_CsoundVST.so'])
+    elif getPlatform() == 'darwin':
+        vstEnvironment.Append(LIBS = ['python2.3', 'dl', 'm'])
+        vstEnvironment.Append(CPPPATH = ['/usr/include/python2.3'])
+        vstEnvironment.Append(cxxflags = ['-fabi-version=0']) # if gcc3.2-3
+        if commonEnvironment['Word64']=='1':
+            vstEnvironment.Append(LIBPATH = 
['/usr/lib64/python2.3/config'])
+        else:
+            vstEnvironment.Append(LIBPATH = ['/usr/lib/python2.3/config'])
+        vstEnvironment.Append(SHLINKFLAGS = '--no-export-all-symbols')
+        vstEnvironment.Append(SHLINKFLAGS = '--add-stdcall-alias')
+        guiProgramEnvironment.Prepend(LINKFLAGS = ['_CsoundVST.so'])
      elif getPlatform() == 'cygwin' or getPlatform() == 'mingw':
          pythonImportLibrary = 
vstEnvironment.Command('/usr/local/lib/libpython23.a',
          '$SYSTEMROOT/System32/python23.dll',
@@ -1216,6 +1227,15 @@ Opcodes/stk/src/Thread.cpp
              pyEnvironment.Append(LIBPATH = 
['/usr/local/lib/python2.3/config'])
          pyEnvironment.Append(SHLINKFLAGS = '--no-export-all-symbols')
          pyEnvironment.Append(SHLINKFLAGS = '--add-stdcall-alias')
+    elif getPlatform() == 'darwin':
+        pyEnvironment.Append(LIBS = ['python2.3', 'dl', 'm'])
+        pyEnvironment.Append(CPPPATH = ['/usr/include/python2.3'])
+        if commonEnvironment['Word64']=='1':
+            pyEnvironment.Append(LIBPATH = ['/usr/lib64/python2.3/config'])
+        else:
+            pyEnvironment.Append(LIBPATH = ['/usr/lib/python2.3/config'])
+        pyEnvironment.Append(SHLINKFLAGS = '--no-export-all-symbols')
+        pyEnvironment.Append(SHLINKFLAGS = '--add-stdcall-alias')
      elif getPlatform() == 'cygwin' or getPlatform() == 'mingw':
          pyEnvironment['ENV']['PATH'] = os.environ['PATH']
          pyEnvironment.Append(SHLINKFLAGS = '--no-export-all-symbols')
Index: custom.py
===================================================================
RCS file: /cvsroot/csound/csound5/custom.py,v
retrieving revision 1.22
diff -u -p -r1.22 custom.py
--- custom.py   26 Jun 2005 01:23:15 -0000      1.22
+++ custom.py   2 Sep 2005 12:35:24 -0000
@@ -22,6 +22,12 @@ if sys.platform[:5] == 'linux':
  elif sys.platform == 'cygwin':
      platform = 'cygwin'
      customCPPPATH.append('c:/utah/usr/Python23/include')
+elif sys.platform == 'darwin':
+    platform = 'darwin'
+    customCPPPATH.append('/usr/include/malloc')
+    customCPPPATH.append('/opt/local/include/boost-1_32/')
+    customCPPPATH.append('/usr/include/python2.3')
+    customCXXFLAGS.append('-fabi-version=0')
  elif sys.platform[:3] == 'win':
      # For the basic build you need MinGW, MSys, and libsndfile.
      # Add them here:
Index: frontends/CsoundVST/CsoundVSTMain.cpp
===================================================================
RCS file: /cvsroot/csound/csound5/frontends/CsoundVST/CsoundVSTMain.cpp,v
retrieving revision 1.6
diff -u -p -r1.6 CsoundVSTMain.cpp
--- frontends/CsoundVST/CsoundVSTMain.cpp       28 May 2005 13:00:07 
-0000      1.6
+++ frontends/CsoundVST/CsoundVSTMain.cpp       2 Sep 2005 12:35:24 -0000
@@ -36,7 +36,7 @@ bool oome = false;
  #if defined(__GNUC__) && defined(WIN32)
  #define main main_plugin
  extern "C" __declspec(dllexport) AEffect *main_plugin 
(audioMasterCallback audioMaster)
-#elif defined(LINUX)
+#elif defined(LINUX) || defined(MACOSX)
  AEffect *main_plugin (audioMasterCallback audioMaster)
  #else
  AEffect *main(audioMasterCallback audioMaster)
Index: frontends/CsoundVST/AEffect.h
===================================================================
RCS file: /cvsroot/csound/csound5/frontends/CsoundVST/AEffect.h,v
retrieving revision 1.5
diff -u -p -r1.5 AEffect.h
--- frontends/CsoundVST/AEffect.h       28 May 2005 13:00:07 -0000      1.5
+++ frontends/CsoundVST/AEffect.h       2 Sep 2005 12:35:26 -0000
@@ -20,7 +20,7 @@
                  long value, void *ptr, float opt));
  */

-#if CARBON
+#if CARBON || MACOSX
  #if PRAGMA_STRUCT_ALIGN || __MWERKS__
          #pragma options align=mac68k
  #endif
@@ -178,7 +178,7 @@ enum
 
   // will always return true.
  };

-#if CARBON
+#if CARBON || MACOSX
  #if PRAGMA_STRUCT_ALIGN || __MWERKS__
          #pragma options align=reset
  #endif
Index: frontends/CsoundVST/System.cpp
===================================================================
RCS file: /cvsroot/csound/csound5/frontends/CsoundVST/System.cpp,v
retrieving revision 1.16
diff -u -p -r1.16 System.cpp
--- frontends/CsoundVST/System.cpp      26 Aug 2005 17:47:54 -0000      1.16
+++ frontends/CsoundVST/System.cpp      2 Sep 2005 12:35:29 -0000
@@ -698,7 +698,7 @@ namespace csound
      beep();
    }

-#elif defined(LINUX)
+#elif defined(LINUX) || defined(MACOSX)

  #include 
  #include 
Index: InOut/window.c
===================================================================
RCS file: /cvsroot/csound/csound5/InOut/window.c,v
retrieving revision 1.14
diff -u -p -r1.14 window.c
--- InOut/window.c      12 Aug 2005 19:01:23 -0000      1.14
+++ InOut/window.c      2 Sep 2005 12:35:31 -0000
@@ -40,11 +40,13 @@ static void (*killFn)(CSOUND *, WINDAT *
  extern void KillAscii(CSOUND *, WINDAT *);
  extern void KillGraph(CSOUND *, WINDAT *);
  /* pointer to xyinput window creator */
-       void (*mkxyFn)(CSOUND *, XYINDAT *, MYFLT, MYFLT);
+/* globals must have a value assigned in OSX */
+/* c.f. http://wiki.tcl.tk/2923 */
+       void (*mkxyFn)(CSOUND *, XYINDAT *, MYFLT, MYFLT) = NULL;
  static void MkXYDummy(CSOUND *, XYINDAT *, MYFLT, MYFLT);
  extern void MakeXYin(CSOUND *, XYINDAT *, MYFLT, MYFLT);
  /* pointer to xyinput window reader */
-       void (*rdxyFn)(CSOUND *, XYINDAT *);
+       void (*rdxyFn)(CSOUND *, XYINDAT *) = NULL;
  static void RdXYDummy(CSOUND *, XYINDAT *);
  extern void ReadXYin(CSOUND *, XYINDAT *);

Index: OOps/aops.c
===================================================================
RCS file: /cvsroot/csound/csound5/OOps/aops.c,v
retrieving revision 1.43
diff -u -p -r1.43 aops.c
--- OOps/aops.c 26 Aug 2005 17:47:53 -0000      1.43
+++ OOps/aops.c 2 Sep 2005 12:35:35 -0000
@@ -33,7 +33,8 @@
  #define ONEdLOG2    (1.4426950408889634074)

  /* static lookup tables, initialised once at start-up */
-        MYFLT   cpsocfrc[OCTRES];
+/* dummy initialization for OSX, c.f. http://wiki.tcl.tk/2923 */
+        MYFLT   cpsocfrc[OCTRES] = {};
  static  MYFLT   powerof2[4096];

  /* initialise the tables, called by csoundInitialize() */


-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel





-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-09-02 14:58
FromIstvan Varga
SubjectRe: [Cs-dev] Csound 5 status
I already started merging the patch.

Michael Gogins wrote:

> If you don't mind, I would prefer it if you send me your complete
 > SConstruct (to gogins@pipeline.com) and I will merge it. Same for
 > any source code changes that needed to make -- I prefer complete files.


-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-09-02 15:32
FromIstvan Varga
SubjectRe: [Cs-dev] Csound 5 status
The changes have been applied to the CVS sources.

Michael Gogins wrote:
> If you don't mind, I would prefer it if you send me your complete SConstruct (to gogins@pipeline.com) and I will merge it. Same for any source code changes that needed to make -- I prefer complete files.
> 
> Regards,
> Mike
> 
> -----Original Message-----
> From: Graham Breed 
> Sent: Sep 2, 2005 8:50 AM
> To: csound-devel@lists.sourceforge.net
> Subject: Re: [Cs-dev] Csound 5 status
> 
> Michael Gogins wrote:
> 
>>You need to make sure the directory where _CsoundVST.so or whatever is located, is identified in your PYTHONPATH environment variable. I have a feeling this may do the job.
> 
> 
> Yes, it's _CsoundVST.so.  There I was trying to be clever and changing 
> it to .dylib!  It runs happily with this command:
> 
> env OPCODEDIR=`pwd` PYTHONPATH=`pwd` ./CsoundVST
> 
> Here's the patch:
> 
> 
> Index: SConstruct
> ===================================================================
> RCS file: /cvsroot/csound/csound5/SConstruct,v
> retrieving revision 1.282
> diff -u -p -r1.282 SConstruct
> --- SConstruct  1 Sep 2005 22:04:46 -0000       1.282
> +++ SConstruct  2 Sep 2005 12:35:24 -0000
> @@ -1042,6 +1042,17 @@ else:
>           vstEnvironment.Append(SHLINKFLAGS = '--no-export-all-symbols')
>           vstEnvironment.Append(SHLINKFLAGS = '--add-stdcall-alias')
>           guiProgramEnvironment.Prepend(LINKFLAGS = ['-mwindows', 
> '_CsoundVST.so'])
> +    elif getPlatform() == 'darwin':
> +        vstEnvironment.Append(LIBS = ['python2.3', 'dl', 'm'])
> +        vstEnvironment.Append(CPPPATH = ['/usr/include/python2.3'])
> +        vstEnvironment.Append(cxxflags = ['-fabi-version=0']) # if gcc3.2-3
> +        if commonEnvironment['Word64']=='1':
> +            vstEnvironment.Append(LIBPATH = 
> ['/usr/lib64/python2.3/config'])
> +        else:
> +            vstEnvironment.Append(LIBPATH = ['/usr/lib/python2.3/config'])
> +        vstEnvironment.Append(SHLINKFLAGS = '--no-export-all-symbols')
> +        vstEnvironment.Append(SHLINKFLAGS = '--add-stdcall-alias')
> +        guiProgramEnvironment.Prepend(LINKFLAGS = ['_CsoundVST.so'])
>       elif getPlatform() == 'cygwin' or getPlatform() == 'mingw':
>           pythonImportLibrary = 
> vstEnvironment.Command('/usr/local/lib/libpython23.a',
>           '$SYSTEMROOT/System32/python23.dll',
> @@ -1216,6 +1227,15 @@ Opcodes/stk/src/Thread.cpp
>               pyEnvironment.Append(LIBPATH = 
> ['/usr/local/lib/python2.3/config'])
>           pyEnvironment.Append(SHLINKFLAGS = '--no-export-all-symbols')
>           pyEnvironment.Append(SHLINKFLAGS = '--add-stdcall-alias')
> +    elif getPlatform() == 'darwin':
> +        pyEnvironment.Append(LIBS = ['python2.3', 'dl', 'm'])
> +        pyEnvironment.Append(CPPPATH = ['/usr/include/python2.3'])
> +        if commonEnvironment['Word64']=='1':
> +            pyEnvironment.Append(LIBPATH = ['/usr/lib64/python2.3/config'])
> +        else:
> +            pyEnvironment.Append(LIBPATH = ['/usr/lib/python2.3/config'])
> +        pyEnvironment.Append(SHLINKFLAGS = '--no-export-all-symbols')
> +        pyEnvironment.Append(SHLINKFLAGS = '--add-stdcall-alias')
>       elif getPlatform() == 'cygwin' or getPlatform() == 'mingw':
>           pyEnvironment['ENV']['PATH'] = os.environ['PATH']
>           pyEnvironment.Append(SHLINKFLAGS = '--no-export-all-symbols')
> Index: custom.py
> ===================================================================
> RCS file: /cvsroot/csound/csound5/custom.py,v
> retrieving revision 1.22
> diff -u -p -r1.22 custom.py
> --- custom.py   26 Jun 2005 01:23:15 -0000      1.22
> +++ custom.py   2 Sep 2005 12:35:24 -0000
> @@ -22,6 +22,12 @@ if sys.platform[:5] == 'linux':
>   elif sys.platform == 'cygwin':
>       platform = 'cygwin'
>       customCPPPATH.append('c:/utah/usr/Python23/include')
> +elif sys.platform == 'darwin':
> +    platform = 'darwin'
> +    customCPPPATH.append('/usr/include/malloc')
> +    customCPPPATH.append('/opt/local/include/boost-1_32/')
> +    customCPPPATH.append('/usr/include/python2.3')
> +    customCXXFLAGS.append('-fabi-version=0')
>   elif sys.platform[:3] == 'win':
>       # For the basic build you need MinGW, MSys, and libsndfile.
>       # Add them here:
> Index: frontends/CsoundVST/CsoundVSTMain.cpp
> ===================================================================
> RCS file: /cvsroot/csound/csound5/frontends/CsoundVST/CsoundVSTMain.cpp,v
> retrieving revision 1.6
> diff -u -p -r1.6 CsoundVSTMain.cpp
> --- frontends/CsoundVST/CsoundVSTMain.cpp       28 May 2005 13:00:07 
> -0000      1.6
> +++ frontends/CsoundVST/CsoundVSTMain.cpp       2 Sep 2005 12:35:24 -0000
> @@ -36,7 +36,7 @@ bool oome = false;
>   #if defined(__GNUC__) && defined(WIN32)
>   #define main main_plugin
>   extern "C" __declspec(dllexport) AEffect *main_plugin 
> (audioMasterCallback audioMaster)
> -#elif defined(LINUX)
> +#elif defined(LINUX) || defined(MACOSX)
>   AEffect *main_plugin (audioMasterCallback audioMaster)
>   #else
>   AEffect *main(audioMasterCallback audioMaster)
> Index: frontends/CsoundVST/AEffect.h
> ===================================================================
> RCS file: /cvsroot/csound/csound5/frontends/CsoundVST/AEffect.h,v
> retrieving revision 1.5
> diff -u -p -r1.5 AEffect.h
> --- frontends/CsoundVST/AEffect.h       28 May 2005 13:00:07 -0000      1.5
> +++ frontends/CsoundVST/AEffect.h       2 Sep 2005 12:35:26 -0000
> @@ -20,7 +20,7 @@
>                   long value, void *ptr, float opt));
>   */
> 
> -#if CARBON
> +#if CARBON || MACOSX
>   #if PRAGMA_STRUCT_ALIGN || __MWERKS__
>           #pragma options align=mac68k
>   #endif
> @@ -178,7 +178,7 @@ enum
>  
>    // will always return true.
>   };
> 
> -#if CARBON
> +#if CARBON || MACOSX
>   #if PRAGMA_STRUCT_ALIGN || __MWERKS__
>           #pragma options align=reset
>   #endif
> Index: frontends/CsoundVST/System.cpp
> ===================================================================
> RCS file: /cvsroot/csound/csound5/frontends/CsoundVST/System.cpp,v
> retrieving revision 1.16
> diff -u -p -r1.16 System.cpp
> --- frontends/CsoundVST/System.cpp      26 Aug 2005 17:47:54 -0000      1.16
> +++ frontends/CsoundVST/System.cpp      2 Sep 2005 12:35:29 -0000
> @@ -698,7 +698,7 @@ namespace csound
>       beep();
>     }
> 
> -#elif defined(LINUX)
> +#elif defined(LINUX) || defined(MACOSX)
> 
>   #include 
>   #include 
> Index: InOut/window.c
> ===================================================================
> RCS file: /cvsroot/csound/csound5/InOut/window.c,v
> retrieving revision 1.14
> diff -u -p -r1.14 window.c
> --- InOut/window.c      12 Aug 2005 19:01:23 -0000      1.14
> +++ InOut/window.c      2 Sep 2005 12:35:31 -0000
> @@ -40,11 +40,13 @@ static void (*killFn)(CSOUND *, WINDAT *
>   extern void KillAscii(CSOUND *, WINDAT *);
>   extern void KillGraph(CSOUND *, WINDAT *);
>   /* pointer to xyinput window creator */
> -       void (*mkxyFn)(CSOUND *, XYINDAT *, MYFLT, MYFLT);
> +/* globals must have a value assigned in OSX */
> +/* c.f. http://wiki.tcl.tk/2923 */
> +       void (*mkxyFn)(CSOUND *, XYINDAT *, MYFLT, MYFLT) = NULL;
>   static void MkXYDummy(CSOUND *, XYINDAT *, MYFLT, MYFLT);
>   extern void MakeXYin(CSOUND *, XYINDAT *, MYFLT, MYFLT);
>   /* pointer to xyinput window reader */
> -       void (*rdxyFn)(CSOUND *, XYINDAT *);
> +       void (*rdxyFn)(CSOUND *, XYINDAT *) = NULL;
>   static void RdXYDummy(CSOUND *, XYINDAT *);
>   extern void ReadXYin(CSOUND *, XYINDAT *);
> 
> Index: OOps/aops.c
> ===================================================================
> RCS file: /cvsroot/csound/csound5/OOps/aops.c,v
> retrieving revision 1.43
> diff -u -p -r1.43 aops.c
> --- OOps/aops.c 26 Aug 2005 17:47:53 -0000      1.43
> +++ OOps/aops.c 2 Sep 2005 12:35:35 -0000
> @@ -33,7 +33,8 @@
>   #define ONEdLOG2    (1.4426950408889634074)
> 
>   /* static lookup tables, initialised once at start-up */
> -        MYFLT   cpsocfrc[OCTRES];
> +/* dummy initialization for OSX, c.f. http://wiki.tcl.tk/2923 */
> +        MYFLT   cpsocfrc[OCTRES] = {};
>   static  MYFLT   powerof2[4096];
> 
>   /* initialise the tables, called by csoundInitialize() */


-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net