src/server/Makefile

Sat, 07 May 2022 14:08:46 +0200

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sat, 07 May 2022 14:08:46 +0200
branch
webdav
changeset 335
5234c57b8759
parent 287
a171da778817
child 415
d938228c382e
permissions
-rw-r--r--

code cleanup

1
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
1 #
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
2 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
3 #
45
a24aa388f02f added access log
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 44
diff changeset
4 # Copyright 2013 Olaf Wintermann. All rights reserved.
1
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
5 #
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
6 # Redistribution and use in source and binary forms, with or without
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
7 # modification, are permitted provided that the following conditions are met:
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
8 #
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
9 # 1. Redistributions of source code must retain the above copyright
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
10 # notice, this list of conditions and the following disclaimer.
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
11 #
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
12 # 2. Redistributions in binary form must reproduce the above copyright
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
13 # notice, this list of conditions and the following disclaimer in the
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
14 # documentation and/or other materials provided with the distribution.
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
15 #
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
16 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
17 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
18 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
19 # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
20 # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
21 # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
22 # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
23 # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
24 # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
25 # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
26 # POSSIBILITY OF SUCH DAMAGE.
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
27 #
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
28
41
bb7a1f5a8b48 added Linux support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 40
diff changeset
29 BUILD_ROOT = ../..
bb7a1f5a8b48 added Linux support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 40
diff changeset
30 include $(BUILD_ROOT)/config.mk
23
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
31
41
bb7a1f5a8b48 added Linux support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 40
diff changeset
32 OBJ_DIR = $(BUILD_ROOT)/build/
1
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
33
91
fac51f87def0 ucx update
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 84
diff changeset
34 MAIN_TARGET = $(BUILD_ROOT)/build/bin/webservd
1
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
35
175
9823770ba4ee using wstool in server control scripts
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 92
diff changeset
36 LIB_WSCFG = $(BUILD_ROOT)/build/lib/libwscfg$(LIB_EXT)
9823770ba4ee using wstool in server control scripts
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 92
diff changeset
37
198
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
38 TEST_TARGET = $(BUILD_ROOT)/build/bin/wstest
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
39
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
40 all: preparation $(MAIN_TARGET) $(LIB_WSCFG) $(PLUGINS) $(TEST_TARGET)
1
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
41
14
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
42 include util/objs.mk
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
43 include safs/objs.mk
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
44 include webdav/objs.mk
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
45 include daemon/objs.mk
16
a9bbd82d2dce New configuration file parser
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 14
diff changeset
46 include config/objs.mk
23
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
47 include admin/objs.mk
198
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
48 include test/objs.mk
14
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
49
23
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
50 include util/Makefile
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
51 include safs/Makefile
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
52 include webdav/Makefile
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
53 include daemon/Makefile
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
54 include config/Makefile
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
55 include admin/Makefile
198
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
56 include test/Makefile
14
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
57
198
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
58 MAINOBJS = $(UTILOBJS) $(SAFOBJS) $(DAVOBJS) $(DAEMONOBJS) $(CONFOBJS) $(ADMINOBJS)
23
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
59
198
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
60 TESTOBJS += $(MAINOBJS)
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
61
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
62 OBJ_DIRS = daemon safs ucx util webdav config admin plugins test
14
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
63 MK_OBJ_DIRS = $(OBJ_DIRS:%=$(OBJ_DIR)server/%)
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
64
254
4784c14aa639 ucx update
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 198
diff changeset
65 CFLAGS += -I../ucx/
91
fac51f87def0 ucx update
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 84
diff changeset
66 LDFLAGS += -lucx
23
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
67
14
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
68 preparation: $(MK_OBJ_DIRS)
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
69
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
70 $(MK_OBJ_DIRS):
b8bf95b39952 New source folder layout
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
71 mkdir -p $@
1
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
72
198
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
73 $(MAIN_TARGET): preparation $(MAINOBJS) $(DAEMON_STARTOBJ)
2f845b5bda9d adds test suite to build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
74 $(CXX) -o $(MAIN_TARGET) $(MAINOBJS) $(DAEMON_STARTOBJ) -L$(BUILD_ROOT)/build/lib $(LDFLAGS)
1
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
75
175
9823770ba4ee using wstool in server control scripts
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 92
diff changeset
76 $(LIB_WSCFG): $(CONFOBJS)
9823770ba4ee using wstool in server control scripts
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 92
diff changeset
77 $(CC) $(SHLIB_LDFLAGS) -o $@ $(CONFOBJS)
9823770ba4ee using wstool in server control scripts
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 92
diff changeset
78
287
a171da778817 prepare build system for postgresql plugin tests
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 254
diff changeset
79 $(TEST_TARGET): $(TESTOBJS) $(PLUGINS)
a171da778817 prepare build system for postgresql plugin tests
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 254
diff changeset
80 $(CXX) -o $(TEST_TARGET) $(TESTOBJS) -L$(BUILD_ROOT)/build/lib $(LDFLAGS) $(TEST_PLUGIN_LDFLAGS)
1
3c066d52342d added source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
81
23
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
82
168
5c752979bfd6 fixes crash on broken urls
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 92
diff changeset
83 $(PLUGINS): $(MAIN_TARGET) FORCE
84
afd57ce39ec9 added initial java plugin code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 62
diff changeset
84 cd plugins/$@/; $(MAKE) all
23
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
85
168
5c752979bfd6 fixes crash on broken urls
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 92
diff changeset
86 FORCE:
23
a2c8fc23c90e Added basic authentication
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 16
diff changeset
87

mercurial