mirror of
https://github.com/flynx/ImageGrid.git
synced 2025-10-28 18:00:09 +00:00
140 lines
4.4 KiB
Plaintext
140 lines
4.4 KiB
Plaintext
|
|
ImageGrid.Viewer Makefile
|
|
|
|
|
|
To check for buld/development dependencies that make can't install itself:
|
|
$ make check
|
|
|
|
To setup the development environment:
|
|
$ make dev
|
|
|
|
To do a default build use:
|
|
$ make dist
|
|
|
|
In some cases making things directly starting from a clean directory
|
|
may either fail or use global version of a utility instead of the
|
|
version specified for the app, if this happens first build the
|
|
environment and then try again:
|
|
$ make dev
|
|
...
|
|
$ make dist
|
|
|
|
To print full list of user make targets use:
|
|
$ make help
|
|
|
|
|
|
Variables to control the build:
|
|
APP_NAME - Application name
|
|
APP_BIN - App binary name (ignored for MacOS)
|
|
|
|
TARGET_OS - target OS (win32, linux, darwin)
|
|
ARCH - target achitecture (ia32, x86, x64, ...)
|
|
|
|
ELECTRON_DOWNOAD_URL
|
|
- URL to download electron binary
|
|
ELECTRON_DIST - electron distribution file name pattern
|
|
BUILD_MODE - can be "repack" or "in-place" (default)
|
|
|
|
|
|
Variables to help with troubleshooting:
|
|
IMAGEGRID_DEBUG - force show devtools on startup
|
|
NOTE: devtools will should start automaticalky
|
|
if loading takes too long or if it was
|
|
started on last run,
|
|
IMAGEGRID_FORCE_SHOW
|
|
- force show viewer GUI on startup
|
|
|
|
|
|
NOTE: when setting variables avoid using spaces and other characters
|
|
make can get fussy about...
|
|
NOTE: cross compilation is at this time not supported, if you try it
|
|
and it works then 1) you got very lucky and 2) tell me about it =)
|
|
...at least the node native packages (sharp) will likely either
|
|
fail or will get compiled to the wrong arch and not be used, and
|
|
some non-native packages may misbehave (though I'm not aware of
|
|
any at this point, so report them if you encounter one).
|
|
This is complicated by the fact that most of ImageGrid.Viewer is
|
|
platform-agnostic and will run on almost anything and will simply
|
|
try to ignore broken packages and features depending on them, so
|
|
check the console log for any odd load reports...
|
|
...but note that cross-building and packaging is only possible
|
|
either without the native modules or with them pre-built for the
|
|
target platform, at this point.
|
|
|
|
|
|
Examples:
|
|
# check if all dependencies are available...
|
|
$ make check
|
|
|
|
# make development environment...
|
|
$ make dev
|
|
|
|
# full build...
|
|
$ make clean dist
|
|
|
|
# build in repack mode...
|
|
$ BUILD_MODE=repack make dist
|
|
|
|
# build for darwin/macOS... (EXPERIMENTAL)
|
|
$ TARGET_OS=darwin make clean dist
|
|
|
|
# run with Devtools started...
|
|
$ IMAGEGRID_DEBUG=1 make run
|
|
|
|
# force show the main window...
|
|
$ IMAGEGRID_FORCE_SHOW=1 make run
|
|
|
|
|
|
Help and info:
|
|
help: Print make target help and exit
|
|
version: Print version and exit
|
|
|
|
Dependency checking:
|
|
check: Run all dependency checks
|
|
check-web: Run web build dependency checks
|
|
check-help: Run help/build (Makefile) dependency checks
|
|
|
|
Generic targets:
|
|
all: Run the full build chain
|
|
doc: Build documentation
|
|
dev: Build the development environment
|
|
dev-npm: Install the npm global dev package (might need sudo)
|
|
dist: Build distributable package
|
|
test-dist: Build testing distributable package
|
|
deploy: Run ./scripts/deploy.sh on contents of DIST_DIR
|
|
run: Run app in-place
|
|
|
|
Cleanup:
|
|
clean: Cleanup
|
|
clean-generated: Clean generated files
|
|
clean-dist: Clean DIST_DIR directory
|
|
clean-all: Clean all
|
|
|
|
Generic components:
|
|
js: Build JS modules
|
|
app-dir-full: Build full app directory
|
|
app-dir-minimal: Build minimal app directory
|
|
|
|
Web/Browser:
|
|
web: Build a browser-runnable package
|
|
|
|
Electron:
|
|
electron-dist: Make electron distributable
|
|
electron-test-dist: Make electron test distributable
|
|
electron-unpacked: Make unpacked electron app
|
|
electron-run: Run app in electron
|
|
|
|
Open Desktop:
|
|
|
|
Patches:
|
|
patched-requirejs: Patch requirejs (see: NOTES)
|
|
unpatched-requirejs: Unpatch requirejs
|
|
|
|
CLI:
|
|
devel-cli: Install CLI interface as a link to this tree.
|
|
cli: install CLI interface as independent package.
|
|
|
|
|
|
---
|
|
This file was generated by: make doc/MAKE
|