Blame msvc/config-msvc.mak

Packit Service dcb6c2
# NMake Makefile portion for enabling features for Windows builds
Packit Service dcb6c2
Packit Service dcb6c2
# You may change these lines to customize various items
Packit Service dcb6c2
Packit Service dcb6c2
!ifndef PSL_FILE
Packit Service dcb6c2
PSL_FILE=..\list\public_suffix_list.dat
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
!ifndef PSL_TESTFILE
Packit Service dcb6c2
PSL_TESTFILE=..\list\tests\tests.txt
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
PSL_FILE_INPUT = $(PSL_FILE:\=/)
Packit Service dcb6c2
PSL_TESTFILE_INPUT = $(PSL_TESTFILE:\=/)
Packit Service dcb6c2
Packit Service dcb6c2
# We only support using the ICU runtime and/or builtin, or no runtime
Packit Service dcb6c2
# and/or builtin for Visual Studio builds
Packit Service dcb6c2
!if "$(CFG)" == "Release" || "$(CFG)" == "release"
Packit Service dcb6c2
ICUUC_LIB = icuuc.lib
Packit Service dcb6c2
!else
Packit Service dcb6c2
ICUUC_LIB = icuucd.lib
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
ICONV_LIB = iconv.lib
Packit Service dcb6c2
GETTEXT_LIB = intl.lib
Packit Service dcb6c2
Packit Service dcb6c2
# Please do not change anything beneath this line unless maintaining the NMake Makefiles
Packit Service dcb6c2
# Version info
Packit Service dcb6c2
Packit Service dcb6c2
PACKAGE_NAME=libpsl
Packit Service dcb6c2
PACKAGE_VERSION=0.20.2
Packit Service dcb6c2
PACKAGE_URL=https://github.com/rockdaboot/libpsl
Packit Service dcb6c2
Packit Service dcb6c2
# Bare minimum features and sources built into libpsl on Windows
Packit Service dcb6c2
Packit Service dcb6c2
!if "$(PLAT)" == "x64"
Packit Service dcb6c2
SSIZE_T_DEF = signed __int64
Packit Service dcb6c2
!else
Packit Service dcb6c2
SSIZE_T_DEF = signed int
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
PSL_ADDITIONAL_LIBS = ws2_32.lib
Packit Service dcb6c2
PSL_ADDITIONAL_CFLAGS = /DBUILDING_PSL
Packit Service dcb6c2
Packit Service dcb6c2
BASE_CFLAGS =	\
Packit Service dcb6c2
	$(CFLAGS)	\
Packit Service dcb6c2
	/D_CRT_SECURE_NO_WARNINGS	\
Packit Service dcb6c2
	/D_CRT_NONSTDC_NO_WARNINGS	\
Packit Service dcb6c2
	/DHAVE_CONFIG_H				\
Packit Service dcb6c2
	/Dssize_t="$(SSIZE_T_DEF)"
Packit Service dcb6c2
Packit Service dcb6c2
PSL_INCLUDES = /I..\include /I.. /I$(CFG)\$(PLAT)\libpsl /I$(PREFIX)\include
Packit Service dcb6c2
Packit Service dcb6c2
# We build the psl.dll or psl.lib at least, with the psl.exe utility
Packit Service dcb6c2
PSL_LIB = $(CFG)\$(PLAT)\psl.lib
Packit Service dcb6c2
PSL_UTILS = $(CFG)\$(PLAT)\psl.exe
Packit Service dcb6c2
Packit Service dcb6c2
PSL_TESTS =	\
Packit Service dcb6c2
	$(CFG)\$(PLAT)\test-is-public.exe		\
Packit Service dcb6c2
	$(CFG)\$(PLAT)\test-is-public-all.exe	\
Packit Service dcb6c2
	$(CFG)\$(PLAT)\test-is-cookie-domain-acceptable.exe
Packit Service dcb6c2
Packit Service dcb6c2
PSL_TEST_DATA =	\
Packit Service dcb6c2
	$(CFG)\$(PLAT)\psl.dafsa	\
Packit Service dcb6c2
	$(CFG)\$(PLAT)\psl_ascii.dafsa
