1
0
mirror of https://github.com/arsenetar/dupeguru.git synced 2024-11-16 12:19:03 +00:00

Update makefile for windows (+2 misc)

- Update the makefile to support windows
- Use different bin path in virtualenv
- Use pyd instead of so files
- Tested with Msys2
- Add *.exe to .gitignore
- Fix minor format error in package.py
Ref #393
This commit is contained in:
Andrew Senetar 2017-07-23 20:42:52 -05:00
parent 0870bf0bfa
commit 3a2f865fca
3 changed files with 23 additions and 10 deletions

1
.gitignore vendored
View File

@ -21,3 +21,4 @@ cocoa/autogen
/help/*/changelog.rst /help/*/changelog.rst
*.pyd *.pyd
*.exe

View File

@ -2,6 +2,18 @@ PYTHON ?= python3
REQ_MINOR_VERSION = 4 REQ_MINOR_VERSION = 4
PREFIX ?= /usr/local PREFIX ?= /usr/local
# Window compatability via Msys2
# - venv creates Scripts instead of bin
# - compile generates .pyd instead of .so
ifeq ($(shell uname -o), Msys)
BIN = Scripts
SO = pyd
else
BIN = bin
SO = so
endif
# Set this variable if all dependencies are already met on the system. We will then avoid the # Set this variable if all dependencies are already met on the system. We will then avoid the
# whole vitualenv creation and pip install dance. # whole vitualenv creation and pip install dance.
NO_VENV ?= NO_VENV ?=
@ -9,7 +21,7 @@ NO_VENV ?=
ifdef NO_VENV ifdef NO_VENV
VENV_PYTHON = $(PYTHON) VENV_PYTHON = $(PYTHON)
else else
VENV_PYTHON = ./env/bin/python VENV_PYTHON = ./env/$(BIN)/python
endif endif
# If you're installing into a path that is not going to be the final path prefix (such as a # If you're installing into a path that is not going to be the final path prefix (such as a
@ -72,19 +84,19 @@ i18n: $(mofiles)
%.mo : %.po %.mo : %.po
msgfmt -o $@ $< msgfmt -o $@ $<
core/pe/_block.*.so : core/pe/modules/block.c core/pe/modules/common.c | env core/pe/_block.*.$(SO) : core/pe/modules/block.c core/pe/modules/common.c | env
$(VENV_PYTHON) hscommon/build_ext.py $^ _block $(VENV_PYTHON) hscommon/build_ext.py $^ _block
mv _block.*.so core/pe mv _block.*.$(SO) core/pe
core/pe/_cache.*.so : core/pe/modules/cache.c core/pe/modules/common.c | env core/pe/_cache.*.$(SO) : core/pe/modules/cache.c core/pe/modules/common.c | env
$(VENV_PYTHON) hscommon/build_ext.py $^ _cache $(VENV_PYTHON) hscommon/build_ext.py $^ _cache
mv _cache.*.so core/pe mv _cache.*.$(SO) core/pe
qt/pe/_block_qt.*.so : qt/pe/modules/block.c | env qt/pe/_block_qt.*.$(SO) : qt/pe/modules/block.c | env
$(VENV_PYTHON) hscommon/build_ext.py $^ _block_qt $(VENV_PYTHON) hscommon/build_ext.py $^ _block_qt
mv _block_qt.*.so qt/pe mv _block_qt.*.$(SO) qt/pe
modules : core/pe/_block.*.so core/pe/_cache.*.so qt/pe/_block_qt.*.so modules : core/pe/_block.*.$(SO) core/pe/_cache.*.$(SO) qt/pe/_block_qt.*.$(SO)
mergepot : mergepot :
$(VENV_PYTHON) build.py --mergepot $(VENV_PYTHON) build.py --mergepot
@ -120,6 +132,6 @@ uninstall :
clean: clean:
-rm -rf build -rm -rf build
-rm locale/*/LC_MESSAGES/*.mo -rm locale/*/LC_MESSAGES/*.mo
-rm core/pe/*.so qt/pe/*.so -rm core/pe/*.$(SO) qt/pe/*.$(SO)
.PHONY : clean srcpkg normpo mergepot modules i18n reqs run pyc install uninstall all .PHONY : clean srcpkg normpo mergepot modules i18n reqs run pyc install uninstall all