huangyulong преди 4 години
родител
ревизия
2bdf59c41b

+ 54
- 0
make_demo4/.gitignore Целия файл

@@ -0,0 +1,54 @@
1
+# ---> C
2
+# Prerequisites
3
+*.d
4
+
5
+# Object files
6
+*.o
7
+*.ko
8
+*.obj
9
+*.elf
10
+
11
+# Linker output
12
+*.ilk
13
+*.map
14
+*.exp
15
+
16
+# Precompiled Headers
17
+*.gch
18
+*.pch
19
+
20
+# Libraries
21
+*.lib
22
+*.a
23
+*.la
24
+*.lo
25
+
26
+# Shared objects (inc. Windows DLLs)
27
+*.dll
28
+*.so
29
+*.so.*
30
+*.dylib
31
+
32
+# Executables
33
+*.exe
34
+*.out
35
+*.app
36
+*.i*86
37
+*.x86_64
38
+*.hex
39
+
40
+# Debug files
41
+*.dSYM/
42
+*.su
43
+*.idb
44
+*.pdb
45
+
46
+# Kernel Module Compile Results
47
+*.mod*
48
+*.cmd
49
+.tmp_versions/
50
+modules.order
51
+Module.symvers
52
+Mkfile.old
53
+dkms.conf
54
+

+ 3
- 0
make_demo4/README.md Целия файл

@@ -0,0 +1,3 @@
1
+# make_damo
2
+
3
+make模块化编译模板

Двоични данни
make_demo4/bin/myapp Целия файл


+ 11
- 0
make_demo4/config.mk Целия файл

@@ -0,0 +1,11 @@
1
+SUBDIRS = module_1\
2
+	  module_2\
3
+	  module_3\
4
+	  main\
5
+	  obj 
6
+CFLAGS = -Wall -I ../include 
7
+BIN = myapp 
8
+OBJS = module_1.o module_2.o module_3.o main.o 
9
+BIN_DIR = bin
10
+OBJS_DIR = obj
11
+export SUBDIRS OBJS_DIR BIN OBJS BIN_DIR CFLAGS 

+ 8
- 0
make_demo4/include/include.h Целия файл

@@ -0,0 +1,8 @@
1
+#ifndef _INCLUDE_H_
2
+#define _INCLUDE_H_
3
+
4
+void printf_1(void);
5
+void printf_2(void);
6
+void printf_3(void);
7
+
8
+#endif

+ 10
- 0
make_demo4/main/main.c Целия файл

@@ -0,0 +1,10 @@
1
+#include "include.h"
2
+
3
+int main()
4
+{
5
+    printf_1();
6
+    printf_2();
7
+    printf_3();
8
+
9
+    return 0;
10
+}

+ 2
- 0
make_demo4/main/makefile Целия файл

@@ -0,0 +1,2 @@
1
+../$(OBJS_DIR)/main.o : main.c 
2
+	$(CC) -c $^ -o $@ $(CFLAGS)

+ 15
- 0
make_demo4/makefile Целия файл

@@ -0,0 +1,15 @@
1
+include config.mk
2
+
3
+all: CHECK_DIR $(SUBDIRS)  
4
+CHECK_DIR:					
5
+	mkdir -p $(BIN_DIR)  
6
+$(SUBDIRS): ECHO   
7
+	make -C $@  
8
+ECHO:				
9
+	@echo $(SUBDIRS)
10
+	@echo begin compile
11
+
12
+.PHONY: clean
13
+clean:    
14
+	@rm -rf $(OBJS_DIR)/*.o  
15
+	@rm -rf $(BIN_DIR)

+ 2
- 0
make_demo4/module_1/makefile Целия файл

@@ -0,0 +1,2 @@
1
+../$(OBJS_DIR)/module_1.o: module_1.c
2
+	$(CC) -c $< -o $@ $(CFLAGS)

+ 6
- 0
make_demo4/module_1/module_1 Целия файл

@@ -0,0 +1,6 @@
1
+#ifndef _MODULE_1_
2
+#define _MODULE_1_
3
+
4
+void printf_1(void);
5
+
6
+#endif

+ 6
- 0
make_demo4/module_1/module_1.c Целия файл

@@ -0,0 +1,6 @@
1
+#include <stdio.h>
2
+
3
+void printf_1(void)
4
+{
5
+    printf("this is module_1 output!\n");
6
+}

+ 2
- 0
make_demo4/module_2/makefile Целия файл

@@ -0,0 +1,2 @@
1
+../$(OBJS_DIR)/module_2.o : module_2.c
2
+	$(CC) -c $< -o $@ $(CFLAGS)

+ 6
- 0
make_demo4/module_2/module_2 Целия файл

@@ -0,0 +1,6 @@
1
+#ifndef _MODULE_2_
2
+#define _MODULE_2_
3
+
4
+void printf_2(void);
5
+
6
+#endif

+ 6
- 0
make_demo4/module_2/module_2.c Целия файл

@@ -0,0 +1,6 @@
1
+#include <stdio.h>
2
+
3
+void printf_2(void)
4
+{
5
+    printf("this is module_2 output!\n");
6
+}

+ 2
- 0
make_demo4/module_3/makefile Целия файл

@@ -0,0 +1,2 @@
1
+../$(OBJS_DIR)/module_3.o: module_3.c
2
+	$(CC) -c $< -o $@ $(CFLAGS)

+ 6
- 0
make_demo4/module_3/module_3 Целия файл

@@ -0,0 +1,6 @@
1
+#ifndef _MODULE_3_
2
+#define _MODULE_3_
3
+
4
+void printf_3(void);
5
+
6
+#endif

+ 6
- 0
make_demo4/module_3/module_3.c Целия файл

@@ -0,0 +1,6 @@
1
+#include <stdio.h>
2
+
3
+void printf_3(void)
4
+{
5
+    printf("this is module_3 output!\n");
6
+}

+ 2
- 0
make_demo4/obj/makefile Целия файл

@@ -0,0 +1,2 @@
1
+../$(BIN_DIR)/$(BIN): $(OBJS)
2
+	$(CC) $(CFLAGS) $^ -o $@

Loading…
Отказ
Запис