Packit Service dcb6c2
Packit Service dcb6c2
PSL_MAKE_OPTIONS = CFG^=$(CFG)
Packit Service dcb6c2
Packit Service dcb6c2
!ifndef STATIC
Packit Service dcb6c2
!ifdef USE_LIBTOOL_DLLNAME
Packit Service dcb6c2
PSL_DLL_PREFIX = lib
Packit Service dcb6c2
PSL_DLL_SUFFIX = -5
Packit Service dcb6c2
PSL_MAKE_OPTIONS = $(PSL_MAKE_OPTIONS) USE_LIBTOOL_DLLNAME^=$(USE_LIBTOOL_DLLNAME)
Packit Service dcb6c2
!else
Packit Service dcb6c2
PSL_DLL_PREFIX =
Packit Service dcb6c2
PSL_DLL_SUFFIX =
Packit Service dcb6c2
!endif
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
PSL_DLL = $(CFG)\$(PLAT)\$(PSL_DLL_PREFIX)psl$(PSL_DLL_SUFFIX).dll
Packit Service dcb6c2
Packit Service dcb6c2
# ENABLE_RUNTIME_ICU and ENABLE_BUILTIN_ICU are currently dummy arguments to NMake
Packit Service dcb6c2
ENABLED_RUNTIME =
Packit Service dcb6c2
ENABLED_BUILTIN =
Packit Service dcb6c2
Packit Service dcb6c2
!ifndef DISABLE_RUNTIME
Packit Service dcb6c2
BASE_CFLAGS = $(BASE_CFLAGS) /DWITH_LIBICU=1
Packit Service dcb6c2
ENABLED_RUNTIME = libicu
Packit Service dcb6c2
!else
Packit Service dcb6c2
PSL_MAKE_OPTIONS = $(PSL_MAKE_OPTIONS) DISABLE_RUNTIME^=1
Packit Service dcb6c2
ENABLED_RUNTIME = none
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
!ifndef DISABLE_BUILTIN
Packit Service dcb6c2
BASE_CFLAGS = $(BASE_CFLAGS) /DBUILTIN_GENERATOR_LIBICU=1
Packit Service dcb6c2
ENABLED_BUILTIN = libicu
Packit Service dcb6c2
!else
Packit Service dcb6c2
PSL_MAKE_OPTIONS = $(PSL_MAKE_OPTIONS) DISABLE_BUILTIN^=1
Packit Service dcb6c2
ENABLED_BUILTIN = none
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
!ifdef STATIC
Packit Service dcb6c2
BASE_CFLAGS = $(BASE_CFLAGS) /DPSL_STATIC
Packit Service dcb6c2
PSL_MAKE_OPTIONS = $(PSL_MAKE_OPTIONS) STATIC^=1
Packit Service dcb6c2
PSL_LIBTYPE = static
Packit Service dcb6c2
!else
Packit Service dcb6c2
PSL_LIBTYPE = DLL
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
!if "$(DISABLE_RUNTIME)" == "" || "$(DISABLE_BUILTIN)" == ""
Packit Service dcb6c2
PSL_ADDITIONAL_LIBS = $(PSL_ADDITIONAL_LIBS) $(ICUUC_LIB)
Packit Service dcb6c2
PSL_TESTS =	\
Packit Service dcb6c2
	$(PSL_TESTS)	\
Packit Service dcb6c2
	$(CFG)\$(PLAT)\test-is-public-builtin.exe	\
Packit Service dcb6c2
	$(CFG)\$(PLAT)\test-registrable-domain.exe
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
!ifdef USE_GETTEXT
Packit Service dcb6c2
USE_ICONV=1
Packit Service dcb6c2
PSL_ADDITIONAL_LIBS = $(PSL_ADDITIONAL_LIBS) $(GETTEXT_LIB)
Packit Service dcb6c2
BASE_CFLAGS = $(BASE_CFLAGS) /DUSE_GETTEXT=1
Packit Service dcb6c2
PSL_MAKE_OPTIONS = $(PSL_MAKE_OPTIONS) USE_GETTEXT^=1
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
!ifdef USE_ICONV
Packit Service dcb6c2
PSL_ADDITIONAL_LIBS = $(PSL_ADDITIONAL_LIBS) $(ICONV_LIB)
Packit Service dcb6c2
BASE_CFLAGS = $(BASE_CFLAGS) /DUSE_ICONV=1
Packit Service dcb6c2
PSL_MAKE_OPTIONS = $(PSL_MAKE_OPTIONS) USE_ICONV^=1
Packit Service dcb6c2
!endif
Packit Service dcb6c2
Packit Service dcb6c2
PSL_TEST_CFLAGS = $(BASE_CFLAGS) /DPSL_TESTFILE=\"$(PSL_TESTFILE_INPUT)\" /DPSL_FILE=\"$(PSL_FILE_INPUT)\"
Packit Service dcb6c2
Packit Service dcb6c2
# Visual Studio 2013 or earlier does not have snprintf(),
Packit Service dcb6c2
# so use _snprintf() which seems to be enough for our purposes
Packit Service dcb6c2
!if $(VSVER) < 14
Packit Service dcb6c2
PSL_TEST_CFLAGS = $(PSL_TEST_CFLAGS) /Dsnprintf=_snprintf
Packit Service dcb6c2
!endif