Blame Makefile.win

Packit Service eaff73
# Makefile.win for Win32 APR alone
Packit Service eaff73
#
Packit Service eaff73
# Targets are:
Packit Service eaff73
#
Packit Service eaff73
#     buildall - compile everything
Packit Service eaff73
#     checkall - run APR regression tests
Packit Service eaff73
#     install  - compile everything
Packit Service eaff73
#     clean    - mop up everything
Packit Service eaff73
#
Packit Service eaff73
# You can override the build mechanism, choose only one;
Packit Service eaff73
#
Packit Service eaff73
#     USEMAK=1 - compile from exported make files
Packit Service eaff73
#     USEDSW=1 - compile from .dsw / .dsp VC6 projects
Packit Service eaff73
#     USESLN=1 - compile from converted .sln / .vcproj VC7+ files
Packit Service eaff73
#
Packit Service eaff73
# Define ARCH to your desired preference (your PATH must point
Packit Service eaff73
# to the correct compiler tools!)  Choose only one;
Packit Service eaff73
#
Packit Service eaff73
#     ARCH="Win32 Release"
Packit Service eaff73
#     ARCH="Win32 Debug"
Packit Service eaff73
#     ARCH="x64 Release"
Packit Service eaff73
#     ARCH="x64 Debug"
Packit Service eaff73
#
Packit Service eaff73
# For example;
Packit Service eaff73
#
Packit Service eaff73
#   nmake -f Makefile.win PREFIX=C:\APR buildall checkall install clean
Packit Service eaff73
#
Packit Service eaff73
Packit Service eaff73
!IF EXIST("apr.sln") && ([devenv /help > NUL 2>&1] == 0) \
Packit Service eaff73
    && !defined(USEMAK) && !defined(USEDSW)
Packit Service eaff73
USESLN=1
Packit Service eaff73
USEMAK=0
Packit Service eaff73
USEDSW=0
Packit Service eaff73
!ELSEIF EXIST("apr.mak") && !defined(USEDSW)
Packit Service eaff73
USESLN=0
Packit Service eaff73
USEMAK=1
Packit Service eaff73
USEDSW=0
Packit Service eaff73
!ELSE
Packit Service eaff73
USESLN=0
Packit Service eaff73
USEMAK=0
Packit Service eaff73
USEDSW=1
Packit Service eaff73
!ENDIF
Packit Service eaff73
Packit Service eaff73
PREFIX=..\apr-dist
Packit Service eaff73
Packit Service eaff73
!IF [$(COMSPEC) /c cl /nologo /? \
Packit Service eaff73
	| $(SystemRoot)\System32\find.exe "x64" >NUL ] == 0
