Skip to content
This repository has been archived by the owner on Dec 31, 2020. It is now read-only.

Export squish library (advanced CMake option) #244

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

Sukender
Copy link

I have the need for both NVTT and squish for my project. This sounds particularly weird, as NVTT contains a (modified) copy of squish.

I thus made changes to directly use this squish copy. As this is not really the normal dev path, I added this as "advanced options" in CMake. Changes are:

  • Adding the squish source files that were left over
  • Fixed compilation in them
  • Added installation stuff

This is quite straightforward. I hope this would help.

@Sukender
Copy link
Author

Additional notes:

  • Header files (squish.h, and stuff for BC6/BC7H) are not installed. This may be included in INSTALL_* options. Thoughts, anyone?
  • OpenSceneGraph also uses squish / BC6H / BC7 libraries directly, hence the installation stuff (Yes, I also use OSG in my project!).

@castano
Copy link
Owner

castano commented Sep 19, 2016

Hi, I was in the process of entirely removing squish from NVTT. NVTT now has its own clusterfit implementation that has slightly higher quality, and I think squish is not really needed anymore. Wouldn't this be a better solution for the conflicts?

@Sukender
Copy link
Author

Well, as long as I can decode/encode "good old" DXT1-3-5 images, and read/write them to disk, I'm in!

@Sukender
Copy link
Author

Hmm, will you include these tiny changes in order to wait for the squish replacement? When will this replacement be available?
Thanks.

Copy link
Owner

@castano castano left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

@@ -17,6 +17,7 @@
#include "nvcore/StrLib.h"
#include "nvcore/StdStream.h"
#include "nvcore/TextWriter.h"
#include <cstdint>
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this required? Where are sized int types referenced?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, this one was made a long time ago, and I don't remember...

@castano
Copy link
Owner

castano commented Sep 23, 2016

I'd be happy to include the changes. I need to do a bit more testing before I can drop squish completely, but I just wanted to let you know that was the plan, and that some of these changes would be removed at that point.

What's not clear to me is why do you want to install the internal copy of squish. If you need to use squish directly, why don't you the original squish instead of nvtt's?

@Sukender
Copy link
Author

Oh well, nothing really vital... I just wanted to avoid one more library with its own build system (I have many). It was easier for me to install the internal NVTT's squish than having to configure, build, install and integrate the external one.
FYI, this is exactly what I did before. When upgrading to GCC 5 / MSVC 2015, I found this really convenient :-)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants