Subversion Repositories Kolibri OS

Rev

Rev 4104 | Rev 4389 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4104 Rev 4126
1
CC = gcc
1
CC = gcc
2
FASM = e:/fasm/fasm.exe
2
FASM = e:/fasm/fasm.exe
3
 
3
 
4
DEFINES	 = -D__KERNEL__ -DCONFIG_X86_32
4
DEFINES	 = -D__KERNEL__ -DCONFIG_X86_32
5
 
5
 
6
DDK_TOPDIR      = /d/kos/kolibri/drivers/ddk
6
DDK_TOPDIR      = /d/kos/kolibri/drivers/ddk
7
DRV_INCLUDES    = /d/kos/kolibri/drivers/include
7
DRV_INCLUDES    = /d/kos/kolibri/drivers/include
8
DRM_TOPDIR   	= $(CURDIR)/..
8
DRM_TOPDIR   	= $(CURDIR)/..
9
 
9
 
10
INCLUDES = 	-I$(DRV_INCLUDES) -I$(DRV_INCLUDES)/drm	\
10
INCLUDES = 	-I$(DRV_INCLUDES) -I$(DRV_INCLUDES)/drm	\
11
		-I$(DRV_INCLUDES)/linux -I$(DRV_INCLUDES)/linux/asm \
11
		-I$(DRV_INCLUDES)/linux -I$(DRV_INCLUDES)/linux/asm \
12
		-I./ -I./render
12
		-I./ -I./render
13
 
13
 
14
CFLAGS_OPT = -Os -march=i686 -msse2 -fomit-frame-pointer -fno-builtin-printf -mno-stack-arg-probe
14
CFLAGS_OPT = -Os -march=i686 -msse2 -fomit-frame-pointer -fno-builtin-printf -mno-stack-arg-probe
15
CFLAGS_OPT+= -mpreferred-stack-boundary=2 -mincoming-stack-boundary=2 -mno-ms-bitfields -flto
15
CFLAGS_OPT+= -mpreferred-stack-boundary=2 -mincoming-stack-boundary=2 -mno-ms-bitfields -flto
16
CFLAGS   = -c $(INCLUDES) $(DEFINES) $(CFLAGS_OPT)
16
CFLAGS   = -c $(INCLUDES) $(DEFINES) $(CFLAGS_OPT)
17
 
17
 
18
LIBPATH:= $(DDK_TOPDIR)
18
LIBPATH:= $(DDK_TOPDIR)
19
 
19
 
20
LIBS:=    libddk.a libcore.a libgcc.a
20
LIBS:=    libddk.a libcore.a libgcc.a
21
 
21
 
22
LDFLAGS = -e,_drvEntry,-nostdlib,-shared,-s,--image-base,0,--file-alignment,512,--section-alignment,4096
22
LDFLAGS = -e,_drvEntry,-nostdlib,-shared,-s,--image-base,0,--file-alignment,512,--section-alignment,4096
23
 
23
 
24
 
24
 
25
NAME:=	  i915
25
NAME:=	  i915
26
 
26
 
27
HFILES:=     		$(DRV_INCLUDES)/linux/types.h		\
27
HFILES:=     		$(DRV_INCLUDES)/linux/types.h		\
28
			$(DRV_INCLUDES)/linux/list.h		\
28
			$(DRV_INCLUDES)/linux/list.h		\
29
			$(DRV_INCLUDES)/linux/pci.h		\
29
			$(DRV_INCLUDES)/linux/pci.h		\
30
			$(DRV_INCLUDES)/drm/drm.h		\
30
			$(DRV_INCLUDES)/drm/drm.h		\
31
			$(DRV_INCLUDES)/drm/drmP.h		\
31
			$(DRV_INCLUDES)/drm/drmP.h		\
32
			$(DRV_INCLUDES)/drm/drm_edid.h		\
32
			$(DRV_INCLUDES)/drm/drm_edid.h		\
33
			$(DRV_INCLUDES)/drm/drm_crtc.h		\
33
			$(DRV_INCLUDES)/drm/drm_crtc.h		\
34
			$(DRV_INCLUDES)/drm/drm_mode.h		\
34
			$(DRV_INCLUDES)/drm/drm_mode.h		\
35
			$(DRV_INCLUDES)/drm/drm_mm.h		\
35
			$(DRV_INCLUDES)/drm/drm_mm.h		\
36
			i915_drv.h				\
36
			i915_drv.h				\
37
			bitmap.h
37
			bitmap.h
38
 
38
 
39
NAME_SRC=		main.c					\
39
NAME_SRC=		main.c					\
40
			pci.c					\
40
			pci.c					\
41
			dvo_ch7017.c				\
41
			dvo_ch7017.c				\
42
			dvo_ch7xxx.c				\
42
			dvo_ch7xxx.c				\
43
			dvo_ivch.c				\
43
			dvo_ivch.c				\
44
			dvo_ns2501.c				\
44
			dvo_ns2501.c				\
45
			dvo_sil164.c				\
45
			dvo_sil164.c				\
46
			dvo_tfp410.c				\
46
			dvo_tfp410.c				\
47
			i915_dma.c				\
47
			i915_dma.c				\
48
			i915_drv.c				\
48
			i915_drv.c				\
49
			i915_gem.c				\
49
			i915_gem.c				\
50
			i915_gem_context.c			\
50
			i915_gem_context.c			\
51
			i915_gem_gtt.c				\
51
			i915_gem_gtt.c				\
52
			i915_gem_execbuffer.c			\
52
			i915_gem_execbuffer.c			\
53
			i915_gem_stolen.c			\
53
			i915_gem_stolen.c			\
54
			i915_gem_tiling.c			\
54
			i915_gem_tiling.c			\
55
			i915_irq.c				\
55
			i915_gpu_error.c			\
-
 
56
			i915_irq.c				\
56
			intel_bios.c				\
57
			intel_bios.c				\
57
			intel_crt.c				\
58
			intel_crt.c				\
58
			intel_ddi.c				\
59
			intel_ddi.c				\
59
			intel_display.c				\
60
			intel_display.c				\
60
			intel_dp.c				\
61
			intel_dp.c				\
61
			intel_dvo.c				\
62
			intel_dvo.c				\
62
			intel_fb.c				\
63
			intel_fb.c				\
63
			intel_hdmi.c				\
64
			intel_hdmi.c				\
64
			intel_i2c.c				\
65
			intel_i2c.c				\
65
			intel_lvds.c				\
66
			intel_lvds.c				\
66
			intel_modes.c				\
67
			intel_modes.c				\
67
			intel_opregion.c			\
68
			intel_opregion.c			\
68
			intel_panel.c				\
69
			intel_panel.c				\
69
			intel_pm.c				\
70
			intel_pm.c				\
70
			intel_ringbuffer.c			\
71
			intel_ringbuffer.c			\
71
			intel_sdvo.c				\
72
			intel_sdvo.c				\
72
			intel_sideband.c			\
73
			intel_sideband.c			\
73
			intel_sprite.c				\
74
			intel_sprite.c				\
74
			intel_uncore.c				\
75
			intel_uncore.c				\
75
			kms_display.c				\
76
			kms_display.c				\
76
			utils.c					\
77
			utils.c					\
77
			../hdmi.c				\
78
			../hdmi.c				\
78
			Gtt/intel-agp.c				\
79
			Gtt/intel-agp.c				\
79
			Gtt/intel-gtt.c				\
80
			Gtt/intel-gtt.c				\
80
			../drm_global.c				\
81
			../drm_global.c				\
81
			../drm_drv.c				\
82
			../drm_drv.c				\
82
			../drm_vma_manager.c			\
83
			../drm_vma_manager.c			\
83
			$(DRM_TOPDIR)/i2c/i2c-core.c		\
84
			$(DRM_TOPDIR)/i2c/i2c-core.c		\
84
			$(DRM_TOPDIR)/i2c/i2c-algo-bit.c	\
