installer kinda works

git-svn-id: file:///raid/svn-personal/tewi/trunk@54 8739d7e6-ffea-ec47-b151-bdff447c6205
This commit is contained in:
Nishi 2024-09-18 12:15:57 +00:00
parent 7593e59074
commit 76ddc26918
6 changed files with 85 additions and 1 deletions

View File

@ -11,3 +11,4 @@ LIBS = -lws2_32
EXEC = .exe EXEC = .exe
LIB = .dll LIB = .dll
PREOBJS = tewi.res PREOBJS = tewi.res
INSTALLER = install.exe

View File

@ -11,3 +11,4 @@ LIBS = -lws2_32
EXEC = .exe EXEC = .exe
LIB = .dll LIB = .dll
PREOBJS = tewi.res PREOBJS = tewi.res
INSTALLER = install.exe

View File

@ -7,7 +7,10 @@ include $(PWD)/Platform/$(PLATFORM).mk
OBJS = version.o main.o config.o server.o http.o module.o strptime.o $(EXTOBJS) $(PREOBJS) OBJS = version.o main.o config.o server.o http.o module.o strptime.o $(EXTOBJS) $(PREOBJS)
all: tewi$(EXEC) all: tewi$(EXEC) $(INSTALLER)
install.exe: tewi$(EXEC) install.nsi
makensis install.nsi
tewi$(EXEC): $(OBJS) ../Common/common.a tewi$(EXEC): $(OBJS) ../Common/common.a
$(CC) $(LDFLAGS) $(EXTLDFLAGS) -o $@ $(OBJS) $(EXTLIBS) $(LIBS) ../Common/common.a $(CC) $(LDFLAGS) $(EXTLDFLAGS) -o $@ $(OBJS) $(EXTLIBS) $(LIBS) ../Common/common.a

39
Server/install.nsi Normal file
View File

@ -0,0 +1,39 @@
# $Id$
Name "Tewi HTTPd"
OutFile "install.exe"
InstallDir "C:\Tewi"
Icon "tewi.ico"
LicenseData ../LICENSE
Page license
Page instfiles
UninstPage uninstConfirm
UninstPage instfiles
Section
CreateDirectory "$INSTDIR\etc"
CreateDirectory "$INSTDIR\www"
CreateDirectory "$INSTDIR\bin"
SetOutPath "$INSTDIR\bin"
File "tewi.exe"
SetOutPath "$INSTDIR\etc"
File /oname=tewi.conf "../example-win.conf"
SetOutPath "$INSTDIR\www"
File /oname=index.html "../itworks.html"
CreateDirectory "$SMPROGRAMS\Tewi HTTPd"
CreateShortcut "$SMPROGRAMS\Tewi HTTPd\Start Tewi HTTPd.lnk" "$INSTDIR\bin\tewi.exe" ""
CreateShortcut "$SMPROGRAMS\Tewi HTTPd\Start Tewi HTTPd (verbose).lnk" "$INSTDIR\bin\tewi.exe" "-v"
CreateShortcut "$SMPROGRAMS\Tewi HTTPd\Uninstall Tewi HTTPd.lnk" "$INSTDIR\uninstall.exe" ""
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Tewi HTTPd" "DisplayName" "Tewi HTTPd"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Tewi HTTPd" "UninstallString" '"$INSTDIR\uninstall.exe"'
WriteUninstaller "$INSTDIR\uninstall.exe"
SectionEnd
Section "Uninstall"
RMDir /r "$INSTDIR"
RMDir /r "$SMPROGRAMS\Tewi HTTPd"
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Tewi HTTPd"
SectionEnd

29
example-win.conf Normal file
View File

@ -0,0 +1,29 @@
# $Id: example.conf 40 2024-09-17 12:31:08Z nishi $
# This is an example config
Listen 80
#ListenSSL 443
#SSLKey key.pem
#SSLCertificate cert.pem
MIMEType all application/octet-stream
MIMEType .html text/html
MIMEType .txt text/plain
MIMEType .png image/png
Icon all /icons/unknown.png
Icon text/* /icons/text.png
Icon image/* /icons/image.png
Icon misc/dir /icons/folder.png
Icon misc/parent /icons/parent.png
DirectoryIndex index.html
Readme README
DocumentRoot C:/Tewi/www
BeginDirectory C:/Tewi/www
Allow all
EndDirectory

11
itworks.html Normal file
View File

@ -0,0 +1,11 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
<head>
<title>It Works</title>
</head>
<body>
<h1>It Works!</h1>
<hr>
Congratulations - If you can see this page, it means Tewi HTTPd has been configured successfully!
</body>
</html>