Subversion Repositories Kolibri OS

Rev

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

Rev 1986 Rev 1990
1
CC = gcc
1
CC = gcc
2
LD = ld
2
LD = ld
3
AS = as
3
AS = as
4
FASM = e:/fasm/fasm.exe
4
FASM = e:/fasm/fasm.exe
5
 
5
 
6
DEFINES	 = -D__KERNEL__ -DCONFIG_X86_32 
6
DEFINES	 = -D__KERNEL__ -DCONFIG_X86_32 
7
 
7
 
8
DRV_TOPDIR   = $(CURDIR)/../../..
8
DRV_TOPDIR   = $(CURDIR)/../../..
9
DRM_TOPDIR   = $(CURDIR)/..
9
DRM_TOPDIR   = $(CURDIR)/..
10
 
10
 
11
DRV_INCLUDES = $(DRV_TOPDIR)/include
11
DRV_INCLUDES = $(DRV_TOPDIR)/include
12
 
12
 
13
INCLUDES = 	-I$(DRV_INCLUDES) -I$(DRV_INCLUDES)/drm	\
13
INCLUDES = 	-I$(DRV_INCLUDES) -I$(DRV_INCLUDES)/drm	\
14
		-I$(DRV_INCLUDES)/linux
14
		-I$(DRV_INCLUDES)/linux
15
 
15
 
16
CFLAGS   = -c -Os $(INCLUDES) $(DEFINES) -march=i686 -fomit-frame-pointer -fno-builtin-printf
16
CFLAGS   = -c -Os $(INCLUDES) $(DEFINES) -march=i686 -fomit-frame-pointer -fno-builtin-printf
17
 
17
 
18
LIBPATH:= $(DRV_TOPDIR)/ddk
18
LIBPATH:= $(DRV_TOPDIR)/ddk
19
 
19
 
20
LIBS:=    -lddk -lcore 
20
LIBS:=    -lddk -lcore 
21
 
21
 
22
LDFLAGS = -nostdlib -shared -s -Map atikms.map --image-base 0\
22
LDFLAGS = -nostdlib -shared -s -Map atikms.map --image-base 0\
23
	  --file-alignment 512 --section-alignment 4096
23
	  --file-alignment 512 --section-alignment 4096
24
 
24
 
25
 
25
 
26
NAME:=	  atikms
26
NAME:=	  atikms
27
 
27
 
28
HFILES:=     		$(DRV_INCLUDES)/linux/types.h		\
28
HFILES:=     		$(DRV_INCLUDES)/linux/types.h		\
29
			$(DRV_INCLUDES)/linux/list.h		\
29
			$(DRV_INCLUDES)/linux/list.h		\
30
			$(DRV_INCLUDES)/linux/pci.h		\
30
			$(DRV_INCLUDES)/linux/pci.h		\
31
			$(DRV_INCLUDES)/drm/drm.h		\
31
			$(DRV_INCLUDES)/drm/drm.h		\
32
			$(DRV_INCLUDES)/drm/drmP.h		\
32
			$(DRV_INCLUDES)/drm/drmP.h		\
33
			$(DRV_INCLUDES)/drm/drm_edid.h		\
33
			$(DRV_INCLUDES)/drm/drm_edid.h		\
34
			$(DRV_INCLUDES)/drm/drm_crtc.h		\
34
			$(DRV_INCLUDES)/drm/drm_crtc.h		\
35
			$(DRV_INCLUDES)/drm/drm_mode.h		\
35
			$(DRV_INCLUDES)/drm/drm_mode.h		\
36
			$(DRV_INCLUDES)/drm/drm_mm.h		\
36
			$(DRV_INCLUDES)/drm/drm_mm.h		\
37
			atom.h					\
37
			atom.h					\
38
			radeon.h				\
38
			radeon.h				\
39
			radeon_asic.h
39
			radeon_asic.h
40
 
40
 
41
NAME_SRC=							\
41
NAME_SRC=							\
42
			pci.c					\
42
			pci.c					\
43
			$(DRM_TOPDIR)/drm_mm.c			\
43
			$(DRM_TOPDIR)/drm_mm.c			\
44
			$(DRM_TOPDIR)/drm_irq.c			\
44
			$(DRM_TOPDIR)/drm_irq.c			\
45
			$(DRM_TOPDIR)/drm_edid.c		\
45
			$(DRM_TOPDIR)/drm_edid.c		\
46
			$(DRM_TOPDIR)/drm_modes.c		\
46
			$(DRM_TOPDIR)/drm_modes.c		\
