File

util-src/Makefile.win @ 13461:c673ff1075bd

mod_posix: Move everything to util.startup This allows greater control over the order of events. Notably, the internal ordering between daemonization, initialization of libunbound and setup of signal handling is sensitive. libunbound starts a separate thread for processing DNS requests. If this thread is started before signal handling has been set up, it will not inherit the signal handlers and instead behave as it would have before signal handlers were set up, i.e. cause the whole process to immediately exit. libunbound is usually initialized on the first DNS request, usually triggered by an outgoing s2s connection attempt. If daemonization happens before signals have been set up, signals may not be processed at all.
author Kim Alvefur <zash@zash.se>
date Sat, 23 Mar 2024 20:48:19 +0100
parent 2063:e89594a1bf4a
line wrap: on
line source


LUA_PATH=$(LUA_DEV)
IDN_PATH=..\..\libidn-1.15
OPENSSL_PATH=..\..\openssl-0.9.8k

LUA_INCLUDE=$(LUA_PATH)\include
LUA_LIB=$(LUA_PATH)\lib\lua5.1.lib

IDN_LIB=$(IDN_PATH)\win32\lib\libidn.lib
IDN_INCLUDE1=$(IDN_PATH)\lib
IDN_INCLUDE2=$(IDN_PATH)\win32\include
OPENSSL_LIB=$(OPENSSL_PATH)\out32dll\libeay32.lib
OPENSSL_INCLUDE=$(OPENSSL_PATH)\include

CL=cl /LD /MD /nologo

all: encodings.dll hashes.dll windows.dll

install: encodings.dll hashes.dll windows.dll
	copy /Y *.dll ..\util\

clean:
	del encodings.dll encodings.exp encodings.lib encodings.obj encodings.dll.manifest
	del hashes.dll hashes.exp hashes.lib hashes.obj hashes.dll.manifest
	del windows.dll windows.exp windows.lib windows.obj windows.dll.manifest

encodings.dll: encodings.c
	$(CL) encodings.c /I"$(LUA_INCLUDE)" /I"$(IDN_INCLUDE1)" /I"$(IDN_INCLUDE2)" /link "$(LUA_LIB)" "$(IDN_LIB)" /export:luaopen_util_encodings
	del encodings.exp encodings.lib encodings.obj encodings.dll.manifest

hashes.dll: hashes.c
	$(CL) hashes.c /I"$(LUA_INCLUDE)" /I"$(OPENSSL_INCLUDE)" /link "$(LUA_LIB)" "$(OPENSSL_LIB)" /export:luaopen_util_hashes
	del hashes.exp hashes.lib hashes.obj hashes.dll.manifest

windows.dll: windows.c
	$(CL) windows.c /I"$(LUA_INCLUDE)" /link "$(LUA_LIB)" dnsapi.lib /export:luaopen_util_windows
	del windows.exp windows.lib windows.obj windows.dll.manifest