Makefile.os2
author Sylvain Becker <sylvain.becker@gmail.com>
Mon, 21 Jan 2019 23:41:43 +0100
changeset 12569 05aff4771d9a
parent 12425 266c5fbe0bbd
permissions -rw-r--r--
Fixed bug 4024 - GameController error "Unexpected controller element"

If mapping string is terminated with a comma, there is no more values to parse.
sezeroz@12373
     1
# Open Watcom makefile to build SDL2.dll for OS/2:
sezeroz@12373
     2
# wmake -f Makefile.os2
sezeroz@12329
     3
sezeroz@12373
     4
LIBNAME = SDL2
sezeroz@12373
     5
VERSION = 2.0.9
sezeroz@12373
     6
DESCRIPTION = Simple DirectMedia Layer 2
sezeroz@12373
     7
sezeroz@12373
     8
LIBHOME = .
sezeroz@12373
     9
LIBPATH = $(LIBHOME)/lib
sezeroz@12373
    10
DLLFILE = $(LIBHOME)/$(LIBNAME).dll
sezeroz@12373
    11
LIBFILE = $(LIBHOME)/$(LIBNAME).lib
sezeroz@12373
    12
LNKFILE = $(LIBNAME).lnk
sezeroz@12329
    13
sezeroz@12329
    14
INCPATH = -I"$(%WATCOM)/h/os2" -I"$(%WATCOM)/h"
sezeroz@12373
    15
INCPATH+= -I"$(LIBHOME)/h"
sezeroz@12329
    16
INCPATH+= -Iinclude
sezeroz@12329
    17
sezeroz@12419
    18
LIBM = libm.lib
sezeroz@12419
    19
LIBS = mmpm2.lib libuls.lib libconv.lib $(LIBM)
sezeroz@12373
    20
sezeroz@12329
    21
CFLAGS = -bt=os2 -d0 -q -bm -5s -fp5 -fpi87 -sg -oteanbmier -ei
sezeroz@12329
    22
# max warnings:
sezeroz@12329
    23
CFLAGS+= -wx
sezeroz@12329
    24
# building dll:
sezeroz@12329
    25
CFLAGS+= -bd
sezeroz@12329
    26
# the include paths :
sezeroz@12329
    27
CFLAGS+= $(INCPATH)
sezeroz@12425
    28
# building SDL itself (for DECLSPEC):
sezeroz@12329
    29
CFLAGS+= -DBUILD_SDL
sezeroz@12329
    30
sezeroz@12419
    31
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 &
sezeroz@12419
    32
       k_cos.c k_rem_pio2.c k_sin.c k_tan.c &
sezeroz@12419
    33
       s_atan.c s_copysign.c s_cos.c s_fabs.c s_floor.c s_scalbn.c s_sin.c s_tan.c
sezeroz@12419
    34
sezeroz@12329
    35
SRCS = SDL.c SDL_assert.c SDL_error.c SDL_log.c SDL_dataqueue.c SDL_hints.c
sezeroz@12329
    36
SRCS+= SDL_getenv.c SDL_iconv.c SDL_malloc.c SDL_qsort.c SDL_stdlib.c SDL_string.c
sezeroz@12329
    37
SRCS+= SDL_cpuinfo.c SDL_atomic.c SDL_spinlock.c SDL_thread.c SDL_timer.c
sezeroz@12329
    38
SRCS+= SDL_rwops.c SDL_power.c
sezeroz@12329
    39
SRCS+= SDL_audio.c SDL_audiocvt.c SDL_audiodev.c SDL_audiotypecvt.c SDL_mixer.c SDL_wave.c
sezeroz@12329
    40
SRCS+= SDL_events.c SDL_quit.c SDL_keyboard.c SDL_mouse.c SDL_windowevents.c &
sezeroz@12329
    41
       SDL_clipboardevents.c SDL_dropevents.c SDL_displayevents.c SDL_gesture.c &
sezeroz@12329
    42
       SDL_sensor.c SDL_touch.c
sezeroz@12329
    43
