Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move <raylib.h> to <raylib/raylib.h> #481

Closed
a3f opened this issue Feb 22, 2018 · 11 comments
Closed

Move <raylib.h> to <raylib/raylib.h> #481

a3f opened this issue Feb 22, 2018 · 11 comments

Comments

@a3f
Copy link
Contributor

a3f commented Feb 22, 2018

To have a place to install all the other headers too, like raymath.h and raygui.h.

@a3f
Copy link
Contributor Author

a3f commented Feb 22, 2018

For now we can still provide a <raylib.h> that just #include <raylib/raylib.h> if backwards compatibility is a concern (I would just get rid of it).

@RDR8
Copy link
Contributor

RDR8 commented Feb 22, 2018

I agree. We can use whatever name you like. I chose raysan5 because raylib is not raygui is not raylib-lua etc.

@raysan5
Copy link
Owner

raysan5 commented Feb 22, 2018

I prefer to keep <raylib.h> only, the other libraries don't have to be raylib related.

@a3f
Copy link
Contributor Author

a3f commented Feb 22, 2018

I don't mind. But currently the Makefiles install to raysan5/, so either Makefile or CMake needs to change.

@RDR8
Copy link
Contributor

RDR8 commented Feb 22, 2018

It's really just a convenience. I don't believe it's necessary but it simplifies uninstallation of the bundle of headers I'm throwing in. Once I repair the uninstall target, I won't be affected either way. Just seemed like a good idea at the time.

@a3f
Copy link
Contributor Author

a3f commented Feb 22, 2018

Do we need an uninstall target? Why doesn't the user just use checkinstall?

@a3f
Copy link
Contributor Author

a3f commented Feb 22, 2018

Point is, I think, if we have two build systems, programs should compile with each unmodified and this includes the same default installation paths and header locations for both.

@RDR8
Copy link
Contributor

RDR8 commented Feb 22, 2018

I don't know. It's a common .PHONY that provides a useful function? Unfamiliar with checkinstall.

Point is, I think, if we have two build systems, programs should compile with each unmodified and this includes the same default installation paths and header locations for both.

How about RAYLIB_INSTALL_PATH = /usr/local/lib and RAYLIB_H_INSTALL_PATH = /usr/local/include/raylib? It's Ray's name so whatever he wants is great for me.

@raysan5
Copy link
Owner

raysan5 commented Feb 22, 2018

Asked on the PR, agree with RAYLIB_INSTALL_PATH = /usr/local/lib

About header, why not just using RAYLIB_H_INSTALL_PATH = /usr/local/include?

@a3f
Copy link
Contributor Author

a3f commented Feb 22, 2018

Example: User has system-provided raylib, e.g. zypper install raylib. User wants new shiny raylib, so they use Makefile with DESTDIR/RAYLIB_INSTALL_PATH to compile to a user-defined location. User wants to uninstall. uninstall target defaults to /usr/local/lib and deletes system raylib.

For an uninstall target, you need to keep a manifest with the files installed. checkinstall does that. make shouldn't IMHO.

@RDR8
Copy link
Contributor

RDR8 commented Feb 22, 2018

I can work with /usr/local/include. I got greedy with the source during the install target to enable the independent behavior described on the PR and needed to bundle everything for quick and dirty uninstall. Whatever convenience comes from have these related things compartmentalized is just a nice side effect.

The manifest will be explicit in the target. It might be nice to abstract it out but that enhancement is a little beyond me right now.

@a3f a3f closed this as completed Feb 22, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants