################################################# # # # MBSTRING Directory Makefile # # # ################################################# ################################################# # # # Macros defining the C compiler and its flags # # # ################################################# # Common objects COMM_O= \ $(LIBC)\mbcsinit.obj \ $(LIBC)\mbascii0.obj \ ..\mbascii1.obj \ \ $(LIBC)\ismbbyt.obj \ $(LIBC)\mbbtype.obj \ $(LIBC)\mbsbtyp.obj \ $(LIBC)\mbscat.obj \ $(LIBC)\mbschr.obj \ $(LIBC)\mbscmp.obj \ $(LIBC)\mbscpy.obj \ $(LIBC)\mbscspn.obj \ $(LIBC)\mbsdec.obj \ $(LIBC)\mbsdup.obj \ $(LIBC)\mbsicmp.obj \ $(LIBC)\mbsinc.obj \ $(LIBC)\mbslen.obj \ $(LIBC)\mbslwr.obj \ $(LIBC)\mbsnbcn.obj \ $(LIBC)\mbsncat.obj \ $(LIBC)\mbsnccn.obj \ $(LIBC)\mbsncmp.obj \ $(LIBC)\mbsncpy.obj \ $(LIBC)\mbsnext.obj \ $(LIBC)\mbsnicm.obj \ $(LIBC)\mbsninc.obj \ $(LIBC)\mbsnset.obj \ $(LIBC)\mbsrchr.obj \ $(LIBC)\mbsrev.obj \ $(LIBC)\mbsset.obj \ $(LIBC)\mbsspn.obj \ $(LIBC)\mbsspnp.obj \ $(LIBC)\mbspbrk.obj \ $(LIBC)\mbsstr.obj \ $(LIBC)\mbstok.obj \ $(LIBC)\mbsupr.obj \ \ $(LIBC)\strdec.obj \ $(LIBC)\strinc.obj \ $(LIBC)\strncnt.obj \ $(LIBC)\strspnp.obj \ $(LIBC)\strnext.obj \ $(LIBC)\strninc.obj \ \ $(LIBC)\ismbalph.obj \ $(LIBC)\ismbdgt.obj \ $(LIBC)\ismblgl.obj \ $(LIBC)\ismblwr.obj \ $(LIBC)\ismbprn.obj \ $(LIBC)\ismbspc.obj \ $(LIBC)\ismbupr.obj \ \ $(LIBC)\mbtolwr.obj \ $(LIBC)\mbtoupr.obj \ \ $(LIBC)\ismbknj.obj \ $(LIBC)\tojisjms.obj \ $(LIBC)\mbclevel.obj \ $(LIBC)\mbtohira.obj \ $(LIBC)\mbtokata.obj \ \ $(LIBC)\tombbmbc.obj # The following functions are Kanji specific, but at this time, the build # process will not allow a switch: # ismbknj.obj # tojisjms.obj # mbclevel.obj # mbtohira.obj # mbtokata.obj LIBH_O= \ $(LIBC)\fismbbyt.obj \ $(LIBC)\fmbbtype.obj \ $(LIBC)\fmbsbtyp.obj \ $(LIBC)\fmbscat.obj \ $(LIBC)\fmbschr.obj \ $(LIBC)\fmbscmp.obj \ $(LIBC)\fmbscpy.obj \ $(LIBC)\fmbscspn.obj \ $(LIBC)\fmbsdec.obj \ $(LIBC)\fmbsdup.obj \ $(LIBC)\fmbsicmp.obj \ $(LIBC)\fmbsinc.obj \ $(LIBC)\fmbslen.obj \ $(LIBC)\fmbslwr.obj \ $(LIBC)\fmbsnbcn.obj \ $(LIBC)\fmbsncat.obj \ $(LIBC)\fmbsnccn.obj \ $(LIBC)\fmbsncmp.obj \ $(LIBC)\fmbsncpy.obj \ $(LIBC)\fmbsnext.obj \ $(LIBC)\fmbsnicm.obj \ $(LIBC)\fmbsninc.obj \ $(LIBC)\fmbsnset.obj \ $(LIBC)\fmbsrchr.obj \ $(LIBC)\fmbsrev.obj \ $(LIBC)\fmbsset.obj \ $(LIBC)\fmbsspn.obj \ $(LIBC)\fmbsspnp.obj \ $(LIBC)\fmbspbrk.obj \ $(LIBC)\fmbsstr.obj \ $(LIBC)\fmbstok.obj \ $(LIBC)\fmbsupr.obj \ \ $(LIBC)\fstrdec.obj \ $(LIBC)\fstrinc.obj \ $(LIBC)\fstrncnt.obj \ $(LIBC)\fstrnext.obj \ $(LIBC)\fstrninc.obj \ $(LIBC)\fstrspnp.obj # DOS 3.x objects DOS_O= \ $(LIBC)\dos\mbctype.obj # Model-Independent Objects not specially built for libhcrt MI_O= \ ####### OS/2 BEGIN ####### # OS/2 objects OS2_O= \ $(LIBC)\os2\mbctype.obj ####### OS/2 END ####### ####### MTHREAD BEGIN ####### # Multi-Thread and CRTDLL objects MTCRT_O= \ # $(LIBC)\mbstok.obj \ ## Not supported yet. ## # Multi-Thread objects MT_O= # CRTDLL objects CRT_O= \ $(LIBC)\ismbbyt.obj \ # $(LIBC)\mbstok.obj \ ## Not supported yet. ## ####### MTHREAD END ####### ####### WINDOWS BEGIN ####### # Windows objects WIN_O= \ $(LIBC)\mbcsinit.obj \ $(LIBC)\mbascii0.obj \ ..\mbascii1.obj \ \ $(LIBC)\mbbtype.obj \ $(LIBC)\mbsbtyp.obj \ $(LIBC)\mbscat.obj \ $(LIBC)\mbschr.obj \ $(LIBC)\mbscmp.obj \ $(LIBC)\mbscpy.obj \ $(LIBC)\mbscspn.obj \ $(LIBC)\mbsdec.obj \ $(LIBC)\mbsdup.obj \ $(LIBC)\mbsicmp.obj \ $(LIBC)\mbsinc.obj \ $(LIBC)\mbslen.obj \ $(LIBC)\mbslwr.obj \ $(LIBC)\mbsnbcn.obj \ $(LIBC)\mbsncat.obj \ $(LIBC)\mbsnccn.obj \ $(LIBC)\mbsnext.obj \ $(LIBC)\mbsnicm.obj \ $(LIBC)\mbsninc.obj \ $(LIBC)\mbsncmp.obj \ $(LIBC)\mbsncpy.obj \ $(LIBC)\mbsnset.obj \ $(LIBC)\mbsrchr.obj \ $(LIBC)\mbsrev.obj \ $(LIBC)\mbsset.obj \ $(LIBC)\mbsspn.obj \ $(LIBC)\mbsspnp.obj \ $(LIBC)\mbspbrk.obj \ $(LIBC)\mbsstr.obj \ $(LIBC)\mbstok.obj \ $(LIBC)\mbsupr.obj \ \ $(LIBC)\strdec.obj \ $(LIBC)\strinc.obj \ $(LIBC)\strncnt.obj \ $(LIBC)\strnext.obj \ $(LIBC)\strninc.obj \ $(LIBC)\strspnp.obj \ \ $(LIBC)\ismbalph.obj \ $(LIBC)\ismbdgt.obj \ $(LIBC)\ismblwr.obj \ $(LIBC)\ismbprn.obj \ $(LIBC)\ismbspc.obj \ $(LIBC)\ismbupr.obj \ \ $(LIBC)\ismbknj.obj \ $(LIBC)\mbclevel.obj \ $(LIBC)\mbtohira.obj \ $(LIBC)\mbtokata.obj \ $(LIBC)\tojisjms.obj \ \ $(LIBC)\mbtolwr.obj \ $(LIBC)\mbtoupr.obj \ \ $(LIBC)\tombbmbc.obj # # The functions/files # ismbknj.obj # mbclevel.obj # mbtohira.obj # mbtokata.obj # tojisjms.obj # are Kanji specific, and should not be included in other natural language # builds. # WINDLL_O= ####### WINDOWS END ####### ######################################################### # # # Target Dependency listings # # # ######################################################### libc: $(COMM_O) $(DOS_O) $(OS2_O) libh: $(LIBH_O) $(MI_O) libhcrt: $(LIBH_O) ####### MTHREAD BEGIN ####### libcmt: $(MT_O) $(MTCRT_O) libccrt: $(CRT_O) $(MTCRT_O) ####### MTHREAD END ####### ####### WINDOWS BEGIN ####### libcw: $(WIN_O) $(DOS_O) libcwdll: $(WINDLL_O) ####### WINDOWS END ####### ######################################################### # # # Dependencies and rules for making local objects # # # ######################################################### # Note: Some of the obj names are abbreviated so that # "f" versions will fit in the 8.3 filename space. # # MBCS init modules # $(LIBC)\mbcsinit.obj: mbcsinit.asm $(ASMSTD) $(ASMINC)\defsegs.inc $(MM) -Fo$(LIBC)\mbcsinit.obj mbcsinit.asm $(LIBC)\mbascii0.obj: mbascii0.c $(INCLUDE)\mbdata.h $(CC) $(MEM) -Fo$(LIBC)\mbascii0.obj mbascii0.c ..\mbascii1.obj: mbascii1.c $(INCLUDE)\mbdata.h $(CC) $(MEM) -Fo..\mbascii1.obj mbascii1.c # # MBCS "is" routines # $(LIBC)\ismbalph.obj: ismbalph.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\ctype.h $(CC) $(MEM) -Fo$(LIBC)\ismbalph.obj ismbalph.c $(LIBC)\ismbdgt.obj: ismbdgt.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\ctype.h $(CC) $(MEM) -Fo$(LIBC)\ismbdgt.obj ismbdgt.c $(LIBC)\ismblwr.obj: ismblwr.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\ctype.h $(CC) $(MEM) -Fo$(LIBC)\ismblwr.obj ismblwr.c $(LIBC)\ismbprn.obj: ismbprn.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\ctype.h $(CC) $(MEM) -Fo$(LIBC)\ismbprn.obj ismbprn.c $(LIBC)\ismbspc.obj: ismbspc.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\ctype.h $(CC) $(MEM) -Fo$(LIBC)\ismbspc.obj ismbspc.c $(LIBC)\ismbupr.obj: ismbupr.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\ctype.h $(CC) $(MEM) -Fo$(LIBC)\ismbupr.obj ismbupr.c # # Kanji specific "is" routines # $(LIBC)\ismbknj.obj: ismbknj.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\ctype.h $(CC) $(MEM) -Fo$(LIBC)\ismbknj.obj ismbknj.c $(LIBC)\mbclevel.obj: mbclevel.c $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\mbclevel.obj mbclevel.c $(LIBC)\tojisjms.obj: tojisjms.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\tojisjms.obj tojisjms.c $(LIBC)\ismblgl.obj: ismblgl.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\ismblgl.obj ismblgl.c # # MBCS "to" routines # $(LIBC)\mbtolwr.obj: mbtolwr.c mbtolwr.c $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\mbtolwr.obj mbtolwr.c $(LIBC)\mbtoupr.obj: mbtoupr.c mbtoupr.c $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\mbtoupr.obj mbtoupr.c $(LIBC)\mbtohira.obj: mbtohira.c ismbknj.c $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\mbtohira.obj mbtohira.c $(LIBC)\mbtokata.obj: mbtokata.c ismbknj.c $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\mbtokata.obj mbtokata.c $(LIBC)\tombbmbc.obj: tombbmbc.c $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\tombbmbc.obj tombbmbc.c # # MBCS string routines # $(LIBC)\$(F)ismbbyt.obj: ismbbyte.asm $(ASMSTD) $(MM) -Fo$(LIBC)\$(F)ismbbyt.obj ismbbyte.asm $(LIBC)\$(F)mbbtype.obj: mbbtype.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbbtype.obj mbbtype.c $(LIBC)\$(F)mbsbtyp.obj: mbsbtype.c $(INCLUDE)\mbstring.h $(INCLUDE)\mbctype.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsbtyp.obj mbsbtype.c $(LIBC)\$(F)mbscat.obj: mbscat.asm $(ASMSTD) $(MM) -Fo$(LIBC)\$(F)mbscat.obj mbscat.asm $(LIBC)\$(F)mbschr.obj: mbschr.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbschr.obj mbschr.c $(LIBC)\$(F)mbscmp.obj: mbscmp.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbscmp.obj mbscmp.c $(LIBC)\$(F)mbscpy.obj: mbscpy.asm $(ASMSTD) $(MM) -Fo$(LIBC)\$(F)mbscpy.obj mbscpy.asm $(LIBC)\$(F)mbscspn.obj: mbscspn.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbscspn.obj mbscspn.c $(LIBC)\$(F)mbsdec.obj: mbsdec.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsdec.obj mbsdec.c $(LIBC)\$(F)mbsdup.obj: mbsdup.asm $(ASMSTD) $(MM) -Fo$(LIBC)\$(F)mbsdup.obj mbsdup.asm $(LIBC)\$(F)mbsicmp.obj: mbsicmp.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsicmp.obj mbsicmp.c $(LIBC)\$(F)mbsinc.obj: mbsinc.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsinc.obj mbsinc.c $(LIBC)\$(F)mbslen.obj: mbslen.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbslen.obj mbslen.c $(LIBC)\$(F)mbslwr.obj: mbslwr.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbslwr.obj mbslwr.c $(LIBC)\$(F)mbsncat.obj: mbsncat.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsncat.obj mbsncat.c $(LIBC)\$(F)mbsnbcn.obj: mbsnbcnt.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsnbcn.obj mbsnbcnt.c $(LIBC)\$(F)mbsnccn.obj: mbsnccnt.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsnccn.obj mbsnccnt.c $(LIBC)\$(F)mbsncmp.obj: mbsncmp.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsncmp.obj mbsncmp.c $(LIBC)\$(F)mbsncpy.obj: mbsncpy.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsncpy.obj mbsncpy.c $(LIBC)\$(F)mbsnext.obj: mbsnextc.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsnext.obj mbsnextc.c $(LIBC)\$(F)mbsnicm.obj: mbsnicmp.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsnicm.obj mbsnicmp.c $(LIBC)\$(F)mbsninc.obj: mbsninc.c $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsninc.obj mbsninc.c $(LIBC)\$(F)mbsnset.obj: mbsnset.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsnset.obj mbsnset.c $(LIBC)\$(F)mbsrchr.obj: mbsrchr.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsrchr.obj mbsrchr.c $(LIBC)\$(F)mbsrev.obj: mbsrev.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsrev.obj mbsrev.c $(LIBC)\$(F)mbsset.obj: mbsset.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsset.obj mbsset.c $(LIBC)\$(F)mbsspn.obj: mbsspn.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsspn.obj mbsspn.c $(LIBC)\$(F)mbsspnp.obj: mbsspn.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -D_RETURN_PTR -Fo$(LIBC)\$(F)mbsspnp.obj mbsspn.c $(LIBC)\$(F)mbspbrk.obj: mbscspn.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h $(CC) $(MEM) -D_RETURN_PTR -Fo$(LIBC)\$(F)mbspbrk.obj mbscspn.c $(LIBC)\$(F)mbsstr.obj: mbsstr.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(INCLUDE)\string.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsstr.obj mbsstr.c $(LIBC)\$(F)mbstok.obj: mbstok.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbstok.obj mbstok.c $(LIBC)\$(F)mbsupr.obj: mbsupr.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)mbsupr.obj mbsupr.c # # SBCS equivilent MBCS-mapped routines # $(LIBC)\$(F)strdec.obj: strdec.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)strdec.obj strdec.c $(LIBC)\$(F)strinc.obj: strinc.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)strinc.obj strinc.c $(LIBC)\$(F)strncnt.obj: strncnt.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)strncnt.obj strncnt.c $(LIBC)\$(F)strnext.obj: strnextc.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)strnext.obj strnextc.c $(LIBC)\$(F)strninc.obj: strninc.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)strninc.obj strninc.c $(LIBC)\$(F)strspnp.obj: strspnp.c $(INCLUDE)\mbctype.h $(INCLUDE)\mbstring.h \ $(INCLUDE)\stddef.h $(CC) $(MEM) -Fo$(LIBC)\$(F)strspnp.obj strspnp.c ####### DOS BEGIN ####### $(LIBC)\dos\mbctype.obj: mbctype.c $(INCLUDE)\mbctype.h $(CC) $(MEM) -Fo$(LIBC)\dos\mbctype.obj mbctype.c ####### DOS END ####### ####### OS2 BEGIN ####### $(LIBC)\os2\mbctype.obj: mbctype.c $(INCLUDE)\mbctype.h $(INCLUDE)\doscalls.h $(CC) $(MEM) -DOS2 -Fo$(LIBC)\os2\mbctype.obj mbctype.c ####### OS2 END #######