85
			$(DRM_TOPDIR)/i2c/i2c-algo-bit.c	\
85
			$(DRM_TOPDIR)/drm_crtc.c		\
86
			$(DRM_TOPDIR)/drm_crtc.c		\
86
			$(DRM_TOPDIR)/drm_crtc_helper.c		\
87
			$(DRM_TOPDIR)/drm_crtc_helper.c		\
87
			$(DRM_TOPDIR)/drm_dp_helper.c		\
88
			$(DRM_TOPDIR)/drm_dp_helper.c		\
88
			$(DRM_TOPDIR)/drm_edid.c		\
89
			$(DRM_TOPDIR)/drm_edid.c		\
89
			$(DRM_TOPDIR)/drm_fb_helper.c		\
90
			$(DRM_TOPDIR)/drm_fb_helper.c		\
90
			$(DRM_TOPDIR)/drm_gem.c			\
91
			$(DRM_TOPDIR)/drm_gem.c			\
91
			$(DRM_TOPDIR)/drm_irq.c			\
92
			$(DRM_TOPDIR)/drm_irq.c			\
92
			$(DRM_TOPDIR)/drm_mm.c			\
93
			$(DRM_TOPDIR)/drm_mm.c			\
93
			$(DRM_TOPDIR)/drm_modes.c		\
94
			$(DRM_TOPDIR)/drm_modes.c		\
94
			$(DRM_TOPDIR)/drm_pci.c			\
95
			$(DRM_TOPDIR)/drm_pci.c			\
95
			$(DRM_TOPDIR)/drm_rect.c		\
96
			$(DRM_TOPDIR)/drm_rect.c		\
96
			$(DRM_TOPDIR)/drm_stub.c
97
			$(DRM_TOPDIR)/drm_stub.c
97
 
98
 
98
SRC_DEP:=
99
SRC_DEP:=
99
 
100
 
100
 
101
 
101
NAME_OBJS = $(patsubst %.S, %.o, $(patsubst %.asm, %.o,\
102
NAME_OBJS = $(patsubst %.S, %.o, $(patsubst %.asm, %.o,\
102
            $(patsubst %.c, %.o, $(NAME_SRC))))
103
            $(patsubst %.c, %.o, $(NAME_SRC))))
103
 
104
 
104
 
105
 
105
 
106
 
106
all: $(NAME).dll
107
all: $(NAME).dll
107
 
108
 
108
$(NAME).dll: $(NAME_OBJS) $(FW_BINS) $(SRC_DEP) $(HFILES) i915.lds Makefile.lto
109
$(NAME).dll: $(NAME_OBJS) $(FW_BINS) $(SRC_DEP) $(HFILES) i915.lds Makefile.lto
109
	$(CC) $(CFLAGS_OPT) -fwhole-program -nostdlib -Wl,-L$(LIBPATH),$(LDFLAGS),-T,i915.lds -o $@ $(NAME_OBJS) $(LIBS)
110
	$(CC) $(CFLAGS_OPT) -fwhole-program -nostdlib -Wl,-L$(LIBPATH),$(LDFLAGS),-T,i915.lds -o $@ $(NAME_OBJS) $(LIBS)
110
 
111
 
111
 
112
 
112
%.o : %.c $(HFILES) Makefile.lto
113
%.o : %.c $(HFILES) Makefile.lto
113
	$(CC) $(CFLAGS) $(DEFINES) -o $@ $<
114
	$(CC) $(CFLAGS) $(DEFINES) -o $@ $<
114
 
115
 
115
%.o : %.S $(HFILES) Makefile.lto
116
%.o : %.S $(HFILES) Makefile.lto
116
	as -o $@ $<
117
	as -o $@ $<
117
 
118
 
118
 
119
 
119
clean:
120
clean:
120
	-rm -f ../*/*.o
121
	-rm -f ../*/*.o
121
 
122
 
122
 
123
 
123
clean:
124
clean:
124
>
125
>
125
 
126
 
126
%.o>
127
%.o>