47
			$(DRM_TOPDIR)/drm_crtc.c		\
47
			$(DRM_TOPDIR)/drm_crtc.c		\
48
			$(DRM_TOPDIR)/drm_crtc_helper.c		\
48
			$(DRM_TOPDIR)/drm_crtc_helper.c		\
49
			$(DRM_TOPDIR)/drm_fb_helper.c		\
49
			$(DRM_TOPDIR)/drm_fb_helper.c		\
50
			$(DRM_TOPDIR)/drm_dp_i2c_helper.c	\
50
			$(DRM_TOPDIR)/drm_dp_i2c_helper.c	\
51
			$(DRM_TOPDIR)/i2c/i2c-core.c		\
51
			$(DRM_TOPDIR)/i2c/i2c-core.c		\
52
			$(DRM_TOPDIR)/i2c/i2c-algo-bit.c	\
52
			$(DRM_TOPDIR)/i2c/i2c-algo-bit.c	\
53
			radeon_device.c				\
53
			radeon_device.c				\
54
			evergreen.c				\
54
			evergreen.c				\
55
			evergreen_blit_shaders.c		\
55
			evergreen_blit_shaders.c		\
56
			radeon_clocks.c				\
56
			radeon_clocks.c				\
57
			radeon_i2c.c				\
57
			radeon_i2c.c				\
58
			atom.c					\
58
			atom.c					\
59
			radeon_gem.c				\
59
			ni.c					\
60
			radeon_atombios.c			\
60
			radeon_gem.c				\
-
 
61
			radeon_atombios.c			\
61
			radeon_agp.c				\
62
			radeon_agp.c				\
62
			radeon_asic.c				\
63
			radeon_asic.c				\
63
			atombios_crtc.c				\
64
			atombios_crtc.c				\
64
			atombios_dp.c				\
65
			atombios_dp.c				\
65
			radeon_encoders.c			\
66
			radeon_encoders.c			\
66
			radeon_connectors.c			\
67
			radeon_connectors.c			\
67
			radeon_bios.c				\
68
			radeon_bios.c				\
68
			radeon_combios.c			\
69
			radeon_combios.c			\
69
			radeon_legacy_crtc.c			\
70
			radeon_legacy_crtc.c			\
70
			radeon_legacy_encoders.c		\
71
			radeon_legacy_encoders.c		\
71
			radeon_legacy_tv.c			\
72
			radeon_legacy_tv.c			\
72
			radeon_display.c			\
73
			radeon_display.c			\
73
			radeon_gart.c				\
74
			radeon_gart.c				\
74
			radeon_ring.c				\
75
			radeon_ring.c				\
75
			radeon_object_kos.c			\
76
			radeon_object_kos.c			\
76
			radeon_pm.c				\
77
			radeon_pm.c				\
77
			r100.c					\
78
			r100.c					\
78
			r200.c					\
79
			r200.c					\
79
			r300.c					\
80
			r300.c					\
80
			r420.c					\
81
			r420.c					\
81
			rv515.c					\
82
			rv515.c					\
82
			r520.c					\
83
			r520.c					\
83
			r600.c					\
84
			r600.c					\
84
			r600_audio.c				\
85
			r600_audio.c				\
85
			r600_hdmi.c				\
86
			r600_hdmi.c				\
86
			rs400.c					\
87
			rs400.c					\
87
			rs600.c					\
88
			rs600.c					\
88
			rs690.c					\
89
			rs690.c					\
89
			rv770.c					\
90
			rv770.c					\
90
			radeon_fb.c				\
91
			radeon_fb.c				\
91
			rdisplay.c				\
92
			rdisplay.c				\
92
			rdisplay_kms.c				\
93
			rdisplay_kms.c				\
93
			cmdline.c				\
94
			cmdline.c				\
94
			fwblob.asm
95
			fwblob.asm
95
#			cursor.S
96
#			cursor.S
96
 
97
 
97
FW_BINS=							\
98
FW_BINS=							\
98
			firmware/R100_cp.bin			\
99
			firmware/R100_cp.bin			\
99
			firmware/R200_cp.bin			\
100
			firmware/R200_cp.bin			\
100
			firmware/R300_cp.bin			\
101
			firmware/R300_cp.bin			\
101
			firmware/R420_cp.bin			\
102
			firmware/R420_cp.bin			\
102
			firmware/R520_cp.bin			\
103
			firmware/R520_cp.bin			\
103
								\
104
								\
104
			firmware/RS690_cp.bin			\
105
			firmware/RS690_cp.bin			\
