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

Separate config specific directory for python builds #531

Closed
ptheywood opened this issue May 13, 2021 · 0 comments · Fixed by #551
Closed

Separate config specific directory for python builds #531

ptheywood opened this issue May 13, 2021 · 0 comments · Fixed by #551

Comments

@ptheywood
Copy link
Member

ptheywood commented May 13, 2021

The swig/python output files are not config aware, i.e. a Release and Debug build in the same build directory will overwrite one another.

It should probably go into lib/<os>/<config>/python/.

<os> is not strictly required, as we do not track the build directory and do not support cross-compilation, it is mostly just a FLAME GPU 1 legacy thing. We could remove it but it also isn't causing any harm.

Currently, the build/lib directory on linux after a Release build and a reconfigure to a debug build is looks as follows (directories, 4 layers deep):

tree -d -L 4 lib/
lib/
└── linux-x64
    ├── Debug
    ├── python
    │   ├── build
    │   │   ├── bdist.linux-x86_64
    │   │   └── lib
    │   ├── dist
    │   ├── pyflamegpu
    │   ├── pyflamegpu.egg-info
    │   └── venv
    │       ├── bin
    │       ├── include
    │       ├── lib
    │       ├── lib64 -> lib
    │       └── share
    └── Release

This can probably just be addressed when the swig cmake is adapted to create several swig/python modules to support namespacing.

It might be worth considering moving the swig/python bindings out of lib, as they don't really belong there (i.e. it's not a .so/.lib file). Perhaps build/python/ or build/pyflamegpu? (although need to be careful with directories that swig will already create due to target names / subdirectories that have been added, i.e. build/swig/python already exists.

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

Successfully merging a pull request may close this issue.

1 participant