2 rem ****************************************************************************
3 rem * Script to create an MSVC++ LIB and relocatable DLL from *.cxx files
7 rem * mklibs export : ROOT loadable DLL and export LIB are created
8 rem * mklibs full : ROOT loadable DLL and full LIB version are created
12 rem * 1) "mklibs export" is the default, enabling ROOT loadable library creation
13 rem * via 'double clicking'.
15 rem * 2) Providing unsupported options results in displaying the help info.
17 rem * This script creates rwa98.lib and rwa98.dll from all .h and .cxx files
18 rem * in the current directory.
20 rem * In view of the ROOTCINT processing, the following two standard files
21 rem * are always required :
23 rem * RWA98Headers.h : containing an include of all .h files
24 rem * RWA98LinkDef.h : containing the #pragma's to define all classes
26 rem * --- NvE 04-apr-2000 UU-SAP Utrecht
27 rem ****************************************************************************
30 echo === Automatic ROOT library production of files rwa98.lib and rwa98.dll ===
33 set alice=c:\nick\cxx\source\alice\AliRoot\RALICE
35 rem --- The option strings for MSVC++ DLL compilation and linking ---
36 set mscomp=/nologo /c /TP /Ze /MD /GR /GX /I%ROOTSYS%\include /I%alice%
37 set msdll=/nologo /TP /Ze /MD /LD /GD /GR /GX /I%ROOTSYS%\include /I%alice%
38 set mslink=/ENTRY:_DllMainCRTStartup@12 %ROOTSYS%\lib\*.lib %MYLIBS%\*.lib
40 if "%1" == "" goto export
41 if "%1" == "export" goto export
42 if "%1" == "full" goto full
44 rem --- Displaying of the help info ---
45 echo ****************************************************************************
46 echo * Script to create an MSVC++ LIB and relocatable DLL from *.cxx files
50 echo * mklibs export : ROOT loadable DLL and export LIB are created
51 echo * mklibs full : ROOT loadable DLL and full LIB version are created
55 echo * 1) "mklibs export" is the default, enabling ROOT loadable library creation
56 echo * via 'double clicking'.
57 echo * 2) Providing unsupported options results in displaying the help info.
59 echo * This script creates rwa98.lib and rwa98.dll from all .h and .cxx files
60 echo * in the current directory.
62 echo * In view of the ROOTCINT processing, the following two standard files
63 echo * are always required :
65 echo * RWA98Headers.h : containing an include of all .h files
66 echo * RWA98LinkDef.h : containing the #pragma's to define all classes
67 echo ****************************************************************************
71 echo *** Creation of ROOT loadable export libraries
73 rem --- Creation of ROOT dictionary ---
74 rootcint zzzrwa98dict.cxx -c -Ic:/nick/cxx/source/alice/AliRoot/RALICE RWA98Headers.h RWA98LinkDef.h
75 rem --- Compilation step ---
77 rem --- Creation of the export LIB ---
78 bindexplib rwa98 *.obj > rwa98.def
79 lib /nologo /machine:IX86 *.obj /def:rwa98.def /out:rwa98.lib
80 rem --- Creation of the DLL ---
81 link /nologo /machine:IX86 /DLL *.obj rwa98.exp %mslink% /OUT:rwa98.dll
87 echo *** Creation of ROOT loadable full version libraries
89 rem --- Creation of ROOT dictionary ---
90 rootcint zzzrwa98dict.cxx -c -Ic:/nick/cxx/source/alice/AliRoot/RALICE RWA98Headers.h RWA98LinkDef.h
91 rem --- Creation of the DLL ---
92 cl %msdll% *.cxx /link %mslink% /OUT:rwa98.dll
93 rem --- Creation of the full version LIB ---
94 lib /nologo /machine:IX86 *.obj /out:rwa98.lib
98 rem --- Delete all intermediate files ---
104 echo *** mklibs done.
108 rem --- End of script ---