|
1 # Copyright 2023 Mike Becker. All rights reserved. |
|
2 # |
|
3 # Redistribution and use in source and binary forms, with or without |
|
4 # modification, are permitted provided that the following conditions are met: |
|
5 # |
|
6 # 1. Redistributions of source code must retain the above copyright |
|
7 # notice, this list of conditions and the following disclaimer. |
|
8 # |
|
9 # 2. Redistributions in binary form must reproduce the above copyright |
|
10 # notice, this list of conditions and the following disclaimer in the |
|
11 # documentation and/or other materials provided with the distribution. |
|
12 # |
|
13 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
|
14 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
|
15 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
|
16 # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE |
|
17 # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
|
18 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
|
19 # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
|
20 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
|
21 # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
|
22 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
23 |
|
24 include ../config.mk |
|
25 |
|
26 SRC = allocator.c array_list.c buffer.c compare.c hash_key.c hash_map.c \ |
|
27 linked_list.c list.c map.c mempool.c printf.c string.c utils.c |
|
28 |
|
29 OBJ_EXT=.o |
|
30 OBJ=$(SRC:%.c=$(BUILD_DIR)/%$(OBJ_EXT)) |
|
31 |
|
32 static: $(BUILD_DIR)/libucx$(STLIB_EXT) |
|
33 |
|
34 shared: $(BUILD_DIR)/libucx$(SHLIB_EXT) |
|
35 |
|
36 $(BUILD_DIR)/libucx$(STLIB_EXT): $(OBJ) |
|
37 $(AR) $(ARFLAGS) $@ $^ |
|
38 |
|
39 $(BUILD_DIR)/libucx$(SHLIB_EXT): $(OBJ) |
|
40 $(CC) $(LDFLAGS) -o $@ $^ |
|
41 |
|
42 install: |
|
43 @echo "[ not supported yet ]" |
|
44 |
|
45 |
|
46 $(BUILD_DIR)/allocator$(OBJ_EXT): allocator.c cx/allocator.h cx/common.h |
|
47 echo "Compiling $<" |
|
48 $(CC) -o $@ $(CFLAGS) -c $< |
|
49 |
|
50 $(BUILD_DIR)/array_list$(OBJ_EXT): array_list.c cx/array_list.h cx/list.h \ |
|
51 cx/common.h cx/collection.h cx/allocator.h cx/iterator.h |
|
52 echo "Compiling $<" |
|
53 $(CC) -o $@ $(CFLAGS) -c $< |
|
54 |
|
55 $(BUILD_DIR)/buffer$(OBJ_EXT): buffer.c cx/buffer.h cx/common.h cx/allocator.h \ |
|
56 cx/utils.h |
|
57 echo "Compiling $<" |
|
58 $(CC) -o $@ $(CFLAGS) -c $< |
|
59 |
|
60 $(BUILD_DIR)/compare$(OBJ_EXT): compare.c cx/compare.h cx/common.h |
|
61 echo "Compiling $<" |
|
62 $(CC) -o $@ $(CFLAGS) -c $< |
|
63 |
|
64 $(BUILD_DIR)/hash_key$(OBJ_EXT): hash_key.c cx/hash_key.h cx/common.h |
|
65 echo "Compiling $<" |
|
66 $(CC) -o $@ $(CFLAGS) -c $< |
|
67 |
|
68 $(BUILD_DIR)/hash_map$(OBJ_EXT): hash_map.c cx/hash_map.h cx/map.h cx/common.h \ |
|
69 cx/collection.h cx/allocator.h cx/iterator.h cx/string.h cx/hash_key.h \ |
|
70 cx/utils.h |
|
71 echo "Compiling $<" |
|
72 $(CC) -o $@ $(CFLAGS) -c $< |
|
73 |
|
74 $(BUILD_DIR)/linked_list$(OBJ_EXT): linked_list.c cx/linked_list.h cx/common.h \ |
|
75 cx/list.h cx/collection.h cx/allocator.h cx/iterator.h cx/utils.h |
|
76 echo "Compiling $<" |
|
77 $(CC) -o $@ $(CFLAGS) -c $< |
|
78 |
|
79 $(BUILD_DIR)/list$(OBJ_EXT): list.c cx/list.h cx/common.h cx/collection.h \ |
|
80 cx/allocator.h cx/iterator.h |
|
81 echo "Compiling $<" |
|
82 $(CC) -o $@ $(CFLAGS) -c $< |
|
83 |
|
84 $(BUILD_DIR)/map$(OBJ_EXT): map.c cx/map.h cx/common.h cx/collection.h \ |
|
85 cx/allocator.h cx/iterator.h cx/string.h cx/hash_key.h |
|
86 echo "Compiling $<" |
|
87 $(CC) -o $@ $(CFLAGS) -c $< |
|
88 |
|
89 $(BUILD_DIR)/mempool$(OBJ_EXT): mempool.c cx/mempool.h cx/common.h cx/allocator.h \ |
|
90 cx/utils.h |
|
91 echo "Compiling $<" |
|
92 $(CC) -o $@ $(CFLAGS) -c $< |
|
93 |
|
94 $(BUILD_DIR)/printf$(OBJ_EXT): printf.c cx/printf.h cx/common.h cx/string.h \ |
|
95 cx/allocator.h |
|
96 echo "Compiling $<" |
|
97 $(CC) -o $@ $(CFLAGS) -c $< |
|
98 |
|
99 $(BUILD_DIR)/string$(OBJ_EXT): string.c cx/string.h cx/common.h cx/allocator.h \ |
|
100 cx/utils.h |
|
101 echo "Compiling $<" |
|
102 $(CC) -o $@ $(CFLAGS) -c $< |
|
103 |
|
104 $(BUILD_DIR)/utils$(OBJ_EXT): utils.c cx/utils.h cx/common.h |
|
105 echo "Compiling $<" |
|
106 $(CC) -o $@ $(CFLAGS) -c $< |
|
107 |