105
			firmware/RS600_cp.bin			\
106
			firmware/RS600_cp.bin			\
106
			firmware/RS780_me.bin			\
107
			firmware/RS780_me.bin			\
107
			firmware/RS780_pfp.bin			\
108
			firmware/RS780_pfp.bin			\
108
								\
109
								\
109
			firmware/RV610_me.bin			\
110
			firmware/RV610_me.bin			\
110
			firmware/RV620_me.bin			\
111
			firmware/RV620_me.bin			\
111
			firmware/RV630_me.bin			\
112
			firmware/RV630_me.bin			\
112
			firmware/RV635_me.bin			\
113
			firmware/RV635_me.bin			\
113
			firmware/RV670_me.bin			\
114
			firmware/RV670_me.bin			\
114
			firmware/RV710_me.bin			\
115
			firmware/RV710_me.bin			\
115
			firmware/RV730_me.bin			\
116
			firmware/RV730_me.bin			\
116
			firmware/RV770_me.bin			\
117
			firmware/RV770_me.bin			\
117
								\
118
								\
118
			firmware/RV610_pfp.bin			\
119
			firmware/RV610_pfp.bin			\
119
			firmware/RV620_pfp.bin			\
120
			firmware/RV620_pfp.bin			\
120
			firmware/RV630_pfp.bin			\
121
			firmware/RV630_pfp.bin			\
121
			firmware/RV635_pfp.bin			\
122
			firmware/RV635_pfp.bin			\
122
			firmware/RV670_pfp.bin			\
123
			firmware/RV670_pfp.bin			\
123
			firmware/RV710_pfp.bin			\
124
			firmware/RV710_pfp.bin			\
124
			firmware/RV730_pfp.bin			\
125
			firmware/RV730_pfp.bin			\
125
			firmware/RV770_pfp.bin			\
126
			firmware/RV770_pfp.bin			\
126
								\
127
								\
127
			firmware/R600_rlc.bin			\
128
			firmware/R600_rlc.bin			\
128
			firmware/R700_rlc.bin
129
			firmware/R700_rlc.bin
129
 
130
 
130
 
131
 
131
SRC_DEP:=    
132
SRC_DEP:=    
132
 
133
 
133
 
134
 
134
NAME_OBJS =  $(patsubst %.S, %.o, $(patsubst %.asm, %.o,\
135
NAME_OBJS =  $(patsubst %.S, %.o, $(patsubst %.asm, %.o,\
135
            $(patsubst %.c, %.o, $(NAME_SRC))))
136
            $(patsubst %.c, %.o, $(NAME_SRC))))
136
 
137
 
137
 
138
 
138
 
139
 
139
all: $(NAME).dll
140
all: $(NAME).dll
140
 
141
 
141
$(NAME).dll: $(NAME_OBJS) $(FW_BINS) $(SRC_DEP) $(HFILES) $(LIBPATH)/libcore.a $(LIBPATH)/libddk.a atikms.lds Makefile
142
$(NAME).dll: $(NAME_OBJS) $(FW_BINS) $(SRC_DEP) $(HFILES) $(LIBPATH)/libcore.a $(LIBPATH)/libddk.a atikms.lds Makefile
142
	$(LD) -L$(LIBPATH) $(LDFLAGS) -T atikms.lds -o $@ $(NAME_OBJS) $(LIBS)  
143
	$(LD) -L$(LIBPATH) $(LDFLAGS) -T atikms.lds -o $@ $(NAME_OBJS) $(LIBS)  
143
 
144
 
144
 
145
 
145
%.o : %.c $(HFILES) Makefile
146
%.o : %.c $(HFILES) Makefile
146
	$(CC) $(CFLAGS) $(DEFINES) -o $@ $<
147
	$(CC) $(CFLAGS) $(DEFINES) -o $@ $<
147
 
148
 
148
%.o : %.S $(HFILES) Makefile
149
%.o : %.S $(HFILES) Makefile
149
	$(AS) -o $@ $<
150
	$(AS) -o $@ $<
150
 
151
 
151
fwblob.o:  fwblob.asm $(FW_BINS) Makefile
152
fwblob.o:  fwblob.asm $(FW_BINS) Makefile
152
	$(FASM) $< $@
153
	$(FASM) $< $@
153
 
154
 
154
 
155
 
155
clean: 
156
clean: 
156
	-rm -f */*.o
157
	-rm -f */*.o
157
 
158
 
158
fwblob.o:>
159
fwblob.o:>
159
 
160
 
160
%.o>
161
%.o>