1# 2# a very simple Makefile for miniLZO 3# 4# Copyright (C) 1996-2008 Markus F.X.J. Oberhumer 5# 6 7PROGRAM = testmini 8SOURCES = testmini.c minilzo.c 9 10default: 11 @echo "Please choose one of the following targets:" 12 @echo " gcc: gcc" 13 @echo " unix: hpux hpux9" 14 @echo " win32: win32-bc win32-cygwin win32-dm win32-lccwin32" 15 @echo " win32-intelc win32-mingw win32-vc win32-watcomc" 16 @echo " dos16: dos16-bc dos16-mc dos16-wc" 17 @echo " dos32: dos32-djgpp2 dos32-wc" 18 19 20# Make sure that minilzo.h, lzoconf.h and lzodefs.h are in the 21# current dircectory. Otherwise you may want to adjust CPPFLAGS. 22##CPPFLAGS = -I../include/lzo -I. 23 24GCC_CFLAGS = -s -Wall -O2 -fomit-frame-pointer 25 26 27# 28# gcc (generic) 29# 30 31gcc: 32 gcc $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM) $(SOURCES) 33 34cc: 35 cc $(CPPFLAGS) -o $(PROGRAM) $(SOURCES) 36 37 38# 39# UNIX 40# 41 42hpux: 43 cc -Ae $(CPPFLAGS) -o $(PROGRAM) $(SOURCES) 44 45hpux9: 46 cc -Aa -D_HPUX_SOURCE $(CPPFLAGS) -o $(PROGRAM) $(SOURCES) 47 48 49# 50# Windows (32-bit) 51# 52 53win32-borlandc win32-bc: 54 bcc32 -O2 -d -w -w-aus $(CPPFLAGS) $(SOURCES) 55 56win32-cygwin32 win32-cygwin: 57 gcc -mcygwin $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM).exe $(SOURCES) 58 59win32-digitalmars win32-dm: 60 dmc -mn -o -w- $(CPPFLAGS) $(SOURCES) 61 62win32-intelc win32-ic: 63 icl -nologo -MD -W3 -O2 -GF $(CPPFLAGS) $(SOURCES) 64 65win32-lccwin32: 66 @echo "NOTE: need lcc 2002-07-25 or newer, older versions have bugs" 67 lc -A -unused -O $(CPPFLAGS) $(SOURCES) 68 69win32-mingw32 win32-mingw: 70 gcc -mno-cygwin $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM).exe $(SOURCES) 71 72win32-visualc win32-vc: 73 cl -nologo -MD -W3 -O2 -GF $(CPPFLAGS) $(SOURCES) 74 75win32-watcomc win32-wc: 76 wcl386 -bt=nt -zq -mf -5r -zc -w5 -oneatx $(CPPFLAGS) $(SOURCES) 77 78 79# 80# DOS (16-bit) 81# 82 83dos16-borlandc dos16-bc: 84 bcc -ml -w -d -O -4 $(CPPFLAGS) $(SOURCES) 85 86dos16-microsoftc dos16-msc dos16-mc: 87 cl -nologo -f- -AL -O -G2 -W3 $(CPPFLAGS) $(SOURCES) 88 89dos16-watcomc dos16-wc: 90 wcl -zq -ml -bt=dos -l=dos -ox -w5 $(CPPFLAGS) $(SOURCES) 91 92 93# 94# DOS (32-bit) 95# 96 97dos32-djgpp2 dos32-dj2: 98 gcc $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM).exe $(SOURCES) 99 100dos32-watcomc dos32-wc: 101 wcl386 -zq -mf -bt=dos -l=dos4g -5r -ox -zc $(CPPFLAGS) $(SOURCES) 102 103 104# 105# other targets 106# 107 108clean: 109 rm -f $(PROGRAM) $(PROGRAM).exe $(PROGRAM).map $(PROGRAM).tds 110 rm -f *.err *.o *.obj 111 112.PHONY: default clean 113 114