-
-
Notifications
You must be signed in to change notification settings - Fork 78
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
Local repositories break with libraries which use native C++ files #618
Comments
Probably because of https://github.com/HaxeFoundation/haxelib/blob/development/src/haxelib/api/ScriptRunner.hx#L94, which is also triggering some issues for me (because I don't have a global repository, it breaks easily) |
I ran the following commands in a local repo with lime installed (with no hxCodec install in the global repo). It compiled without any issues:
@EliteMasterEric Would you be able to provide an example setup where it is failing for you? Could you also share the output of the following commands?
I don't think this would be the case. The file is new since the code was refactored, but the CWD behaviour remained the same as it has always been: #272 |
It is not the same. |
As mentioned in #272, the cwd was always changed to the library path (see the old code). Then the script is run with a command like:
Then the child process runs the haxe compilation, and which causes a separate haxelib process to resolve the dependency libraries from the new CWD. This has not changed, so I don't see how the library resolution behaviour could have changed. The way it works could cause a problem if there is a dev library set to a location outside the scope of the local repo, but this wouldn't be a new issue. |
Its caused due to the ${haxelib:repo} in the buildXml macro it doesnt check local packages, if it exists in global packages its something with the cwd, a way to fix it is to do <setenv name="HAXEPATH" value="./"/> in project.xml but it causes it so you have to have to use the way a lot of packages fix it, especially linc packages is by doing this https://github.com/AndreiRudenko/linc_luajit/blob/master/linc/Linc.hx#L36-L61 |
I think this is the line that's causing the issue: It changes the cwd to EDIT: Maybe this was done in case |
hxCodec is a good demonstration of this issue.
haxelib newrepo
to create a local repository.hxCodec
into that local repo and try to build a project which uses it (hxCodec has several sample projects)cd
out of the folder and installhxCodec
there.I presume that whatever functionality is retrieving the build file is using the absolute haxelib location and not respecting the relevant local repositories.
The text was updated successfully, but these errors were encountered: