jdk/make/sun/jawt/Depend.mak
author lana
Wed, 11 Apr 2012 18:44:33 -0700
changeset 12408 8e95f7b85140
parent 2 90ce3da70b43
permissions -rw-r--r--
Merge

#
# This makefile must be executed on a system with makedepend, such as Solaris.
# In my copious amount of spare time, I hope to write a Java-based makedepend
# to eliminate this dependency (no pun intended). TB

BUILD_DIR = ../..
TOPDIR   = ../../..

STUBDIR = WindowsSystemHeaderStubs
BUILDSTUBDIR = BuildStubs

SHARE_SRC = $(TOPDIR)/src/share
SUN_SRC = $(SHARE_SRC)/native/sun
COMP_SRC = $(SUN_SRC)/awt/alphacomposite
DEBUG_SRC = $(SUN_SRC)/awt/debug
IMG_SRC = $(SUN_SRC)/awt/image
MEDIA_SRC = $(SUN_SRC)/awt/medialib
J2D_SRC  = $(SUN_SRC)/java2d
J2D_WINDOWS_SRC = $(WINDOWS_SRC)/native/sun/java2d
J2D_FONT_SRC = $(SUN_SRC)/font
LOOP_SRC = $(SUN_SRC)/java2d/loops
PIPE_SRC = $(SUN_SRC)/java2d/pipe
WINDOWS_SRC = $(TOPDIR)/src/windows
SRC = $(WINDOWS_SRC)/native/sun/windows

SRCDIRS = \
	$(COMP_SRC) \
	$(DEBUG_SRC) \
	$(IMG_SRC) \
	$(IMG_SRC)/cvutils \
	$(IMG_SRC)/gif \
	$(MEDIA_SRC) \
	$(J2D_SRC) \
	$(J2D_FONT_SRC) \
	$(J2D_WINDOWS_SRC)/windows \
	$(J2D_WINDOWS_SRC)/d3d \
	$(J2D_WINDOWS_SRC)/opengl \
	$(LOOP_SRC) \
	$(PIPE_SRC) \
	$(SRC)

INCLUDES = \
	   -I$(STUBDIR) \
	   -I$(BUILDSTUBDIR) \
	   -I$(SHARE_SRC)/javavm/export \
	   -I$(WINDOWS_SRC)/javavm/export \
	   -I$(SHARE_SRC)/native/common \
	   -I$(WINDOWS_SRC)/native/common \
	   -I$(SUN_SRC)/dc/doe \
	   -I$(SUN_SRC)/dc/path \
	   -I$(COMP_SRC) \
	   -I$(DEBUG_SRC) \
	   -I$(IMG_SRC) \
	   -I$(IMG_SRC)/cvutils \
	   -I$(MEDIA_SRC) \
	   -I$(J2D_SRC) \
	   -I$(J2D_FONT_SRC) \
	   -I$(J2D_WINDOWS_SRC) \
	   -I$(J2D_WINDOWS_SRC)/windows \
	   -I$(J2D_WINDOWS_SRC)/d3d \
	   -I$(J2D_WINDOWS_SRC)/opengl \
	   -I$(LOOP_SRC) \
	   -I$(PIPE_SRC) \
	   -I$(SRC)

STUBFILES = \
	$(STUBDIR)/ddraw.h \
	$(STUBDIR)/Ole2.h \
	$(STUBDIR)/d3d.h \
	$(STUBDIR)/d3dx.h \
	$(STUBDIR)/cderr.h \
	$(STUBDIR)/commdlg.h \
	$(STUBDIR)/direct.h \
	$(STUBDIR)/imm.h \
	$(STUBDIR)/ime.h \
	$(STUBDIR)/io.h \
	$(STUBDIR)/mmsystem.h \
	$(STUBDIR)/new.h \
	$(STUBDIR)/new \
	$(STUBDIR)/shellapi.h \
	$(STUBDIR)/shlobj.h \
	$(STUBDIR)/tchar.h \
	$(STUBDIR)/winbase.h \
	$(STUBDIR)/windef.h \
	$(STUBDIR)/windows.h \
	$(STUBDIR)/winspool.h \
	$(STUBDIR)/winuser.h \
	$(STUBDIR)/wtypes.h

default: dependencies

FILES_cpp = jawt.cpp

dependencies:
	rm -rf make.depend
	rm -rf make.tmp make.tmp2 make.tmp.bak
	rm -rf $(STUBDIR) $(BUILDSTUBDIR) depend.filelist
	for file in $(FILES_c) $(FILES_cpp) $(EXTRAFILES_c); do \
	    for dir in $(SRCDIRS); do \
	    	if [ -f $$dir/$$file ]; then \
		    echo $$dir/$$file >>depend.filelist; \
		fi; \
	    	if [ -f $$dir/$${file}pp ]; then \
		    echo $$dir/$${file}pp >>depend.filelist; \
		fi; \
	    done; \
	done
	touch make.tmp
	mkdir $(STUBDIR)
	touch $(STUBFILES)
	mkdir $(BUILDSTUBDIR)
	gnumake -f Depend.mak classhdrstubs
	cat depend.filelist | xargs -n 100 makedepend \
		-DWIN32 -D_X86X -Dx86 -DDEBUG -D_MSC_VER -DMLIB_NO_LIBSUNMATH \
		-a -f make.tmp -o.obj $(INCLUDES)
	fgrep .obj make.tmp | sed -f Depend.sed | sort -u | nawk -f ../awt/CondenseRules.awk > make.depend
	rm -rf make.tmp make.tmp2 make.tmp.bak
	rm -rf $(STUBDIR) $(BUILDSTUBDIR) depend.filelist


include ../awt/FILES_export_windows.gmk

FILES_java = $(FILES_export) $(FILES_export2) $(FILES_export3)

classhdrstubs:
	for file in `echo $(FILES_java) | \
		      tr ' ' '\n' | \
		      sed -e 'y/\//_/' -e 's/\.java/.h/'`; do \
	    echo "#include <jni.h>" > $(BUILDSTUBDIR)/$$file; \
	done