12e5b6d6dSopenharmony_ci#
22e5b6d6dSopenharmony_ci# Copyright (C) 2017 and later: Unicode, Inc. and others.
32e5b6d6dSopenharmony_ci# License & terms of use: http://www.unicode.org/copyright.html
42e5b6d6dSopenharmony_ci#
52e5b6d6dSopenharmony_ci# Copyright (C) 2009-2013 IBM and Others. All Rights Reserved
62e5b6d6dSopenharmony_ci
72e5b6d6dSopenharmony_ci#
82e5b6d6dSopenharmony_ci#
92e5b6d6dSopenharmony_ci#
102e5b6d6dSopenharmony_ci#Usage:
112e5b6d6dSopenharmony_ci# make OLD_ICU=/xsrl/E/401m40  NEW_ICU=/xsrl/E/icu4ct42
122e5b6d6dSopenharmony_ci#
132e5b6d6dSopenharmony_ci# you can put the OLD_ICU=xx and NEW_ICU=yy in separate lines in Makefile.local
142e5b6d6dSopenharmony_ci#
152e5b6d6dSopenharmony_ci
162e5b6d6dSopenharmony_ciANT=ant
172e5b6d6dSopenharmony_ciANT_TARGET=apireport
182e5b6d6dSopenharmony_ciDOXYGEN=doxygen
192e5b6d6dSopenharmony_ci
202e5b6d6dSopenharmony_ci-include Makefile.local
212e5b6d6dSopenharmony_ci
222e5b6d6dSopenharmony_ciTARGET=APIChangeReport.html
232e5b6d6dSopenharmony_ciMD_TARGET=APIChangeReport.md
242e5b6d6dSopenharmony_ci
252e5b6d6dSopenharmony_ciNOTSET=
262e5b6d6dSopenharmony_ci
272e5b6d6dSopenharmony_ciifeq ($(OLD_ICU),)
282e5b6d6dSopenharmony_ciNOTSET:="$(NOTSET) OLD_ICU"
292e5b6d6dSopenharmony_ciendif
302e5b6d6dSopenharmony_ci
312e5b6d6dSopenharmony_ciifeq ($(NEW_ICU),)
322e5b6d6dSopenharmony_ciNOTSET:="$(NOTSET) NEW_ICU"
332e5b6d6dSopenharmony_ciendif
342e5b6d6dSopenharmony_ci
352e5b6d6dSopenharmony_ciifeq ($(NEW_ICU_BUILD),)
362e5b6d6dSopenharmony_ciNEW_ICU_BUILD:=$(NEW_ICU)/source
372e5b6d6dSopenharmony_ciendif
382e5b6d6dSopenharmony_ci
392e5b6d6dSopenharmony_ciifeq ($(OLD_ICU_BUILD),)
402e5b6d6dSopenharmony_ciOLD_ICU_BUILD:=$(OLD_ICU)/source
412e5b6d6dSopenharmony_ciendif
422e5b6d6dSopenharmony_ci
432e5b6d6dSopenharmony_ciall: $(TARGET) $(LOCAL_TARGET) $(MD_TARGET)
442e5b6d6dSopenharmony_ci
452e5b6d6dSopenharmony_ci# auto "build" the "old" icu into OLD_ICU_BUILD
462e5b6d6dSopenharmony_citmp-old: $(OLD_ICU)/source/configure
472e5b6d6dSopenharmony_ci	mkdir -p $(OLD_ICU_BUILD)/
482e5b6d6dSopenharmony_ci	( cd $(OLD_ICU_BUILD)/ && $(OLD_ICU)/source/configure )
492e5b6d6dSopenharmony_ci
502e5b6d6dSopenharmony_ci# auto "build" the "old" icu into OLD_ICU_BUILD
512e5b6d6dSopenharmony_citmp-new: $(NEW_ICU)/source/configure
522e5b6d6dSopenharmony_ci	mkdir -p $(NEW_ICU_BUILD)/
532e5b6d6dSopenharmony_ci	( cd $(NEW_ICU_BUILD)/ && $(NEW_ICU)/source/configure )
542e5b6d6dSopenharmony_ci
552e5b6d6dSopenharmony_ciinplace-old: $(OLD_ICU)/source/configure
562e5b6d6dSopenharmony_ci	mkdir -p $(OLD_ICU_BUILD)/
572e5b6d6dSopenharmony_ci	( cd $(OLD_ICU_BUILD)/ && ./configure )
582e5b6d6dSopenharmony_ci
592e5b6d6dSopenharmony_ci# auto "build" the "old" icu into OLD_ICU_BUILD
602e5b6d6dSopenharmony_ciinplace-new: $(NEW_ICU)/source/configure
612e5b6d6dSopenharmony_ci	mkdir -p $(NEW_ICU_BUILD)/
622e5b6d6dSopenharmony_ci	( cd $(NEW_ICU_BUILD)/ && ./configure )
632e5b6d6dSopenharmony_ci
642e5b6d6dSopenharmony_ci
652e5b6d6dSopenharmony_ciifneq ($(NOTSET),)
662e5b6d6dSopenharmony_cicheck-vars:
672e5b6d6dSopenharmony_ci	@echo "Error: please set $(NOTSET) in Makefile.local or on the command line."
682e5b6d6dSopenharmony_ci	false
692e5b6d6dSopenharmony_cielse
702e5b6d6dSopenharmony_cicheck-vars:
712e5b6d6dSopenharmony_ciendif
722e5b6d6dSopenharmony_ci
732e5b6d6dSopenharmony_ci.PHONY: check-vars classes clean-docs tmp-old
742e5b6d6dSopenharmony_ci
752e5b6d6dSopenharmony_ci.PRECIOUS: $(TARGET) $(OLD_ICU_BUILD)/$(DOXYFILE) $(NEW_ICU_BUILD)/$(DOXYFILE)
762e5b6d6dSopenharmony_ci
772e5b6d6dSopenharmony_ci#######
782e5b6d6dSopenharmony_ciDOXYFILE=Doxyfile
792e5b6d6dSopenharmony_ciXML=doc/xml
802e5b6d6dSopenharmony_ciUVERSIONH=$(XML)/uversion_8h.xml
812e5b6d6dSopenharmony_ci
822e5b6d6dSopenharmony_ciclean-docs: | check-vars
832e5b6d6dSopenharmony_ci	-rm -rf "$(OLD_ICU_BUILD)/$(XML)" "$(NEW_ICU_BUILD)/$(XML)"
842e5b6d6dSopenharmony_ci
852e5b6d6dSopenharmony_ci$(TARGET): check-vars $(OLD_ICU_BUILD)/$(XML) $(NEW_ICU_BUILD)/$(XML)
862e5b6d6dSopenharmony_ci	echo "Remember to run the non-ascii file detector if you get errors."
872e5b6d6dSopenharmony_ci	$(ANT) -Dolddir="$(OLD_ICU_BUILD)/$(XML)" -Dnewdir="$(NEW_ICU_BUILD)/$(XML)" $(ANT_TARGET)
882e5b6d6dSopenharmony_ci	echo "If you get no-changes, see the readme- may need to add xalan/xerces jars."
892e5b6d6dSopenharmony_ci
902e5b6d6dSopenharmony_ci# check-vars $(OLD_ICU_BUILD)/$(XML) $(NEW_ICU_BUILD)/$(XML)
912e5b6d6dSopenharmony_ciAPIChangeReport.xml: $(OLD_ICU_BUILD)/$(XML) $(NEW_ICU_BUILD)/$(XML)
922e5b6d6dSopenharmony_ci	echo "Remember to run the non-ascii file detector if you get errors."
932e5b6d6dSopenharmony_ci	$(ANT) -Dolddir="$(OLD_ICU_BUILD)/$(XML)" -Dnewdir="$(NEW_ICU_BUILD)/$(XML)" $(ANT_TARGET)_xml
942e5b6d6dSopenharmony_ci
952e5b6d6dSopenharmony_ciAPIChangeReport.md: $(OLD_ICU_BUILD)/$(XML) $(NEW_ICU_BUILD)/$(XML)
962e5b6d6dSopenharmony_ci	echo "Remember to run the non-ascii file detector if you get errors."
972e5b6d6dSopenharmony_ci	$(ANT) -Dolddir="$(OLD_ICU_BUILD)/$(XML)" -Dnewdir="$(NEW_ICU_BUILD)/$(XML)" $(ANT_TARGET)_md
982e5b6d6dSopenharmony_ci
992e5b6d6dSopenharmony_ci%/doc/xml:	%/Doxyfile
1002e5b6d6dSopenharmony_ci# don't care what GENERATE_XML is set to previously - set it to yes.
1012e5b6d6dSopenharmony_ci	@echo running doxygen ..
1022e5b6d6dSopenharmony_ci	( cd "$*/" && ( (cat ./Doxyfile | grep -v '^GENERATE_') ;  echo 'GENERATE_XML=YES')  | $(DOXYGEN) -  )
1032e5b6d6dSopenharmony_ci	@echo doxygen done in $*
1042e5b6d6dSopenharmony_ci
1052e5b6d6dSopenharmony_ci%/Doxyfile:	%/Makefile
1062e5b6d6dSopenharmony_ci	@echo generating $@
1072e5b6d6dSopenharmony_ci	@$(MAKE) -C  "$*/" Doxyfile || ( echo "could not make Doxyfile in $*  - was doxygen available?" ; false )
1082e5b6d6dSopenharmony_ci
1092e5b6d6dSopenharmony_ci#%/source/Makefile: %/source/Makefile.in
1102e5b6d6dSopenharmony_ci#	@echo "$@ does not seem to exist - was configure run?" ; false
111