mirror of
https://github.com/netsurf-browser/netsurf
synced 2024-12-04 03:41:57 +03:00
d1693c27c0
the windows installer package generation was not correctly parameterised which resulted in fetching resources from incorrect locations. Additionally the clean target was not removing generated installer output.
97 lines
3.3 KiB
Makefile
97 lines
3.3 KiB
Makefile
#
|
|
# Makefile for NetSurf Windows target
|
|
#
|
|
# This file is part of NetSurf
|
|
|
|
|
|
VERSION_MAJ := $(shell sed -n '/_major/{s/.* = \([0-9]*\).*/\1/;p;}' desktop/version.c)
|
|
VERSION_MIN := $(shell sed -n '/_minor/{s/.* = \([0-9]*\).*/\1/;p;}' desktop/version.c)
|
|
|
|
|
|
LDFLAGS += -L${GCCSDK_INSTALL_ENV}/lib
|
|
CFLAGS += -I${GCCSDK_INSTALL_ENV}/include/
|
|
|
|
$(eval $(call pkg_config_find_and_add,libcares,Cares))
|
|
$(eval $(call pkg_config_find_and_add,zlib,ZLib))
|
|
|
|
# libraries for windows API
|
|
LDFLAGS += -lgnurx -lgdi32 -lcomctl32 -lws2_32 -lmsimg32 -lshlwapi -mwindows
|
|
|
|
CFLAGS += -U__STRICT_ANSI__ -mwin32
|
|
# only windows versions after XP are supported
|
|
# https://msdn.microsoft.com/en-gb/library/windows/desktop/aa383745
|
|
CFLAGS += '-DWINVER=0x0501'
|
|
CFLAGS += '-D_WIN32_WINNT=0x0501'
|
|
CFLAGS += '-D_WIN32_WINDOWS=0x0501'
|
|
CFLAGS += '-D_WIN32_IE=0x0501'
|
|
|
|
#installed resource path
|
|
CFLAGS += '-DNETSURF_WINDOWS_RESPATH="$(NETSURF_WINDOWS_RESPATH)"'
|
|
|
|
WSCFLAGS := -std=c99 -Dnswin32 -DCURL_STATICLIB -DCARES_STATICLIB -g
|
|
|
|
CFLAGS += $(WSCFLAGS)
|
|
LDFLAGS += $(WSCFLAGS)
|
|
|
|
# ----------------------------------------------------------------------------
|
|
# built-in resource setup
|
|
# ----------------------------------------------------------------------------
|
|
|
|
$(OBJROOT)/windows_resource.o: $(FRONTEND_RESOURCES_DIR)/resource.rc
|
|
$(VQ)echo " WINDRES: compiling windows resources"
|
|
${Q}$(WINDRES) $< -O coff -o $@
|
|
|
|
S_RESOURCES := windows_resource.o
|
|
|
|
# ----------------------------------------------------------------------------
|
|
# Source file setup
|
|
# ----------------------------------------------------------------------------
|
|
|
|
# sources purely for the windows build
|
|
S_FRONTEND := main.c window.c gui.c drawable.c plot.c findfile.c \
|
|
font.c bitmap.c about.c prefs.c download.c filetype.c file.c \
|
|
localhistory.c schedule.c windbg.c pointers.c \
|
|
corewindow.c hotlist.c cookies.c global_history.c ssl_cert.c
|
|
|
|
# This is the final source build list
|
|
# Note this is deliberately *not* expanded here as common and image
|
|
# are not yet available
|
|
SOURCES = $(S_COMMON) $(S_IMAGE) $(S_BROWSER) $(S_FRONTEND) $(S_RESOURCES)
|
|
EXETARGET := NetSurf.exe
|
|
|
|
# ----------------------------------------------------------------------------
|
|
# Install target
|
|
# ----------------------------------------------------------------------------
|
|
|
|
install-windows:
|
|
|
|
# ----------------------------------------------------------------------------
|
|
# Package target
|
|
# ----------------------------------------------------------------------------
|
|
|
|
package-windows: netsurf-installer.exe
|
|
|
|
WIN_RES_OBJ := installer.nsi NetSurf.ico netsurf.png welcome.html default.css
|
|
WIN_RES_INS_OBJ := $(addprefix $(FRONTEND_RESOURCES_DIR)/,$(WIN_RES_OBJ)) $(OBJROOT)/messages-en
|
|
|
|
# deal with making installer generation verbose
|
|
ifeq ($(Q),)
|
|
NSIS_VERBOSE := 4
|
|
else
|
|
NSIS_VERBOSE := 0
|
|
endif
|
|
|
|
# installer messages generation
|
|
$(OBJROOT)/messages-en: resources/FatMessages
|
|
$(VQ)echo "MSGSPLIT: Language: en Filter: win"
|
|
$(Q)$(SPLIT_MESSAGES) -l en -p win -f messages -o $@ $<
|
|
|
|
netsurf-installer.exe: $(EXETARGET) $(WIN_RES_INS_OBJ)
|
|
$(VQ)echo "MAKENSIS: $@"
|
|
$(Q)makensis -V$(NSIS_VERBOSE) -NOCD -DOBJROOT=$(OBJROOT) -DRESDIR=$(FRONTEND_RESOURCES_DIR) -DVERSIONMAJOR=$(VERSION_MAJ) -DVERSIONMINOR=$(VERSION_MIN) -DOUTFNAME=$@ $(FRONTEND_RESOURCES_DIR)/installer.nsi
|
|
|
|
clean-installer:
|
|
$(VQ)echo " CLEAN: netsurf-installer.exe"
|
|
$(Q)$(RM) netsurf-installer.exe
|
|
CLEANS += clean-installer
|