On Sat, Jan 19, 2013 at 4:59 AM, Reinhard Tartler <siret...@gmail.com> wrote:
> On Sat, Jan 19, 2013 at 7:13 AM, Sean Yiu <sean...@gmail.com> wrote:
>> Hi
>>
>> I hope not to have to go thru the clang conversion and many steps to have
>> libav work with Visual Studio 2010 (to be able to run source code debugger
>> into the libav code). Not being an expert at builds, I would probably make
>> mistakes and spend many hours in trial and error.
>
> This question is better addresed at libav-user. I'll respond anyways
> because I think that there is something that can still be discussed on
> the -devel list.
>
> I have found http://msdn.microsoft.com/en-us/library/bb165951(v=vs.80).aspx
> as description what an sln file actually is. Are there better
> ressources? Are there free software tools that help with creating
> them?

All you really need to know is that these solution (*.sln) files are
ordinary text files that Visual Studio uses to describe certain
aspects about the "solution." They describe things like what
"projects" belong to the solution and what release types are available
(debug, release, etc.). The "projects" themselves are each described
with their own *proj files. In libav's case, being a C project, these
project files would be *.vcxproj files. These are what actually
describe what binaries or libraries to build, what sources and headers
are needed, what dependencies are required, and so forth. These
*.vcxproj files are ordinary text files as well and resemble standard
XML files.

In libav's case, adding Visual Studio support could consist of
multiple project files for each library and binary built, all tied to
a single solution file. These files can be kept directly under version
control. They pose no licensing problems if you want to distribute
them along with libav. If you want to generate these solution or
project files, then you would just need a way to create text files,
which libav's build system can already do.

>> Is there a prepackaged libav build I can download which is already converted
>> with .sln ?
>
> no
>
>> It could be slightly outdated libav code. I could update it from latest
>> libav git after having the Visual Studio working. I think this method might
>> be useful to others as well.
>
> You can find windows libav binaries at
> http://win32.libav.org/releases/. They do not contain a .sln file,
> because the libav sources need to be configured before you can start
> compiling them. This configuration process checks the available
> libraries on your system (e.g., libav provides various wrappers such
> as libx264, libvpx and many more that get activated if they are found
> in the system), and also allows you to enable/disable functionality
> such as encoders/decoders (e.g., allowing you to create a very
> specialized build that can decode only certain files, etc).  Note that
> the selected configuration may  also impact your rights to distribute
> the build products!

It is certainly possible to allow configuring a Visual Studio project
to create different builds.

> (we should probably put something along those lines at
> http://libav.org/faq.html)
>
> I guess that it would be possible to make our configure script to
> create a suitable .sln file. Does anyone know what it would take to
> implement this?

See above. It would help to first use Visual Studio to create these
solution and project files, study them, and then modify libav's build
system to generate these files. However, if I were involved in libav,
I would opt for keeping these solution and project files directly
under version control instead.

>
> --
> regards,
>     Reinhard
> _______________________________________________
> libav-devel mailing list
> libav-devel@libav.org
> https://lists.libav.org/mailman/listinfo/libav-devel



--
~ Andres
_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to