Subversion Repositories Kolibri OS

Rev

Rev 5354 | Rev 6132 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1.  
  2. CC = kos32-gcc
  3. FASM = fasm.exe
  4.  
  5. DEFINES  = -DDRM_DEBUG_CODE=1 -D__KERNEL__ -DCONFIG_X86_32 -DCONFIG_X86_CMPXCHG64 -DCONFIG_TINY_RCU
  6. DEFINES  += -DCONFIG_X86_L1_CACHE_SHIFT=6
  7. DEFINES += -DCONFIG_DRM_FBDEV_EMULATION -DCONFIG_DMI -DKBUILD_MODNAME=\"i915.dll\"
  8.  
  9.  
  10. DDK_TOPDIR      = /d/kos/kolibri/drivers/ddk
  11. DRV_INCLUDES    = /d/kos/kolibri/drivers/include
  12. DRM_TOPDIR      = $(CURDIR)/..
  13.  
  14. INCLUDES =      -I$(DRV_INCLUDES)       \
  15.                 -I$(DRV_INCLUDES)/asm   \
  16.                 -I$(DRV_INCLUDES)/uapi  \
  17.                 -I$(DRV_INCLUDES)/drm -I./ -I$(DRV_INCLUDES)
  18.  
  19. CFLAGS= -c -O2 $(INCLUDES) $(DEFINES) -march=i686 -msse2 -fomit-frame-pointer -fno-ident -fno-builtin-printf
  20. CFLAGS+= -mno-stack-arg-probe -mno-ms-bitfields
  21.  
  22. LIBPATH:= $(DDK_TOPDIR)
  23.  
  24. LIBS:=    -lddk -lcore -lgcc
  25.  
  26. PE_FLAGS = --major-os-version 0 --minor-os-version 7 --major-subsystem-version 0 \
  27.           --minor-subsystem-version 5 --subsystem native
  28.  
  29. LDFLAGS = -nostdlib -shared -s $(PE_FLAGS) --image-base 0\
  30.           --file-alignment 512 --section-alignment 4096
  31.  
  32.  
  33. NAME:=    i915
  34.  
  35. HFILES:=                $(DRV_INCLUDES)/linux/types.h           \
  36.                         $(DRV_INCLUDES)/linux/list.h            \
  37.                         $(DRV_INCLUDES)/linux/pci.h             \
  38.                         $(DRV_INCLUDES)/drm/drm.h               \
  39.                         $(DRV_INCLUDES)/drm/drmP.h              \
  40.                         $(DRV_INCLUDES)/drm/drm_edid.h          \
  41.                         $(DRV_INCLUDES)/drm/drm_crtc.h          \
  42.                         $(DRV_INCLUDES)/drm/drm_mode.h          \
  43.                         $(DRV_INCLUDES)/drm/drm_mm.h            \
  44.                         i915_drv.h                              \
  45.                         bitmap.h
  46.  
  47. NAME_SRC=               main.c                                  \
  48.                         pci.c                                   \
  49.                         dvo_ch7017.c                            \
  50.                         dvo_ch7xxx.c                            \
  51.                         dvo_ivch.c                              \
  52.                         dvo_ns2501.c                            \
  53.                         dvo_sil164.c                            \
  54.                         dvo_tfp410.c                            \
  55.                         i915_cmd_parser.c                       \
  56.                         i915_dma.c                              \
  57.                         i915_drv.c                              \
  58.                         i915_gem.c                              \
  59.                         i915_gem_batch_pool.c                   \
  60.                         i915_gem_context.c                      \
  61.                         i915_gem_execbuffer.c                   \
  62.                         i915_gem_fence.c                        \
  63.                         i915_gem_evict.c                        \
  64.                         i915_gem_gtt.c                          \
  65.                         i915_gem_render_state.c                 \
  66.                         i915_gem_stolen.c                       \
  67.                         i915_gem_tiling.c                       \
  68.                         i915_gpu_error.c                        \
  69.                         i915_guc_submission.c                   \
  70.                         i915_irq.c                              \
  71.                         i915_params.c                           \
  72.                         i915_vgpu.c                             \
  73.                         intel_atomic.c                          \
  74.                         intel_atomic_plane.c                    \
  75.                         intel_audio.c                           \
  76.                         intel_bios.c                            \
  77.                         intel_csr.c                             \
  78.                         intel_crt.c                             \
  79.                         intel_ddi.c                             \
  80.                         intel_display.c                         \
  81.                         intel_dp.c                              \
  82.                         intel_dp_mst.c                          \
  83.                         intel_dsi.c                             \
  84.                         intel_dsi_cmd.c                         \
  85.                         intel_dsi_panel_vbt.c                   \
  86.                         intel_dsi_pll.c                         \
  87.                         intel_dvo.c                             \
  88.                         intel_fbc.c                             \
  89.                         intel_fbdev.c                           \
  90.                         intel_fifo_underrun.c                   \
  91.                         intel_frontbuffer.c                     \
  92.                         intel_guc_loader.c                      \
  93.                         intel_hdmi.c                            \
  94.                         intel_i2c.c                             \
  95.                         intel_lrc.c                             \
  96.                         intel_lvds.c                            \
  97.                         intel_mocs.c                            \
  98.                         intel_modes.c                           \
  99.                         intel_panel.c                           \
  100.                         intel_pm.c                              \
  101.                         intel_psr.c                             \
  102.                         intel_renderstate_gen6.c                \
  103.                         intel_renderstate_gen7.c                \
  104.                         intel_renderstate_gen8.c                \
  105.                         intel_renderstate_gen9.c                \
  106.                         intel_ringbuffer.c                      \
  107.                         intel_runtime_pm.c                      \
  108.                         intel_sdvo.c                            \
  109.                         intel_sideband.c                        \
  110.                         intel_sprite.c                          \
  111.                         intel_uncore.c                          \
  112.                         kms_display.c                           \
  113.                         utils.c                                 \
  114.                         fwblob.asm                              \
  115.                         ../hdmi.c                               \
  116.                         Gtt/intel-agp.c                         \
  117.                         Gtt/intel-gtt.c                         \
  118.                         ../drm_cache.c                          \
  119.                         ../drm_global.c                         \
  120.                         ../drm_drv.c                            \
  121.                         ../drm_vma_manager.c                    \
  122.                         $(DRM_TOPDIR)/i2c/i2c-core.c            \
  123.                         $(DRM_TOPDIR)/i2c/i2c-algo-bit.c        \
  124.                         $(DRM_TOPDIR)/drm_crtc.c                \
  125.                         $(DRM_TOPDIR)/drm_crtc_helper.c         \
  126.                         $(DRM_TOPDIR)/drm_dp_helper.c           \
  127.                         ../drm_dp_mst_topology.c                \
  128.                         $(DRM_TOPDIR)/drm_atomic.c              \
  129.                         $(DRM_TOPDIR)/drm_atomic_helper.c       \
  130.                         $(DRM_TOPDIR)/drm_bridge.c              \
  131.                         $(DRM_TOPDIR)/drm_edid.c                \
  132.                         $(DRM_TOPDIR)/drm_fb_helper.c           \
  133.                         $(DRM_TOPDIR)/drm_gem.c                 \
  134.                         $(DRM_TOPDIR)/drm_irq.c                 \
  135.                         $(DRM_TOPDIR)/drm_mipi_dsi.c            \
  136.                         $(DRM_TOPDIR)/drm_mm.c                  \
  137.                         $(DRM_TOPDIR)/drm_modes.c               \
  138.                         $(DRM_TOPDIR)/drm_modeset_lock.c        \
  139.                         $(DRM_TOPDIR)/drm_pci.c                 \
  140.                         $(DRM_TOPDIR)/drm_panel.c               \
  141.                         $(DRM_TOPDIR)/drm_plane_helper.c        \
  142.                         $(DRM_TOPDIR)/drm_probe_helper.c        \
  143.                         $(DRM_TOPDIR)/drm_rect.c                \
  144.                         $(DRM_TOPDIR)/drm_stub.c
  145.  
  146. SRC_DEP:=    
  147.  
  148.  
  149. NAME_OBJS = $(patsubst %.S, %.o, $(patsubst %.asm, %.o,\
  150.             $(patsubst %.c, %.o, $(NAME_SRC))))
  151.  
  152.  
  153. all: $(NAME).dll
  154.  
  155. $(NAME).dll: $(NAME_OBJS) $(FW_BINS) $(SRC_DEP) i915.lds Makefile
  156.         ld -L$(LIBPATH) $(LDFLAGS) -T i915.lds -o $@ $(NAME_OBJS) $(LIBS)  
  157.  
  158.  
  159. %.o : %.c $(HFILES) Makefile
  160.         $(CC) $(CFLAGS) -o $@ $<
  161.  
  162. %.o : %.S $(HFILES) Makefile
  163.         as -o $@ $<
  164.  
  165. fwblob.o:  fwblob.asm $(FW_BINS) Makefile
  166.         $(FASM) $< $@
  167.  
  168.  
  169. clean:
  170.         -rm -f ../*/*.o
  171.  
  172.  
  173.