[vorbis-dev] DJGPP patches and makefiles

Beni Cherniavsky cben at crosswinds.net
Wed Aug 15 05:43:22 PDT 2001


Hi.

Here are my patches and makefiles for compiling ogg, vorbis and
vorbis-tools on DOS with DJGPP.  They can build them from cvs snapshots
and need minimal maintainance (even extract source lists from
`makefile.am's).  Everything seems to work, except one FP exception on
encode at middle bitrates (lowest two and highest bitrates don't cause it)
- I don't think it's my makefiles' fault and maybe it will be gone in
newer cvs versions.  I'll try and will investigate if it doesn't.  I'll
also apreciate someone else with DJGPP to report.  It needs win9x since it
needs LFN (libvorbis{,file,enc} would clush and I was lazy to work
around), and 2000 seems to dislike DJGPP in numerous mysterious ways.

I've split them by package.  For each package I made a patch for the
modified files and an archive with the added files.  Should be easier that
way, since the added files are the bigger part.  Both should be installed
at the top dir of each package.

The archives are zips, if that's problematic I can make tar.gz.  Use
`unzip -L' to lowercase filenames.  Files are with unix line endings,
djgpp progs work fine with it, and djgpp users have easy convert utility
(utod .../*).

All added files were grouped into `djgpp' subdirectories (one in ogg and
vorbis, one per program in vorbis-tools) to avoid cluttering the main
directories.  They also contain two helper makefiles and two dinamically
generated makefiles.  The complexity is because DOS is not turing-complete
but fortunately make is ;-).  The helper makefiles are all identical.
They are small so I allowed myself to have many copies.

One runs make from the `djgpp' directory to build things.  He can build:
all, debug, profile (I didn't test profile), install, unistall, clean,
distclean (also removes the generated makefiles).  Obviosly you must
install ogg before building vorbis and install vorbis before building
vorbis-tools.

The patches (use -p1 to apply):

* ogg: defines types to be the same as in OS/2 (it's almost the same
compiler).

* vorbis: adds dos binary i/o mode support into examples - only those 3
(of 5) that already had any such support.  I saw the comments discourage
it as evil (I agree ;) but I assumed that if you lived with win32's
`_setmode(_fileno(stdsin),_O_BIMARY)' you'll live with DOS'
`setmode(fileno(stdsin),O_BIMARY)'.  The ifdef's are for DOS and not DJGPP
since this seems to be the syntax on all dos compilers I've seen.

* vorbis-tools:

- oggenc: made djgpp use right parts of platform.[ch].  Both timer
implementation would work but the second has better resolution (1/18.2 sec
instead of 1 sec, IIRC).

- ogginfo: Bugfixes: unused ao include removed, added binary mode on open,
added fclose


-- 
Beni Cherniavsky <cben at crosswinds.net>
                 (also scben at t2,cben at tx in Technion)



<HR NOSHADE>
<UL>
<LI>TEXT/PLAIN attachment: ogg patch
</UL>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ogg.diff
Type: application/octet-stream
Size: 770 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/vorbis-dev/attachments/20010815/567ea901/ogg.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ogg.zip
Type: application/octet-stream
Size: 3406 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/vorbis-dev/attachments/20010815/567ea901/ogg-0001.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vorbis.diff
Type: application/octet-stream
Size: 2781 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/vorbis-dev/attachments/20010815/567ea901/vorbis.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vorbis.zip
Type: application/octet-stream
Size: 2819 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/vorbis-dev/attachments/20010815/567ea901/vorbis-0001.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vorbis-tools.diff
Type: application/octet-stream
Size: 3113 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/vorbis-dev/attachments/20010815/567ea901/vorbis-tools.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vorbis-tools.zip
Type: application/octet-stream
Size: 9651 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/vorbis-dev/attachments/20010815/567ea901/vorbis-tools-0001.obj


More information about the Vorbis-dev mailing list