|
|
1.1 root 1: # Makefile for cygwin beta 20 compiler
2: #
3: # If you want or need to change something herein, please look
4: # below for the 'User Config Section'
5:
6:
7: ########################################################################
8: # *** User Config Section ***
9: # Here you can look for settings to change if the code refuses to compile
10: # out of the box. There are so many different systems. So many versions
11: # of compilers. So many different bugs. :(
12: #
13: # Select compiler
14: CC=gcc
15: #
16: # If cpu specific optimization fails, uncomment the empty CPUFLAGS line to
17: # switch it off - there are some gas versions around that don't like the
18: # cpu specific asm instructions in dmsdos...
19: # There's no way to detect this automatically in _all_ Win32 OS versions
20: CPUFLAGS= -DCPU=486 -m486 -DUSE_ASM
21: #CPUFLAGS=
22: #
23: # Some gnu assembler versions have a bug in the syntax for the xlat
24: # instruction. This enables a workaround. It should only be needed for very
25: # old binutils versions. I don't know for which ones :(
26: # CPUFLAGS+= -DGAS_XLAT_BUG
27: #
28: # CFLAGS for the dmsdos library
29: # note: some macro expansions require at least -O
30: # cygwin seems to have neither flock nor sopen support (Uuhhh....)
31: # well it's bad to compile code without file locking but we have no choice
32: #LCFLAGS= -Wall -O -ggdb -D__DMSDOS_LIB__ -DUSE_FLOCK
33: LCFLAGS= -Wall -O -ggdb -D__DMSDOS_LIB__
34: LCFLAGS+= $(CPUFLAGS) $(LIBC6FLAGS)
35: # uncomment the next line if you want a shared library
36: # does not work yet under win32
37: # LIB_SHARED = 1
38: #
39: #
40: # Okay, that's the end of the User Config Section.
41: ##########################################################################
42:
43: ##########################################################################
44: # The rest of this file are rules how to build which programs.
45:
46: all: dmsdos-config.h $(LIBDMSDOS) dcread dmsdosfsck mcdmsdos
47:
48: dmsdos-config.h:
49: bash Configure
50:
51: config:
52: bash Configure
53:
54: clean:
55: rm -f *.o *.a *.i *.s *.lo *.do *.so *.so.* dutil dmsdosd dcread \
56: dmsdosfsck cvftest cvflist mcdmsdos
57:
58: dep:
59:
60: mrproper: clean
61: rm -f core *~ depend
62: rm -f .config* dmsdos-config.h .menuconfig*
63:
64:
65: LIB_OBJS = lib_interface.lo dblspace_interface.lo dblspace_dec.lo \
66: dblspace_compr.lo dblspace_methsq.lo dblspace_alloc.lo \
67: dblspace_chk.lo dblspace_tables.lo dstacker_compr.lo \
68: dstacker_dec.lo dstacker_alloc.lo
69:
70: $(LIB_OBJS): dmsdos.h dmsdos-config.h lib_interface.h
71:
72: ifndef LIB_SHARED
73:
74: LIBDMSDOS = libdmsdos.a
75:
76: %.lo: %.c ; $(CC) -o $@ $(LCFLAGS) -c $<
77:
78: $(LIBDMSDOS): $(LIB_OBJS)
79: ar rcs $(LIBDMSDOS) $^
80: ranlib $(LIBDMSDOS)
81:
82: else
83:
84: %.lo: %.c ; $(CC) --shared -o $@ $(LCFLAGS) -c $<
85:
86: LIBDMSDOS = libdmsdos.so.0.9.2
87:
88: $(LIBDMSDOS): $(LIB_OBJS)
89: ld --shared --soname=$(LIBDMSDOS) -o $(LIBDMSDOS) $^
90: ln -s $(LIBDMSDOS) libdmsdos.so
91:
92: endif
93:
94: dcread: dcread.c $(LIBDMSDOS) dmsdos.h dmsdos-config.h
95: $(CC) -Wall -ggdb -o dcread dcread.c -L. -ldmsdos
96:
97: mcdmsdos: mcdmsdos.c $(LIBDMSDOS) dmsdos.h dmsdos-config.h
98: $(CC) -Wall -ggdb -o mcdmsdos mcdmsdos.c -L. -ldmsdos
99:
100: dmsdosfsck: dmsdosfsck.c $(LIBDMSDOS) dmsdos.h dmsdos-config.h
101: $(CC) -Wall -o dmsdosfsck dmsdosfsck.c -L. -ldmsdos
102:
103:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.