Packit Service eaff73
ARCH=x64 Release
Packit Service eaff73
!ELSE
Packit Service eaff73
ARCH=Win32 Release
Packit Service eaff73
!ENDIF
Packit Service eaff73
Packit Service eaff73
!MESSAGE ARCH        = $(ARCH)
Packit Service eaff73
!MESSAGE PREFIX      = $(PREFIX)  (install path)
Packit Service eaff73
Packit Service eaff73
Packit Service eaff73
# Utility and Translation things, nothing here for the user
Packit Service eaff73
#
Packit Service eaff73
!IF "$(ARCH)" == "Win32 Release"
Packit Service eaff73
SLNARCH=Release|Win32
Packit Service eaff73
ARCHOSPATH=Release
Packit Service eaff73
LIBSOSPATH=LibR
Packit Service eaff73
!ELSEIF "$(ARCH)" == "Win32 Debug"
Packit Service eaff73
SLNARCH=Debug|Win32
Packit Service eaff73
ARCHOSPATH=Debug
Packit Service eaff73
LIBSOSPATH=LibD
Packit Service eaff73
!ELSEIF "$(ARCH)" == "x64 Release"
Packit Service eaff73
SLNARCH=Release|x64
Packit Service eaff73
ARCHOSPATH=x64\Release
Packit Service eaff73
LIBSOSPATH=x64\LibR
Packit Service eaff73
!ELSEIF "$(ARCH)" == "x64 Debug"
Packit Service eaff73
SLNARCH=Debug|x64
Packit Service eaff73
ARCHOSPATH=x64\Debug
Packit Service eaff73
LIBSOSPATH=x64\LibD
Packit Service eaff73
!ENDIF
Packit Service eaff73
Packit Service eaff73
!IFNDEF MAKEOPT
Packit Service eaff73
# Only default the behavior if MAKEOPT= is omitted
Packit Service eaff73
!IFDEF _NMAKE_VER
Packit Service eaff73
# Microsoft NMake options
Packit Service eaff73
MAKEOPT=-nologo
Packit Service eaff73
!ELSEIF "$(MAKE)" == "make"
Packit Service eaff73
# Borland make options?  Not really supported (yet)
Packit Service eaff73
MAKEOPT=-s -N
Packit Service eaff73
!ENDIF
Packit Service eaff73
!ENDIF
Packit Service eaff73
Packit Service eaff73
Packit Service eaff73
all: buildall checkall
Packit Service eaff73
Packit Service eaff73
!IF $(USEMAK) == 1
Packit Service eaff73
Packit Service eaff73
clean:
Packit Service eaff73
	$(MAKE) $(MAKEOPT) -f Makefile.win ARCH="$(ARCH)" \
Packit Service eaff73
		CTARGET=CLEAN buildall
Packit Service eaff73
Packit Service eaff73
buildall:
Packit Service eaff73
	$(MAKE) $(MAKEOPT) -f apr.mak         CFG="apr - $(ARCH)" RECURSE=0 $(CTARGET)
Packit Service eaff73
	$(MAKE) $(MAKEOPT) -f libapr.mak      CFG="libapr - $(ARCH)" RECURSE=0 $(CTARGET)
Packit Service eaff73
	cd build
Packit Service eaff73
	 $(MAKE) $(MAKEOPT) -f aprapp.mak     CFG="aprapp - $(ARCH)" RECURSE=0 $(CTARGET)
Packit Service eaff73
	 $(MAKE) $(MAKEOPT) -f libaprapp.mak  CFG="libaprapp - $(ARCH)" RECURSE=0 $(CTARGET)
Packit Service eaff73
	cd ..
Packit Service eaff73
Packit Service eaff73
!ELSEIF $(USESLN) == 1
Packit Service eaff73
Packit Service eaff73
clean:
Packit Service eaff73
	-devenv apr.sln /useenv /clean "$(SLNARCH)" /project libaprapp
Packit Service eaff73
	-devenv apr.sln /useenv /clean "$(SLNARCH)" /project libapr
Packit Service eaff73
	-devenv apr.sln /useenv /clean "$(SLNARCH)" /project aprapp
Packit Service eaff73
	-devenv apr.sln /useenv /clean "$(SLNARCH)" /project apr
Packit Service eaff73
Packit Service eaff73
buildall:
Packit Service eaff73
	devenv apr.sln /useenv /build "$(SLNARCH)" /project apr
Packit Service eaff73
	devenv apr.sln /useenv /build "$(SLNARCH)" /project aprapp
Packit Service eaff73
	devenv apr.sln /useenv /build "$(SLNARCH)" /project libapr
Packit Service eaff73
	devenv apr.sln /useenv /build "$(SLNARCH)" /project libaprapp
Packit Service eaff73
Packit Service eaff73
!ELSE
Packit Service eaff73
#	$(USEDSP) == 1
Packit Service eaff73
Packit Service eaff73
clean:
Packit Service eaff73
	-msdev apr.dsw /USEENV /MAKE "libaprapp - $(ARCH)" /CLEAN
Packit Service eaff73
	-msdev apr.dsw /USEENV /MAKE "libapr - $(ARCH)" /CLEAN
Packit Service eaff73
	-msdev apr.dsw /USEENV /MAKE "aprapp - $(ARCH)" /CLEAN