SRCS+= SDL_haptic.c SDL_gamecontroller.c SDL_joystick.c
sezeroz@12329
    44
SRCS+= SDL_render.c yuv_rgb.c SDL_yuv.c SDL_yuv_sw.c SDL_blendfillrect.c &
sezeroz@12329
    45
       SDL_blendline.c SDL_blendpoint.c SDL_drawline.c SDL_drawpoint.c &
sezeroz@12329
    46
       SDL_render_sw.c SDL_rotate.c
sezeroz@12329
    47
SRCS+= SDL_blit.c SDL_blit_0.c SDL_blit_1.c SDL_blit_A.c SDL_blit_auto.c &
sezeroz@12329
    48
       SDL_blit_copy.c SDL_blit_N.c SDL_blit_slow.c SDL_fillrect.c SDL_bmp.c &
sezeroz@12329
    49
       SDL_pixels.c SDL_rect.c SDL_RLEaccel.c SDL_shape.c SDL_stretch.c &
sezeroz@12329
    50
       SDL_surface.c SDL_video.c SDL_clipboard.c SDL_vulkan_utils.c SDL_egl.c
sezeroz@12329
    51
sezeroz@12329
    52
SRCS+= SDL_syscond.c SDL_sysmutex.c SDL_syssem.c SDL_systhread.c SDL_systls.c
sezeroz@12329
    53
SRCS+= SDL_systimer.c
sezeroz@12329
    54
SRCS+= SDL_sysloadso.c
sezeroz@12329
    55
SRCS+= SDL_sysfilesystem.c
sezeroz@12329
    56
SRCS+= SDL_syshaptic.c SDL_sysjoystick.c
sezeroz@12329
    57
SRCS+= SDL_dummyaudio.c SDL_diskaudio.c
sezeroz@12329
    58
SRCS+= SDL_nullvideo.c SDL_nullframebuffer.c SDL_nullevents.c
sezeroz@12329
    59
SRCS+= SDL_dummysensor.c
sezeroz@12329
    60
sezeroz@12329
    61
SRCS+= SDL_dynapi.c
sezeroz@12329
    62
sezeroz@12329
    63
OBJS = $(SRCS:.c=.obj)
sezeroz@12419
    64
MOBJS= $(MSRCS:.c=.obj)
sezeroz@12329
    65
sezeroz@12331
    66
.extensions:
sezeroz@12331
    67
.extensions: .lib .dll .obj .c .asm
sezeroz@12331
    68
sezeroz@12373
    69
.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;
sezeroz@12373
    70
.c: ./src/haptic/dummy;./src/joystick/dummy;./src/audio/dummy;./src/video/dummy;./src/sensor/dummy;
sezeroz@12373
    71
.c: ./src/loadso/dummy;./src/filesystem/dummy;./src/timer/dummy;./src/thread/generic;
sezeroz@12331
    72
sezeroz@12329
    73
all: $(DLLFILE) $(LIBFILE) .symbolic
sezeroz@12329
    74
sezeroz@12419
    75
$(DLLFILE): $(OBJS) $(LIBM) $(LNKFILE)
sezeroz@12373
    76
    @echo * Linking: $@
sezeroz@12329
    77
    wlink @$(LNKFILE)
sezeroz@12329
    78
sezeroz@12373
    79
$(LIBFILE): $(DLLFILE)
sezeroz@12373
    80
    @echo * Creating LIB file: $@
sezeroz@12329
    81
    wlib -q -b -n -c -pa -s -t -zld -ii -io $* $(DLLFILE)
sezeroz@12329
    82
sezeroz@12329
    83
.c.obj:
sezeroz@12329
    84
    wcc386 $(CFLAGS) -fo=$^@ $<
sezeroz@12329
    85
sezeroz@12329
    86
SDL_cpuinfo.obj: SDL_cpuinfo.c
sezeroz@12329
    87
    wcc386 $(CFLAGS) -wcd=200 -fo=$^@ $<
sezeroz@12329
    88
sezeroz@12329
    89
