Fork me on GitHub
Drop Visual Studio solution/project files and require cmake (boost lib path issue)
Post: #1
We have a small problem with using boost. On Windows, there is no standard location for compiled libraries to be installed in. This is a problem as we now are using the boost system library.

When a user is using cmake, the FindBoost cmake macro will attempt to locate them. For reference, see here:https://github.com/cmangos/mangos-wotlk/blob/master/cmake/macros/FindBoost.cmake#L881-L883

I propose that we remove the Visual Studio project and solution files from the repository and require the use of cmake to address this problem. This would also prevent future problems of project files not being updated properly.

What are peoples thoughts on this?
Reply
Post: #2
The other option (and my original plan when we introduced boost) is to require Visual Studio users to configure their default property sheets to point to their boost installation. If we required this, we would drop $(BOOST_ROOT) from the various Visual Studio project include settings.
Reply
Post: #3
Well, I'm not a very big fan of cmake. This is mostly because it breaks the folder structure that we have in Visual Studio, and all the files will be in disorder. (this is actually the only reason).

I suppose that working with property sheets, involves something like this: https://msdn.microsoft.com/en-us/library/669zx6zc.aspx right?
Reply
Post: #4
Yes, that is it exactly. That page has some information that doesn't apply to our use case, but all you need is on that page I think.
Reply
Post: #5
As an OS X user, I only use cmake. So I don't have an opinion regarding Visual Studio support.
Reply
Post: #6
(03-01-2016, 09:36 AM)cala Wrote: As an OS X user, I only use cmake. So I don't have an opinion regarding Visual Studio support.

I'm using Ubuntu, so I feel the same way.
ApexWoW.com- The unofficial CMaNGOS testing platform
Reply
Post: #7
I would really like to get Cyberium's input on this.
Reply
Post: #8
(03-01-2016, 06:23 PM)JEF Wrote: Use C:\Boost as standard for Windows user in installation instruction then is the point fore developers more simple. A good instruction is better.

The problem is not finding the absolute path to boost root. Users are required to set the BOOST_ROOT environment variable for that. The problem is finding the subfolder within BOOST_ROOT which contains the compiled libraries. There is no standard subfolder path for that in Windows. The default boost uses is stage\lib, but you have to change that if you want to compile both 32 and 64 bit library files.
Reply
Post: #9
Well we talked about it not long ago. I remember saying that we have to make the new users as much confortable it can be. That's why i insisted to keep $BOOST_ROOT in each project with our provided visual studio project.
I am using/compiling other solution that also need boost and for all of them they have same approach. Difference is its generated project and thus the $BOOST_ROOT is handled by cmake.
The important here is that we do not have to change our Visual Studio General setting for a specific project.

For cmake generated project iam definitivly for. However i understaind and iam 100% agree with XFurry point. That force us to use CMAKE, so install it and try to understaind it. Its generaly not a problem for linux/mac users, they are used to it. For windows users its another story.
BTW the cmake team worked hard to make it easier. Nowadays its very easy to create our project files and we have a GUI to do it.
Remain the folder structure. Its true that it will be different. But the good news is we can also structure it in our makefile.

So, i think we should work on it, a modern project doesnt include any sln nowadays. With some good PR we will be able to discuss more of what is acceptable or not for everyone.
In perfect world we should try to make less possible steps for everyone to start compilation from zero.
Is CMake is an extra step that when you think on it only help developpers?
[-] The following 2 users say Thank You to Cyberium for this post:
  â€¢ Lankytim, Rog360
Reply
Post: #10
Well, I tried playing around with the paths to the lib files, but I didn't manage to make it work (yet).
As an alternative choice, I suppose I can upgrade to Visual Studio 2015 and that I suppose it works better, right?
Reply


Possibly Related Threads...
Thread Author Replies Views Last Post
  [proposal] Project cmangos-bot cleanup Wingblade 2 765 11-22-2016, 11:31 AM
Last Post: HanFox
  Drop Windows 32 bit support? namreeb 18 5,888 05-07-2016, 03:37 AM
Last Post: namreeb
  vc8, 9, and 10 files in dep/ACE_wrappers alysher 2 1,487 09-22-2015, 11:19 PM
Last Post: alysher
Question Large Player races on mounts unable to pass low entrances: core or client issue? tarwyn 6 5,240 12-27-2014, 04:48 PM
Last Post: Velvet
Question [Proposal] Drop VC90 support Xfurry 32 17,138 12-01-2014, 12:25 PM
Last Post: Xfurry
  cmake compiling alexluana 13 13,554 03-04-2013, 03:34 PM
Last Post: alexluana

Forum Jump:


Users browsing this thread: 1 Guest(s)

Continued MaNGOS | Return to Top | | Lite (Archive) Mode | RSS Syndication