added and tested an alternative build path to Makefile...

Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
Alex A. Naanou 2018-01-11 02:03:39 +03:00
parent c29da0f60c
commit f7ab39dbb9

View File

@ -9,6 +9,11 @@
# - npm i -g electron electron-rebuild asar less # - npm i -g electron electron-rebuild asar less
# - wget # - wget
# - zip / unzip # - zip / unzip
# if zipnote fails this is likely due to a bug in v3.0, to
# fix this by either upgrading to a 3.1 or a patched version
# of the code...
# for more info and patch see:
# https://goo.gl/csQmQo
# - Windows # - Windows
# - MSVS -- to build node modules (sharp) # - MSVS -- to build node modules (sharp)
# - WiX # - WiX
@ -84,17 +89,12 @@ ifeq ($(OS),Windows_NT)
else else
ifeq ($(shell uname -s),Linux) ifeq ($(shell uname -s),Linux)
TARGET_OS ?= linux TARGET_OS ?= linux
# XXX
ARCH ?= x64
endif endif
ifeq ($(shell uname -s),Darwin) ifeq ($(shell uname -s),Darwin)
TARGET_OS ?= darwin TARGET_OS ?= darwin
endif endif
# set arch... # set arch...
# XXX do we need this on a mac???
ifeq ($(shell uname -m),x86_64) ifeq ($(shell uname -m),x86_64)
ARCH ?= x64 ARCH ?= x64
endif endif
@ -104,6 +104,7 @@ else
endif endif
# setup path and file naming stuff...
ifeq ($(TARGET_OS),win32) ifeq ($(TARGET_OS),win32)
APP_BIN ?= ig APP_BIN ?= ig
ELECTRON_BIN = electron ELECTRON_BIN = electron
@ -133,7 +134,7 @@ endif
# ...not sure if this is the right way to go... # ...not sure if this is the right way to go...
RM += -r RM += -r
MD = mkdir -p MD = @mkdir -p
#********************************************************************** #**********************************************************************
@ -223,7 +224,7 @@ $(NODE_DIR):
$(BUILD_DIR)/$(APP_NAME): $(CSS_FILES) $(NODE_DIR) $(PROJECT_FILES) \ $(BUILD_DIR)/$(APP_NAME): $(CSS_FILES) $(NODE_DIR) $(PROJECT_FILES) \
$(JS_FILES) $(CSS_FILES) $(HTML_FILES) \ $(JS_FILES) $(CSS_FILES) $(HTML_FILES) \
$(BUILD_DATE) $(BUILD_DATE)
$(MD) $@ $(MD) "$@"
cp -r $(PROJECT_FILES) $(JS_FILES) $(HTML_FILES) \ cp -r $(PROJECT_FILES) $(JS_FILES) $(HTML_FILES) \
$(CFG_DIR) $(LIB_DIR) $(EXT_LIB_DIR) $(FEATURES_DIR) \ $(CFG_DIR) $(LIB_DIR) $(EXT_LIB_DIR) $(FEATURES_DIR) \
$(DOMAIN_DIR) $(WORKERS_DIR) $(CSS_DIR) $(IMAGES_DIR) \ $(DOMAIN_DIR) $(WORKERS_DIR) $(CSS_DIR) $(IMAGES_DIR) \
@ -244,7 +245,7 @@ $(BUILD_DIR)/app.asar: $(BUILD_DIR)/$(APP_NAME)
# get the electron binary (keep this cached)... # get the electron binary (keep this cached)...
.PRECIOUS: $(TARGET_DIR)/electron-$(ELECTRON_VERSION)-%.zip .PRECIOUS: $(TARGET_DIR)/electron-$(ELECTRON_VERSION)-%.zip
$(TARGET_DIR)/electron-$(ELECTRON_VERSION)-%.zip: $(TARGET_DIR)/electron-$(ELECTRON_VERSION)-%.zip:
$(MD) $(@D) $(MD) "$(@D)"
wget \ wget \
-nc "$(ELECTRON_DOWNOAD_URL)/$(ELECTRON_VERSION)/$(@F)" \ -nc "$(ELECTRON_DOWNOAD_URL)/$(ELECTRON_VERSION)/$(@F)" \
-O "$@" -O "$@"
@ -257,20 +258,24 @@ $(BUILD_DIR)/$(APP_NAME)-%: $(TARGET_DIR)/electron-$(ELECTRON_VERSION)-%.zip \
unzip -u "$<" -d "$@" unzip -u "$<" -d "$@"
cp "$(BUILD_DIR)/app.asar" "$@/$(ASAR_PATH)/" cp "$(BUILD_DIR)/app.asar" "$@/$(ASAR_PATH)/"
cp -f "$(BUILD_DATE)" "$@/" cp -f "$(BUILD_DATE)" "$@/"
# remove default_app.asar...
$(RM) "$@/$(ASAR_PATH)/default_app.asar" $(RM) "$@/$(ASAR_PATH)/default_app.asar"
# rename app dir in zip...
mv "$@/$(ELECTRON_BIN)$(EXT)" "$@/$(APP_BIN)$(EXT)" mv "$@/$(ELECTRON_BIN)$(EXT)" "$@/$(APP_BIN)$(EXT)"
# fix permissions...
chmod +x "$@/$(APP_BIN)$(EXT)" $(DLLs) chmod +x "$@/$(APP_BIN)$(EXT)" $(DLLs)
touch "$@" touch "$@"
# modify the archive in place... # modify the archive in place...
# XXX not working correctly under cygwin...
# XXX this (zip) depends on that DIST_DIR has only one level... # XXX this (zip) depends on that DIST_DIR has only one level...
$(BUILD_DIR)/$(APP_NAME)-%.zip: $(TARGET_DIR)/electron-$(ELECTRON_VERSION)-%.zip \ $(BUILD_DIR)/$(APP_NAME)-%.zip: $(TARGET_DIR)/electron-$(ELECTRON_VERSION)-%.zip \
$(BUILD_DIR)/app.asar $(BUILD_DATE) $(BUILD_DIR)/app.asar $(BUILD_DATE)
cp "$<" "$@.tmp" cp "$<" "$@.tmp"
# remove default_app.asar...
cd "$(BUILD_DIR)" ; \ cd "$(BUILD_DIR)" ; \
zip -d "../$@.tmp" "$(ASAR_PATH)/default_app.asar" zip -d "../$@.tmp" "$(ASAR_PATH)/default_app.asar"
# add app.asar...
$(MD) "$(BUILD_DIR)/$(ASAR_PATH)" $(MD) "$(BUILD_DIR)/$(ASAR_PATH)"
cp "$(BUILD_DIR)/app.asar" "$(BUILD_DIR)/$(ASAR_PATH)/" cp "$(BUILD_DIR)/app.asar" "$(BUILD_DIR)/$(ASAR_PATH)/"
cd "$(BUILD_DIR)" ; \ cd "$(BUILD_DIR)" ; \
@ -278,10 +283,11 @@ $(BUILD_DIR)/$(APP_NAME)-%.zip: $(TARGET_DIR)/electron-$(ELECTRON_VERSION)-%.zip
"$(ASAR_PATH)/app.asar" \ "$(ASAR_PATH)/app.asar" \
"$(notdir $(BUILD_DATE))" "$(notdir $(BUILD_DATE))"
# rename app dir in zip... # rename app dir in zip...
# XXX having problems with cygwin zipnote...
zipnote "$@.tmp" \ zipnote "$@.tmp" \
| sed 's/\(^@ $(ELECTRON_BIN)\$(EXT)\)\(.*$$\)/\1\2\n@=$(APP_BIN)$(EXT)\2/' \ | sed 's/\(^@ $(ELECTRON_BIN)\$(EXT)\)\(.*$$\)/\1\2\n@=$(APP_BIN)$(EXT)\2/' \
| zipnote -w "$@.tmp" | zipnote -w "$@.tmp"
# cleanup...
$(RM) $(BUILD_DIR)/$(firstword $(subst /, ,$(ASAR_PATH)))
mv "$@.tmp" "$@" mv "$@.tmp" "$@"
@ -297,7 +303,8 @@ $(DIST_DIR)/$(APP_NAME)-%.zip: $(BUILD_DIR)/$(APP_NAME)-%
$(DIST_DIR)/$(APP_NAME)-%.zip: $(BUILD_DIR)/$(APP_NAME)-%.zip $(DIST_DIR)/$(APP_NAME)-%.zip: $(BUILD_DIR)/$(APP_NAME)-%.zip
mv "$@" "$<" $(MD) "$(@D)"
mv "$<" "$@"
@ -327,3 +334,4 @@ $(DIST_DIR)/$(APP_NAME)-%.msi: $(BUILD_DIR)/$(APP_NAME)-% $(BUILD_DIR)/$(APP_NAM
#********************************************************************** #**********************************************************************
# vim:set nowrap :