SDL_rwops.obj: SDL_rwops.c
sezeroz@12329
    90
    wcc386 $(CFLAGS) -wcd=136 -fo=$^@ $<
sezeroz@12329
    91
sezeroz@12329
    92
SDL_blendfillrect.obj: SDL_blendfillrect.c
sezeroz@12329
    93
    wcc386 $(CFLAGS) -wcd=200 -fo=$^@ $<
sezeroz@12329
    94
sezeroz@12329
    95
SDL_blendline.obj: SDL_blendline.c
sezeroz@12329
    96
    wcc386 $(CFLAGS) -wcd=200 -fo=$^@ $<
sezeroz@12329
    97
sezeroz@12329
    98
SDL_blendpoint.obj: SDL_blendpoint.c
sezeroz@12329
    99
    wcc386 $(CFLAGS) -wcd=200 -fo=$^@ $<
sezeroz@12329
   100
sezeroz@12329
   101
SDL_RLEaccel.obj: SDL_RLEaccel.c
sezeroz@12329
   102
    wcc386 $(CFLAGS) -wcd=201 -fo=$^@ $<
sezeroz@12329
   103
sezeroz@12419
   104
.c: ./src/libm;
sezeroz@12419
   105
$(LIBM): $(MOBJS)
sezeroz@12419
   106
    wlib -q -b -n -c -pa -s -t -zld -ii -io $@ $(MOBJS)
sezeroz@12419
   107
sezeroz@12329
   108
$(LNKFILE):
sezeroz@12373
   109
    @echo * Creating linker file: $@
sezeroz@12329
   110
    @%create $@
sezeroz@12329
   111
    @%append $@ SYSTEM os2v2_dll INITINSTANCE TERMINSTANCE
sezeroz@12329
   112
    @%append $@ NAME $(DLLFILE)
sezeroz@12329
   113
    @for %i in ($(OBJS)) do @%append $@ FILE %i
sezeroz@12373
   114
    @%append $@ LIBPATH $(%LIB);$(LIBPATH)
sezeroz@12373
   115
    @for %i in ($(LIBS)) do @%append $@ LIB %i
sezeroz@12329
   116
    @%append $@ OPTION QUIET
sezeroz@12373
   117
    @%append $@ OPTION IMPF=$(LIBHOME)/$^&.exp
sezeroz@12373
   118
    @%append $@ OPTION MAP=$(LIBHOME)/$^&.map
sezeroz@12373
   119
    @%append $@ OPTION DESCRIPTION '@$#libsdl org:$(VERSION)$#@$(DESCRIPTION)'
sezeroz@12329
   120
    @%append $@ OPTION QUIET
sezeroz@12329
   121
    @%append $@ OPTION ELIMINATE
sezeroz@12329
   122
    @%append $@ OPTION MANYAUTODATA
sezeroz@12329
   123
    @%append $@ OPTION OSNAME='OS/2 and eComStation'
sezeroz@12329
   124
    @%append $@ OPTION SHOWDEAD
sezeroz@12329
   125
sezeroz@12329
   126
clean: .SYMBOLIC
sezeroz@12329
   127
    @ echo * Clean: $(LIBNAME)
sezeroz@12329
   128
    @if exist *.obj rm *.obj
sezeroz@12329
   129
    @if exist *.err rm *.err
sezeroz@12329
   130
    @if exist $(LNKFILE) rm $(LNKFILE)
sezeroz@12419
   131
    @if exist $(LIBM) rm $(LIBM)
sezeroz@12329
   132
sezeroz@12329
   133
distclean: .SYMBOLIC clean
sezeroz@12373
   134
    @if exist $(LIBHOME)/*.exp rm $(LIBHOME)/*.exp
sezeroz@12373
   135
    @if exist $(LIBHOME)/*.map rm $(LIBHOME)/*.map
sezeroz@12373
   136
    @if exist $(LIBFILE) rm $(LIBFILE)
sezeroz@12329
   137
    @if exist $(DLLFILE) rm $(DLLFILE)