Csound Csound-dev Csound-tekno Search About

[CSOUND-DEV:4224] Re: Needed changes to 4.23 for Mac

Date2004-03-02 21:58
From"gogins@pipeline.com"
Subject[CSOUND-DEV:4224] Re: Needed changes to 4.23 for Mac
CodeWarrior project files, and other binary files, can certainly be managed
in CVS. When you add the files to the CVS repository, you need to add them
as binary files instead of text files.

Original Message:
-----------------
From: Anthony Kozar anthony.kozar@utoledo.edu
Date: Tue, 02 Mar 2004 14:31:16 -0500
To: csound-dev@eartha.mills.edu
Subject: [CSOUND-DEV:4221] Re: Needed changes to 4.23 for Mac


On 2/28/04 9:38 AM, John D. Ramsdell etched in stone:

> Anthony,
> 
> It would be nice if the version of Csound in the csound module
> supports Mac OS9.  I need your help to make this work.

It looks like John ff. has already made the changes in the new release
(4.23f11) that was posted over the weekend on Sourceforge.  (Thanks John!!).

However, I am a litte confused on the relationship between these releases
and the CVS repository.  Are the tarballs in the download section based on
CVS?  If not, do the changes from John ff. in the tarballs eventually make
their way into CVS?  How does this happen?

And a related question:  How are the bug fixes being made in the csound
module being incorporated into the csound5 module?

> Unless and
> until you are granted develeper privileges, please perform an
> anonymous checkout of the sources in the CVS repository.

I do not yet have dev access.  But I can do this if it is still necessary.

> Make the needed changes, which must include adding an OS9 specific
Makefile
> into the csound directory.

The Mills version of Csound has always been compiled using the CodeWarrior
IDE.  CodeWarrior does not use makefiles.  It has binary project files
instead which store a list of files, targets, and settings (dependencies are
resolved automatically).  These files probably cannot be managed in CVS,
correct?

I only have CodeWarrior 4 and 8.  The other developers seem to have been
using either version 5 or 6.  The differences are that CW8 does not come
with support for building 68K Mac targets.  However, CW8 has the ability to
save its project files as XML (i.e. text which could be subjected to CVS),
but CW4 does not have this feature.  So, I could send you an XML project
file but that would mean possibly abandoning the 68K targets (and MacOS 7 as
well, which I still use on my laptop).  Obtaining an XML project file from
CodeWarrior 6 from someone else would probably be more ideal (CW6 was the
last to have 68K support, I believe).

The other option -- which I have been considering for awhile -- would be for
me to figure out how to build Csound with Apple's Macintosh Programmer's
Workshop (MPW).  This would be nice since it is available at no cost from
Apple (versus CW's $400 price tag).  MPW does have a make system, but it is
incompatible with Unix make.  Still, it would be no problem to store the
makefile in CVS.  Other benefits of MPW include being able to use gcc,
bison, sed, gawk, etc. as well as stdio redirection.  A drawback may be the
lack of certain Unix header files which may be necessary to build things
like libsndfile.  I haven't investigated quite enough yet to know for sure.

Another issue is the couple dozen Mac-specific source files that are not in
CVS at all.  These files create the Mac GUI for the application called
'Perf' and are currently required (although they are likely unneccessary for
Matt's CsoundLib version).  One of these files is a binary resource file.
Plus there is the entire code base for the Mac front-end application.  None
of these files are LGPL.  Matt has indicated that there is no license for
them which I suppose would make them "open source" for Sourceforge purposes.
It might be a good idea to create a new "MillsMacintosh" module in CVS to
store and manage all of these files.

> Then send me the results of performing a
> cvs diff with both the -u and -N options (unified format and include
> new files).  I'll commit the improvements.

I am a CVS newbie, but I am willing to try this if it is still needed.

Thanks for your help.  I'm interested to hear what others think might be the
best solution here.  (Sorry for the lengthy reply with much unnecessary
detail no doubt).

Anthony Kozar
anthony.kozar@utoledo.edu


--------------------------------------------------------------------
mail2web - Check your email from the web at
http://mail2web.com/ .

Date2004-03-03 04:35
FromAnthony Kozar
Subject[CSOUND-DEV:4226] Re: Needed changes to 4.23 for Mac
OK.  That is good news.  I am not sure where I got the impression that
binary files were problematic for CVS.

Thanks.

Anthony Kozar
anthony.kozar@utoledo.edu

On 3/2/04 4:58 PM, gogins@pipeline.com etched in stone:

> CodeWarrior project files, and other binary files, can certainly be managed
> in CVS. When you add the files to the CVS repository, you need to add them
> as binary files instead of text files.

Date2004-03-03 05:11
FromAnthony Kozar
Subject[CSOUND-DEV:4227] Re: Needed changes to 4.23 for Mac
OK, I remember now that there is a problem with _Macintosh_ binary files
that are dual-forked.  Some of the files used on a Mac for development (like
CW project files and resource files) contain another data block (the
"resource fork") which cannot be directly stored on non-Mac file systems.

A work-around is to encode the files into a format called "MacBinary" or to
compress the files with Stuffit.  Either method "flattens" the file.  This
will just add an extra step to checking in and out these files which Mac
developers will have to take care to observe.

Sorry for my confusion.

Anthony Kozar
anthony.kozar@utoledo.edu

On 3/2/04 11:35 PM, Anthony Kozar etched in
stone:

> OK.  That is good news.  I am not sure where I got the impression that binary
> files were problematic for CVS.