sdl

FORK: Simple Directmedia Layer
git clone https://git.neptards.moe/neptards/sdl.git
Log | Files | Refs

Makefile.os2 (5537B)


      1 # Open Watcom makefile to build SDL2.dll for OS/2
      2 # wmake -f Makefile.os2
      3 
      4 LIBNAME = SDL2
      5 VERSION = 2.0.14
      6 DESCRIPTION = Simple DirectMedia Layer 2
      7 
      8 LIBHOME = .
      9 DLLFILE = $(LIBHOME)/$(LIBNAME).dll
     10 LIBFILE = $(LIBHOME)/$(LIBNAME).lib
     11 LNKFILE = $(LIBNAME).lnk
     12 
     13 INCPATH = -I"$(%WATCOM)/h/os2" -I"$(%WATCOM)/h"
     14 INCPATH+= -Iinclude
     15 INCPATH+= -I"src/core/os2" -I"src/core/os2/geniconv"
     16 
     17 LIBM = libm.lib
     18 LIBS = mmpm2.lib libuls.lib libconv.lib $(LIBM)
     19 
     20 CFLAGS = -bt=os2 -d0 -q -bm -5s -fp5 -fpi87 -sg -oteanbmier -ei
     21 # max warnings:
     22 CFLAGS+= -wx
     23 # newer OpenWatcom versions enable W303 by default
     24 CFLAGS+= -wcd=303
     25 # building dll:
     26 CFLAGS+= -bd
     27 # the include paths :
     28 CFLAGS+= $(INCPATH)
     29 # building SDL itself (for DECLSPEC):
     30 CFLAGS+= -DBUILD_SDL
     31 
     32 # Debug options:
     33 # - debug messages from OS/2 related code to stdout:
     34 #CFLAGS+= -DOS2DEBUG
     35 # - debug messages from OS/2 code via SDL_LogDebug():
     36 #CFLAGS+= -DOS2DEBUG=2
     37 
     38 MSRCS= e_atan2.c e_exp.c e_fmod.c e_log10.c e_log.c e_pow.c e_rem_pio2.c e_sqrt.c &
     39        k_cos.c k_rem_pio2.c k_sin.c k_tan.c &
     40        s_atan.c s_copysign.c s_cos.c s_fabs.c s_floor.c s_scalbn.c s_sin.c s_tan.c
     41 
     42 SRCS = SDL.c SDL_assert.c SDL_error.c SDL_log.c SDL_dataqueue.c SDL_hints.c
     43 SRCS+= SDL_getenv.c SDL_iconv.c SDL_malloc.c SDL_qsort.c SDL_stdlib.c SDL_string.c SDL_strtokr.c SDL_crc32.c
     44 SRCS+= SDL_cpuinfo.c SDL_atomic.c SDL_spinlock.c SDL_thread.c SDL_timer.c
     45 SRCS+= SDL_rwops.c SDL_power.c
     46 SRCS+= SDL_audio.c SDL_audiocvt.c SDL_audiodev.c SDL_audiotypecvt.c SDL_mixer.c SDL_wave.c
     47 SRCS+= SDL_events.c SDL_quit.c SDL_keyboard.c SDL_mouse.c SDL_windowevents.c &
     48        SDL_clipboardevents.c SDL_dropevents.c SDL_displayevents.c SDL_gesture.c &
     49        SDL_sensor.c SDL_touch.c
     50 SRCS+= SDL_haptic.c SDL_gamecontroller.c SDL_joystick.c
     51 SRCS+= SDL_render.c yuv_rgb.c SDL_yuv.c SDL_yuv_sw.c SDL_blendfillrect.c &
     52        SDL_blendline.c SDL_blendpoint.c SDL_drawline.c SDL_drawpoint.c &
     53        SDL_render_sw.c SDL_rotate.c
     54 SRCS+= SDL_blit.c SDL_blit_0.c SDL_blit_1.c SDL_blit_A.c SDL_blit_auto.c &
     55        SDL_blit_copy.c SDL_blit_N.c SDL_blit_slow.c SDL_fillrect.c SDL_bmp.c &
     56        SDL_pixels.c SDL_rect.c SDL_RLEaccel.c SDL_shape.c SDL_stretch.c &
     57        SDL_surface.c SDL_video.c SDL_clipboard.c SDL_vulkan_utils.c SDL_egl.c
     58 
     59 SRCS+= SDL_syscond.c SDL_sysmutex.c SDL_syssem.c SDL_systhread.c SDL_systls.c
     60 SRCS+= SDL_systimer.c
     61 SRCS+= SDL_sysloadso.c
     62 SRCS+= SDL_sysfilesystem.c
     63 SRCS+= SDL_syshaptic.c SDL_sysjoystick.c
     64 SRCS+= SDL_virtualjoystick.c
     65 SRCS+= SDL_dummyaudio.c SDL_diskaudio.c
     66 SRCS+= SDL_nullvideo.c SDL_nullframebuffer.c SDL_nullevents.c
     67 SRCS+= SDL_dummysensor.c
     68 SRCS+= SDL_locale.c SDL_syslocale.c
     69 SRCS+= SDL_url.c SDL_sysurl.c
     70 
     71 SRCS+= SDL_os2.c geniconv.c os2cp.c os2iconv.c sys2utf8.c
     72 SRCS+= SDL_os2audio.c
     73 SRCS+= SDL_os2video.c SDL_os2util.c SDL_os2dive.c SDL_os2vman.c &
     74        SDL_os2mouse.c SDL_os2messagebox.c
     75 
     76 SRCS+= SDL_dynapi.c
     77 
     78 OBJS = $(SRCS:.c=.obj)
     79 MOBJS= $(MSRCS:.c=.obj)
     80 
     81 .extensions:
     82 .extensions: .lib .dll .obj .c .asm
     83 
     84 .c: ./src;./src/dynapi;./src/audio;./src/cpuinfo;./src/events;./src/file;./src/haptic;./src/joystick;./src/power;./src/render;./src/render/software;./src/sensor;./src/stdlib;./src/thread;./src/timer;./src/video;./src/video/yuv2rgb;./src/atomic;./src/audio/disk;
     85 .c: ./src/haptic/dummy;./src/joystick/dummy;./src/joystick/virtual;./src/audio/dummy;./src/video/dummy;./src/sensor/dummy;
     86 .c: ./src/core/os2;./src/core/os2/geniconv;./src/audio/os2;./src/loadso/os2;./src/filesystem/os2;./src/thread/os2;./src/timer/os2;./src/video/os2;
     87 .c: ./src/locale/;./src/locale/unix;./src/misc;./src/misc/dummy
     88 
     89 all: $(DLLFILE) $(LIBFILE) .symbolic
     90 
     91 $(DLLFILE): $(OBJS) $(LIBM) $(LNKFILE)
     92     @echo * Linking: $@
     93     wlink @$(LNKFILE)
     94 
     95 $(LIBFILE): $(DLLFILE)
     96     @echo * Creating LIB file: $@
     97     wlib -q -b -n -c -pa -s -t -zld -ii -io $* $(DLLFILE)
     98 
     99 .c.obj:
    100     wcc386 $(CFLAGS) -fo=$^@ $<
    101 
    102 SDL_syscond.obj: "src/thread/generic/SDL_syscond.c"
    103     wcc386 $(CFLAGS) -fo=$^@ $<
    104 
    105 SDL_cpuinfo.obj: SDL_cpuinfo.c
    106     wcc386 $(CFLAGS) -wcd=200 -fo=$^@ $<
    107 
    108 SDL_rwops.obj: SDL_rwops.c
    109     wcc386 $(CFLAGS) -wcd=136 -fo=$^@ $<
    110 
    111 SDL_wave.obj: SDL_wave.c
    112     wcc386 $(CFLAGS) -wcd=124 -fo=$^@ $<
    113 
    114 SDL_blendfillrect.obj: SDL_blendfillrect.c
    115     wcc386 $(CFLAGS) -wcd=200 -fo=$^@ $<
    116 
    117 SDL_blendline.obj: SDL_blendline.c
    118     wcc386 $(CFLAGS) -wcd=200 -fo=$^@ $<
    119 
    120 SDL_blendpoint.obj: SDL_blendpoint.c
    121     wcc386 $(CFLAGS) -wcd=200 -fo=$^@ $<
    122 
    123 SDL_RLEaccel.obj: SDL_RLEaccel.c
    124     wcc386 $(CFLAGS) -wcd=201 -fo=$^@ $<
    125 
    126 .c: ./src/libm;
    127 $(LIBM): $(MOBJS)
    128     wlib -q -b -n -c -pa -s -t -zld -ii -io $@ $(MOBJS)
    129 
    130 $(LNKFILE):
    131     @echo * Creating linker file: $@
    132     @%create $@
    133     @%append $@ SYSTEM os2v2_dll INITINSTANCE TERMINSTANCE
    134     @%append $@ NAME $(DLLFILE)
    135     @for %i in ($(OBJS)) do @%append $@ FILE %i
    136     @for %i in ($(LIBS)) do @%append $@ LIB %i
    137     @%append $@ OPTION QUIET
    138     @%append $@ OPTION IMPF=$(LIBHOME)/$^&.exp
    139     @%append $@ OPTION MAP=$(LIBHOME)/$^&.map
    140     @%append $@ OPTION DESCRIPTION '@$#libsdl org:$(VERSION)$#@$(DESCRIPTION)'
    141     @%append $@ OPTION ELIMINATE
    142     @%append $@ OPTION MANYAUTODATA
    143     @%append $@ OPTION OSNAME='OS/2 and eComStation'
    144     @%append $@ OPTION SHOWDEAD
    145 
    146 clean: .SYMBOLIC
    147     @ echo * Clean: $(LIBNAME)
    148     @if exist *.obj rm *.obj
    149     @if exist *.err rm *.err
    150     @if exist $(LNKFILE) rm $(LNKFILE)
    151     @if exist $(LIBM) rm $(LIBM)
    152 
    153 distclean: .SYMBOLIC clean
    154     @if exist $(LIBHOME)/*.exp rm $(LIBHOME)/*.exp
    155     @if exist $(LIBHOME)/*.map rm $(LIBHOME)/*.map
    156     @if exist $(LIBFILE) rm $(LIBFILE)
    157     @if exist $(DLLFILE) rm $(DLLFILE)