The netsurf build system creates a stamp file inside TMP_PREFIX to know if the build was done, and if the stamp file exists, it doesn't do any build. Therefore, having this stamp file in STAGING_DIR prevents from rebuilding netsurf, even after removing its entire build directory: the stamp file exists in STAGING_DIR, and netsurf doesn't build anything, causing the installation to fail. We fix this by putting this temporary directory inside the netsurf build directory. We must mkdir this directory manually, otherwise the build fails with: COMPILE: src/stylesheet.c In file included from src/stylesheet.c:12:0: src/stylesheet.h:14:10: fatal error: libwapcaplet/libwapcaplet.h: No such file or directory ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> [Arnout: mkdir it first] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
97 lines
2.7 KiB
Makefile
97 lines
2.7 KiB
Makefile
################################################################################
|
|
#
|
|
# netsurf
|
|
#
|
|
################################################################################
|
|
|
|
NETSURF_VERSION = 3.8
|
|
NETSURF_SOURCE = netsurf-all-$(NETSURF_VERSION).tar.gz
|
|
NETSURF_SITE = http://download.netsurf-browser.org/netsurf/releases/source-full
|
|
NETSURF_LICENSE = GPL-2.0
|
|
NETSURF_LICENSE_FILES = netsurf/COPYING
|
|
NETSURF_DEPENDENCIES = expat jpeg libpng \
|
|
host-bison host-flex host-gperf host-pkgconf
|
|
|
|
ifeq ($(BR2_PACKAGE_NETSURF_GTK),y)
|
|
NETSURF_DEPENDENCIES += libgtk2
|
|
NETSURF_FRONTEND = gtk
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_NETSURF_GTK3),y)
|
|
NETSURF_DEPENDENCIES += libgtk3
|
|
NETSURF_FRONTEND = gtk3
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_NETSURF_GTK)$(BR2_PACKAGE_NETSURF_GTK3),y)
|
|
ifeq ($(BR2_PACKAGE_LIBRSVG),y)
|
|
NETSURF_DEPENDENCIES += librsvg
|
|
define NETSURF_SVG_CONFIGURE_CMDS
|
|
echo "override NETSURF_USE_RSVG := YES" >> $(@D)/netsurf/Makefile.config
|
|
echo "override NETSURF_USE_NSSVG := NO" >> $(@D)/netsurf/Makefile.config
|
|
endef
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_NETSURF_SDL),y)
|
|
NETSURF_DEPENDENCIES += sdl host-libpng
|
|
NETSURF_FRONTEND = framebuffer
|
|
NETSURF_CONFIG = \
|
|
HOST_CFLAGS='$(HOST_CFLAGS)' \
|
|
HOST_LDFLAGS='$(HOST_LDFLAGS) -lpng'
|
|
ifeq ($(BR2_PACKAGE_FREETYPE),y)
|
|
NETSURF_DEPENDENCIES += freetype
|
|
define NETSURF_FONTLIB_CONFIGURE_CMDS
|
|
echo "override NETSURF_FB_FONTLIB := freetype" >> $(@D)/netsurf/Makefile.config
|
|
endef
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBICONV),y)
|
|
NETSURF_DEPENDENCIES += libiconv
|
|
define NETSURF_ICONV_CONFIGURE_CMDS
|
|
echo "CFLAGS += -DWITH_ICONV_FILTER" >> $(@D)/libparserutils/Makefile.config.override
|
|
echo "override NETSURF_USE_LIBICONV_PLUG := NO" >> $(@D)/netsurf/Makefile.config
|
|
endef
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBCURL),y)
|
|
NETSURF_DEPENDENCIES += libcurl openssl
|
|
else
|
|
define NETSURF_CURL_CONFIGURE_CMDS
|
|
echo "override NETSURF_USE_CURL := NO" >> $(@D)/netsurf/Makefile.config
|
|
echo "override NETSURF_USE_OPENSSL := NO" >> $(@D)/netsurf/Makefile.config
|
|
endef
|
|
endif
|
|
|
|
define NETSURF_CONFIGURE_CMDS
|
|
$(NETSURF_ICONV_CONFIGURE_CMDS)
|
|
$(NETSURF_SVG_CONFIGURE_CMDS)
|
|
$(NETSURF_FONTLIB_CONFIGURE_CMDS)
|
|
$(NETSURF_CURL_CONFIGURE_CMDS)
|
|
endef
|
|
|
|
NETSURF_MAKE_OPTS = \
|
|
TARGET=$(NETSURF_FRONTEND) \
|
|
BISON="$(HOST_DIR)/bin/bison" \
|
|
FLEX="$(HOST_DIR)/bin/flex" \
|
|
PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
|
|
BUILD_CC="$(HOSTCC)" \
|
|
CC="$(TARGET_CC)" \
|
|
AR="$(TARGET_AR)" \
|
|
TMP_PREFIX=$(@D)/tmpusr \
|
|
NETSURF_CONFIG="$(NETSURF_CONFIG)" \
|
|
PREFIX=/usr
|
|
|
|
define NETSURF_BUILD_CMDS
|
|
mkdir -p $(@D)/tmpusr
|
|
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(NETSURF_MAKE_OPTS) \
|
|
build
|
|
endef
|
|
|
|
define NETSURF_INSTALL_TARGET_CMDS
|
|
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(NETSURF_MAKE_OPTS) \
|
|
DESTDIR=$(TARGET_DIR) install
|
|
endef
|
|
|
|
$(eval $(generic-package))
|