Changeset 15530

Show
Ignore:
Timestamp:
16.05.2008 11:34:35 (11 years ago)
Author:
mdewsnip
Message:

Big tidy up of win32.mak file; some stuff still to come (e.g. local library compilation).

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • gsdl/trunk/src/recpt/win32.mak

    r15424 r15530  
    66# University of Waikato, New Zealand. 
    77# 
    8 # Copyright (C) 1999  The New Zealand Digital Library Project 
     8# Copyright (C) 1999-2008  The New Zealand Digital Library Project 
    99# 
    1010# 
     
    2525########################################################################### 
    2626 
    27 GSDLHOME = ..\.. 
     27GSDL_DIR = ..\.. 
     28INDEXERS_DIR = $(GSDL_DIR)\indexers 
     29COLSERVR_DIR = $(GSDL_DIR)\src\colservr 
     30PROTOCOL_DIR = $(GSDL_DIR)\src\protocol 
     31Z3950_DIR = $(GSDL_DIR)\src\z3950 
     32 
     33 
    2834GSDL_VC4 = 0 
    2935LOCAL_LIBRARY = 0 
     
    3339ENABLE_ACCENTFOLD = 1 
    3440 
    35 STLPATH = "$(GSDLHOME)\packages\windows\stlport\stlport" 
    36  
    37 # YAZ kit for z39.50 
    38 YAZDIR=$(GSDLHOME)\packages\yaz\yaz-2.1.4 
    39  
    40 AR = lib 
    41 CC = cl 
     41STLPATH = "$(GSDL_DIR)\packages\windows\stlport\stlport" 
     42 
    4243 
    4344!IF $(GSDL_VC4) 
     
    5556!ENDIF 
    5657 
    57 LDFLAGS =  
    58  
    59 DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE -DGSDL_NOCACHE 
    60 INCLUDES = -I"$(GSDLHOME)\src\recpt" -I"$(GSDLHOME)\lib" -I"$(GSDLHOME)\src\colservr" \ 
    61        -I"$(GSDLHOME)\indexers\mg" -I"$(GSDLHOME)\indexers\mg\lib" \ 
    62        -I"$(GSDLHOME)\indexers\mg\src\text" -I"$(GSDLHOME)\packages\windows\gdbm\gdbm" \ 
    63        -I"$(GSDLHOME)\packages\windows\crypt\crypt" -I"$(GSDLHOME)\indexers\mgpp\lib" \ 
    64        -I"$(GSDLHOME)\indexers\mgpp\text" -I"$(GSDLHOME)" 
    65 !IF $(GSDL_VC4) 
    66 DEFS = $(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS 
    67 INCLUDES = $(INCLUDES) -I$(STLPATH) 
    68 !ENDIF 
    69 !IF $(LOCAL_LIBRARY) 
    70 DEFS = $(DEFS) -DGSDL_LOCAL_LIBRARY 
    71 !ENDIF 
    72  
    7358!IF $(ENABLE_ACCENTFOLD) 
    74 AFLIBS = "$(GSDLHOME)\indexers\packages\unac\libunac.lib" "$(GSDLHOME)\indexers\packages\unac\iconv.lib" 
    75 DEFS = $(DEFS) -DENABLE_ACCENTFOLD 
    76 !ELSE 
    77 AFLIBS =  
    78 !ENDIF 
    79  
    80 LIBS = "$(GSDLHOME)\packages\windows\gdbm\gdbm\gdbm.lib" \ 
    81        "$(GSDLHOME)\packages\windows\crypt\crypt\crypt.lib" \ 
    82        "$(GSDLHOME)\src\colservr\gsdlcolservr.lib" \ 
    83        "$(GSDLHOME)\lib\gsdllib.lib" \ 
    84        "$(GSDLHOME)\indexers\mg\src\text\libmgtext.lib" \ 
    85        "$(GSDLHOME)\indexers\mg\lib\libmglib.lib" \ 
    86        "$(GSDLHOME)\indexers\mgpp\text\libmgpptext.lib" \ 
    87        "$(GSDLHOME)\indexers\mgpp\lib\libmgpplib.lib" \ 
    88        "$(GSDLHOME)\packages\windows\expat\expat\libexpat.lib" \ 
    89     $(AFLIBS) 
     59ACCENTFOLD_LIBS = "$(INDEXERS_DIR)\packages\unac\libunac.lib" "$(INDEXERS_DIR)\packages\unac\iconv.lib" 
     60!ELSE 
     61ACCENTFOLD_LIBS =  
     62!ENDIF 
    9063 
    9164!IF $(USE_Z3950) 
     
    10376!ENDIF 
    10477 
     78 
     79AR = lib 
     80CC = cl 
     81DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE -DGSDL_NOCACHE 
     82INCLUDES = -I. -I"$(GSDL_DIR)" -I"$(GSDL_DIR)\lib" -I"$(COLSERVR_DIR)" -I"$(PROTOCOL_DIR)" \ 
     83    -I"$(INDEXERS_DIR)\mg" -I"$(INDEXERS_DIR)\mg\lib" -I"$(INDEXERS_DIR)\mgpp\text" \ 
     84    -I"$(GSDL_DIR)\packages\windows\crypt\crypt" -I"$(GSDL_DIR)\packages\windows\expat\expat" \ 
     85    -I"$(GSDL_DIR)\packages\windows\gdbm\gdbm" $(Z3950_INCLUDES) 
     86LDFLAGS =  
     87LIBS = "$(GSDL_DIR)\packages\windows\crypt\crypt\crypt.lib" "$(GSDL_DIR)\packages\windows\expat\expat\libexpat.lib" \ 
     88        "$(GSDL_DIR)\packages\windows\gdbm\gdbm\gdbm.lib" $(ACCENTFOLD_LIBS) $(Z3950_LIBS) 
     89 
     90!IF $(GSDL_VC4) 
     91DEFS = $(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS 
     92INCLUDES = $(INCLUDES) -I$(STLPATH) 
     93!ENDIF 
     94!IF $(LOCAL_LIBRARY) 
     95DEFS = $(DEFS) -DGSDL_LOCAL_LIBRARY 
     96!ENDIF 
     97 
     98 
    10599COMPILE = $(CC) -nologo -c $(CPPFLAGS) $(DEFS) $(INCLUDES) 
    106100LINK = $(CC) -nologo -Fe"$@"  
    107101 
     102 
    108103.SUFFIXES: 
    109 .SUFFIXES: .c .obj 
    110 .c.obj: 
    111     $(COMPILE) $< 
    112  
    113104.SUFFIXES: .cpp .obj 
    114105.cpp.obj: 
     
    116107 
    117108 
    118 COMMONHEADERS = receptionist.h cgiargs.h action.h browserclass.h \ 
    119                 converter.h maincfg.h cgiutils.h recptprototools.h browsetoolsclass.h \ 
    120         statusaction.h pageaction.h recptproto.h pingaction.h \ 
    121         queryaction.h documentaction.h extlinkaction.h htmlutils.h \ 
    122         querytools.h formattools.h tipaction.h authenaction.h \ 
    123                 userdb.h usersaction.h vlistbrowserclass.h hlistbrowserclass.h \ 
    124         datelistbrowserclass.h invbrowserclass.h pagedbrowserclass.h \ 
    125         htmlbrowserclass.h historydb.h phindbrowserclass.h collectoraction.h \ 
    126         nullproto.h argdb.h browseaction.h browseactiontools.h phindaction.h \ 
    127         summarise.h highlighttext.h configaction.h wizardaction.h depositoraction.h 
    128  
    129 CGIHEADERS = cgiwrapper.h 
    130  
    131 HEADERS = $(COMMONHEADERS) $(CGIHEADERS) 
    132  
    133  
    134 COMMONSOURCES = receptionist.cpp cgiargs.cpp action.cpp browserclass.cpp \ 
    135                 converter.cpp maincfg.cpp cgiutils.cpp recptprototools.cpp browsetoolsclass.cpp \ 
    136         statusaction.cpp pageaction.cpp \ 
    137         recptproto.cpp pingaction.cpp queryaction.cpp documentaction.cpp \ 
    138         extlinkaction.cpp htmlutils.cpp querytools.cpp formattools.cpp \ 
    139         tipaction.cpp authenaction.cpp userdb.cpp usersaction.cpp \ 
    140         vlistbrowserclass.cpp hlistbrowserclass.cpp datelistbrowserclass.cpp \ 
    141         invbrowserclass.cpp pagedbrowserclass.cpp htmlbrowserclass.cpp \ 
    142         historydb.cpp phindbrowserclass.cpp collectoraction.cpp nullproto.cpp \ 
    143         argdb.cpp browseaction.cpp browseactiontools.cpp phindaction.cpp \ 
    144         summarise.cpp highlighttext.cpp configaction.cpp wizardaction.cpp \ 
    145             depositoraction.cpp 
    146  
    147 CGISOURCES = librarymain.cpp cgiwrapper.cpp 
    148  
    149 SOURCES = $(COMMONSOURCES) $(CGISOURCES) 
    150  
    151  
    152 COMMONOBJECTS = receptionist.obj cgiargs.obj action.obj browserclass.obj \ 
    153                 converter.obj maincfg.obj cgiutils.obj recptprototools.obj browsetoolsclass.obj \ 
    154         statusaction.obj pageaction.obj recptproto.obj \ 
    155         pingaction.obj queryaction.obj documentaction.obj extlinkaction.obj \ 
    156         htmlutils.obj querytools.obj formattools.obj tipaction.obj \ 
    157         authenaction.obj userdb.obj usersaction.obj \ 
    158         vlistbrowserclass.obj hlistbrowserclass.obj datelistbrowserclass.obj \ 
    159         invbrowserclass.obj pagedbrowserclass.obj htmlbrowserclass.obj \ 
    160         historydb.obj phindbrowserclass.obj collectoraction.obj nullproto.obj \ 
    161         argdb.obj browseaction.obj browseactiontools.obj phindaction.obj \ 
    162         summarise.obj highlighttext.obj configaction.obj wizardaction.obj \ 
    163                 depositoraction.obj $(Z3950OBJS)  
    164  
    165 CGIOBJECTS = librarymain.obj cgiwrapper.obj 
    166  
    167  
    168 OBJECTS = $(COMMONOBJECTS) $(CGIOBJECTS) 
    169  
    170 EXEC = library.exe $(Z3950EXEC) 
     109SOURCES = \ 
     110    action.cpp \ 
     111    argdb.cpp \ 
     112    authenaction.cpp \ 
     113    browseaction.cpp \ 
     114    browseactiontools.cpp \ 
     115    browserclass.cpp \ 
     116    browsetoolsclass.cpp \ 
     117    cgiargs.cpp \ 
     118    cgiutils.cpp \ 
     119    cgiwrapper.cpp \ 
     120    collectoraction.cpp \ 
     121        converter.cpp \ 
     122    datelistbrowserclass.cpp \ 
     123    depositoraction.cpp \ 
     124    documentaction.cpp \ 
     125    extlinkaction.cpp \ 
     126    formattools.cpp \ 
     127    gtiaction.cpp \ 
     128    highlighttext.cpp \ 
     129    historydb.cpp \ 
     130    hlistbrowserclass.cpp \ 
     131    htmlbrowserclass.cpp \ 
     132    htmlutils.cpp \ 
     133    invbrowserclass.cpp \ 
     134    librarymain.cpp \ 
     135    maincfg.cpp \ 
     136    pageaction.cpp \ 
     137    pagedbrowserclass.cpp \ 
     138    phindaction.cpp \ 
     139    phindbrowserclass.cpp \ 
     140    pingaction.cpp \ 
     141    queryaction.cpp \ 
     142    querytools.cpp \ 
     143    receptionist.cpp \ 
     144    recptprototools.cpp \ 
     145    statusaction.cpp \ 
     146    summarise.cpp \ 
     147    tipaction.cpp \ 
     148    userdb.cpp \ 
     149    usersaction.cpp \ 
     150    vlistbrowserclass.cpp \ 
     151    wizardaction.cpp 
     152 
     153OBJECTS = \ 
     154    action.obj \ 
     155    argdb.obj \ 
     156    authenaction.obj \ 
     157    browseaction.obj \ 
     158    browseactiontools.obj \ 
     159    browserclass.obj \ 
     160    browsetoolsclass.obj \ 
     161    cgiargs.obj \ 
     162    cgiutils.obj \ 
     163    cgiwrapper.obj \ 
     164    collectoraction.obj \ 
     165        converter.obj \ 
     166    datelistbrowserclass.obj \ 
     167    depositoraction.obj \ 
     168    documentaction.obj \ 
     169    extlinkaction.obj \ 
     170    formattools.obj \ 
     171    gtiaction.obj \ 
     172    highlighttext.obj \ 
     173    historydb.obj \ 
     174    hlistbrowserclass.obj \ 
     175    htmlbrowserclass.obj \ 
     176    htmlutils.obj \ 
     177    invbrowserclass.obj \ 
     178    librarymain.obj \ 
     179    maincfg.obj \ 
     180    pageaction.obj \ 
     181    pagedbrowserclass.obj \ 
     182    phindaction.obj \ 
     183    phindbrowserclass.obj \ 
     184    pingaction.obj \ 
     185    queryaction.obj \ 
     186    querytools.obj \ 
     187    receptionist.obj \ 
     188    recptprototools.obj \ 
     189    statusaction.obj \ 
     190    summarise.obj \ 
     191    tipaction.obj \ 
     192    userdb.obj \ 
     193    usersaction.obj \ 
     194    vlistbrowserclass.obj \ 
     195    wizardaction.obj 
     196 
     197GSDL_LIBS = \ 
     198    $(PROTOCOL_DIR)\gsdlprotocol.lib \ 
     199    $(COLSERVR_DIR)\gsdlcolservr.lib \ 
     200    "$(GSDL_DIR)\lib\gsdllib.lib" \ 
     201    "$(GSDL_DIR)\indexers\mg\src\text\libmgtext.lib" \ 
     202    "$(GSDL_DIR)\indexers\mg\lib\libmglib.lib" \ 
     203    "$(GSDL_DIR)\indexers\mgpp\text\libmgpptext.lib" \ 
     204    "$(GSDL_DIR)\indexers\mgpp\lib\libmgpplib.lib" 
     205 
     206EXECUTABLE_OBJECTS = \ 
     207    $(OBJECTS) \ 
     208    $(GSDL_LIBS) 
     209 
     210EXECUTABLE = library.exe 
     211 
     212 
     213library.exe: $(EXECUTABLE_OBJECTS) 
     214    $(LINK) $(EXECUTABLE_OBJECTS) $(LIBS) 
    171215 
    172216!IF $(LOCAL_LIBRARY) 
    173 all: gsdlrecpt.lib $(Z3950EXEC) 
    174 !ELSE 
    175 all: $(EXEC) 
    176 !ENDIF 
    177  
    178 gsdlrecpt.lib : $(COMMONOBJECTS) $(Z_CLIENTOBJS) 
    179     if EXIST gsdlrecpt.lib del gsdlrecpt.lib 
    180     $(AR) -nologo /out:gsdlrecpt.lib $(COMMONOBJECTS) $(Z_CLIENTOBJS) 
     217all: gsdlrecpt.lib 
     218!ELSE 
     219all: $(EXECUTABLE) 
     220!ENDIF 
     221 
     222!IF $(LOCAL_LIBRARY) 
     223install: 
     224!ELSE 
     225install: $(EXECUTABLE) 
     226    copy library.exe "$(GSDL_DIR)\cgi-bin" 
     227!ENDIF 
    181228 
    182229clean: 
    183230    del *.obj 
    184231    del library.exe 
    185     del z3950server.exe 
    186 !IF $(LOCAL_LIBRARY) 
    187 install: 
    188 !ELSE 
    189 install: 
    190     copy library.exe "$(GSDLHOME)\cgi-bin" 
    191 !ENDIF 
    192 !IF $(USE_Z3950) 
    193     copy z3950server.exe "$(GSDLHOME)\cgi-bin" 
    194 !ENDIF 
    195  
    196  
    197 yaz_zclient.obj: yaz_zclient.c 
    198     $(COMPILE) -I"$(YAZDIR)\include" -I"$(YAZDIR)\client" yaz_zclient.c 
    199  
    200 library.exe: $(OBJECTS) $(Z_CLIENTOBJS) 
    201          $(LINK) $(OBJECTS) $(LIBS) $(Z_LIBYAZ) $(Z_CLIENTOBJS) $(LDFLAGS) 
    202  
    203 Z3950_OBJS_OLD = $(COMMONOBJECTS) $(COLSERVROBJECTS)\ 
    204     ../colservr/z3950parser.o ../colservr/z3950explain.o \ 
    205     ../colservr/z3950_to_gsdl.o \ 
    206     ../colservr/z3950server.o nullproto.o \ 
    207     ../../lib/gsdllib.a  \ 
    208     ../../indexers/mg/src/text/libmgtext.a \ 
    209     ../../indexers/mg/lib/libmglib.a \ 
    210     $(FASTCGI_OBJS) \ 
    211     ../../indexers/mgpp/text/libmgpptext.a \ 
    212     ../../indexers/mgpp/lib/libmgpplib.a ../../packages/yaz/lib/libyaz.a ../../packages/d2m/libd2m.a 
    213  
    214 Z3950_OBJS =  "$(GSDLHOME)\src\colservr\gsdlz3950.lib" \ 
    215     "$(YAZDIR)\lib\yaz.lib" \ 
    216     "$(GSDLHOME)\packages\d2m\libd2m.lib" \ 
    217     zparse.yy.obj \ 
    218     recptproto.obj recptprototools.obj \ 
    219     nullproto.obj 
    220   
    221 z3950server.exe: $(Z3950_OBJS) 
    222     @echo building z3950server 
    223     $(LINK) $(Z3950_OBJS) $(LIBS) $(LDFLAGS) 
    224  
    225 # we want the following to always be compiled in case the status of 
    226 # GSDL_LOCAL_LIBRARY has changed 
     232 
     233 
     234# Always recompile configaction and statusaction in case GSDL_LOCAL_LIBRARY has changed 
    227235statusaction.obj: FORCE 
    228236configaction.obj: FORCE 
    229237 
    230238FORCE: 
    231