Packit Service eaff73
	-msdev apr.dsw /USEENV /MAKE "apr - $(ARCH)" /CLEAN
Packit Service eaff73
Packit Service eaff73
buildall:
Packit Service eaff73
	@msdev apr.dsw /USEENV /MAKE "apr - $(ARCH)"
Packit Service eaff73
	@msdev apr.dsw /USEENV /MAKE "aprapp - $(ARCH)"
Packit Service eaff73
	@msdev apr.dsw /USEENV /MAKE "libapr - $(ARCH)"
Packit Service eaff73
	@msdev apr.dsw /USEENV /MAKE "libaprapp - $(ARCH)"
Packit Service eaff73
Packit Service eaff73
!ENDIF
Packit Service eaff73
Packit Service eaff73
Packit Service eaff73
checkapr:
Packit Service eaff73
	cd test
Packit Service eaff73
	 $(MAKE) $(MAKEOPT) -f Makefile.win MODEL=static \
Packit Service eaff73
		OUTDIR=$(LIBSOSPATH) check
Packit Service eaff73
	 $(MAKE) $(MAKEOPT) -f Makefile.win MODEL=dynamic \
Packit Service eaff73
		OUTDIR=$(ARCHOSPATH) check
Packit Service eaff73
	 cd ..
Packit Service eaff73
Packit Service eaff73
checkall: checkapr
Packit Service eaff73
Packit Service eaff73
Packit Service eaff73
install:
Packit Service eaff73
	echo Y >.y
Packit Service eaff73
	echo A >.A
Packit Service eaff73
	@if NOT EXIST "$(PREFIX)\."		mkdir "$(PREFIX)"
Packit Service eaff73
	@if NOT EXIST "$(PREFIX)\bin\."		mkdir "$(PREFIX)\bin"
Packit Service eaff73
	@if NOT EXIST "$(PREFIX)\include\."	mkdir "$(PREFIX)\include"
Packit Service eaff73
	@if NOT EXIST "$(PREFIX)\lib\."		mkdir "$(PREFIX)\lib"
Packit Service eaff73
	copy CHANGES "$(PREFIX)\APR-CHANGES.txt" <.y
Packit Service eaff73
	copy LICENSE "$(PREFIX)\APR-LICENSE.txt" <.y
Packit Service eaff73
	copy NOTICE  "$(PREFIX)\APR-NOTICE.txt"  <.y
Packit Service eaff73
	xcopy include\*.h		"$(PREFIX)\include\" /d < .a
Packit Service eaff73
	copy $(LIBSOSPATH)\apr-1.lib		"$(PREFIX)\lib\" <.y
Packit Service eaff73
	copy $(LIBSOSPATH)\apr-1.pdb		"$(PREFIX)\lib\" <.y
Packit Service eaff73
	copy $(LIBSOSPATH)\aprapp-1.lib		"$(PREFIX)\lib\" <.y
Packit Service eaff73
	copy $(LIBSOSPATH)\aprapp-1.pdb		"$(PREFIX)\lib\" <.y
Packit Service eaff73
	copy $(ARCHOSPATH)\libaprapp-1.lib	"$(PREFIX)\lib\" <.y
Packit Service eaff73
	copy $(ARCHOSPATH)\libaprapp-1.pdb	"$(PREFIX)\lib\" <.y
Packit Service eaff73
	copy $(ARCHOSPATH)\libapr-1.lib		"$(PREFIX)\lib\" <.y
Packit Service eaff73
	copy $(ARCHOSPATH)\libapr-1.exp		"$(PREFIX)\lib\" <.y
Packit Service eaff73
	copy $(ARCHOSPATH)\libapr-1.dll		"$(PREFIX)\bin\" <.y
Packit Service eaff73
	copy $(ARCHOSPATH)\libapr-1.pdb		"$(PREFIX)\bin\" <.y
Packit Service eaff73
	del .y
Packit Service eaff73
	del .a
Packit Service eaff73