[flac-dev] Lets work towards a new version

Erik de Castro Lopo mle+la at mega-nerd.com
Wed Jun 18 22:41:21 PDT 2014

lvqcl wrote:

> 1)
> Current MSVC solution (FLAC.sln and numerous .vcproj files) was made with
> VC2005 Express and doesn't allow to build 64-bit files/libraries.
> IMHO it's time to add 64-bit support for MSVC builds, but AFAIK only Visual Studio
> 2012/2013 Express are free and allow to build 64-bit files.
> VS 2005/2008 use .vcproj files, and VS 2010/2012/2013 use .vcxproj
> and .vcxproj.filters files, so it's possible to have two sets of
> MSVS solution files: one for 2005/2008 and another for 2010/2012/2013.
> But there will be two .sln files: current FLAC.sln and new FLAC-vs2013.sln
> (or FLAC-vs201x.sln? or is it better to rename FLAC.sln to FLAC-vs2005.sln?)
> What do you think?

I think having 64 bit builds on Windows would be a good thing. Unfortunately
since I don't have *any* Windows machines to even test on, zero recent
experience on Windows and little desire to reaquaint myself with Windows
this is not a job for me. However, I am more than happy to have someone
else undertake this task, and will help where I can.

As for what versions of MSVC we should support, I am not really
qualified to say. What do other similar projects do? Eg Audacity?

My main concern about having multiple build systems is the maintenance
burden. As long as that burden is minor I'm happy to accept what people
are willing to contribute. I personally will support the autotools based
build system and can also support the Makefile.lite build system.

> 2)
> VC projects contain relative paths such as "..\..\include". Is it better to
> leave them as is or to change to something like "$(SolutionDir)include"?

That sounds like a good idea.

> 3)
> Currently there are two ia32 asm files (bitreader_asm.nasm and stream_encoder_asm.nasm)
> that are unused and not necessary to compile libFLAC: they offer no speed benefit
> and the corresponding functions were commented out (*after* the release of 1.3.0):
>      http://git.xiph.org/?p=flac.git;a=commitdiff;h=4eab6313cd2198b5647d925bdb3847590505fa21
>      http://git.xiph.org/?p=flac.git;a=commitdiff;h=ecd0acba75e7961b60465c5ee3b6876b407803ca#patch14
> Is it better to remove these files from Makefile and .vcproj files, or to leave them?
> I don't think that they will become useful again, but who knows...

I think they should be deleted in a commit that says something like "Removing
old nasm versions of some functions". That will clearly mark that commit so
that if needed the files can be easily retrieved from the Git history.

Erik de Castro Lopo

More information about the flac-dev mailing list