[BACK]Return to Makefile CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / windows

File: [local] / OpenXM_contrib2 / windows / Makefile (download)

Revision 1.17, Wed May 12 08:27:26 2021 UTC (2 years, 10 months ago) by ohara
Branch: MAIN
Changes since 1.16: +5 -5 lines

PRODUCTIDs are updated.

# $OpenXM: OpenXM_contrib2/windows/Makefile,v 1.17 2021/05/12 08:27:26 ohara Exp $

!if "$(ARCH)" == ""
ARCH=$(PROCESSOR_ARCHITECTURE)
!endif

!if "$(ARCH)" == "AMD64"
OS = win64
CANDLE_ARCH = -nologo -arch x64
PGDIR=ProgramFiles64Folder
PRODUCTID=EEC1D477-7925-4B4D-8484-5174FD6D97C5
!else
OS = win32
CANDLE_ARCH = -nologo
PGDIR=ProgramFilesFolder
PRODUCTID=95F4A064-CFE0-45D4-AA55-F87921432478
!endif

# DO NOT CHANGE UPGRADEID!!
UPGRADEID=B7A582F5-0484-4030-9D38-BFAE00707F0D
PRODUCTVER=1.1.0

TARGET= asir$(OS).msi
SRCS= asir.wxs _lib.wxs _contrib.wxs _share.wxs
# OBJS= asir.wixobj _lib.wixobj _contrib.wixobj _help.wixobj _share.wixobj
OBJS= $(SRCS:.wxs=.wixobj)

CANDLE = candle -nologo
CANDLE_FLAGS = $(CANDLE_ARCH) -dprogramfilesDir=$(PGDIR) \
  -dupgradeID=$(UPGRADEID) -dproductID=$(PRODUCTID) -dproductVer=$(PRODUCTVER) \
  -dlibDir=asir\lib\asir -dcontribDir=asir\lib\asir-contrib \
  -dshareDir=asir\share
LIGHT = light -nologo
LTFLAGS = -ext WixUIExtension -ext WixUtilExtension
HEAT = heat
HEATFLAGS = -nologo -gg -g1 -sfrag -srd

.SUFFIXES: .wxs .wixobj

.wxs.wixobj:
	$(CANDLE) $(CANDLE_FLAGS) $<

all: build

build: ..\asir-gc\gc\gc.lib asir2000lib\asir2000lib.lib engine2000\engine.exe asir32gui\asirgui.exe mcpp\cpp.exe post-msg-asirgui\cmdasir.exe ..\asir2018\asir.exe

..\asir-gc\gc\gc.lib:
	cd ..\asir-gc && $(MAKE) -e -f Makefile.vc

asir2000lib\asir2000lib.lib: ..\asir-gc\gc\gc.lib
	cd $(@D) && $(MAKE) -e -f Makefile.vc ARCH=$(ARCH)

engine2000\engine.exe: asir2000lib\asir2000lib.lib
	cd $(@D) && $(MAKE) -e -f Makefile.vc ARCH=$(ARCH)

asir32gui\asirgui.exe:
	cd $(@D) && $(MAKE) -e -f Makefile.vc

mcpp\cpp.exe:
	cd $(@D) && $(MAKE) -e -f Makefile.vc

post-msg-asirgui\cmdasir.exe:
	cd $(@D) && $(MAKE) -e -f Makefile.vc

..\asir2018\asir.exe: ..\asir-gc\gc\gc.lib
	cd $(@D) && $(MAKE) -e -f Makefile.vc ARCH=$(ARCH)

msi: $(TARGET) wxs
	copy /b $(TARGET) asir_$(OS)_%DATE:/=.%.msi

wxs: $(SRCS)

mkdir:
	if not exist asir ( mkdir asir\bin asir\lib\asir asir\lib\asir-contrib asir\share\editor asir\share\skel )

!if "$(ARCH)" == "AMD64"
GMPDIR=mpir\x64
!else
GMPDIR=mpir\win32
!endif

install: build mkdir
	for %i in ( asir32gui\asirgui.exe asir32gui\ja.dll engine2000\engine.exe mcpp\cpp.exe post-msg-asirgui\cmdasir.exe ..\asir2018\asir.exe curl.exe unzip.exe $(GMPDIR)\*.dll ) do ( copy /b %i asir\bin )
	echo import("names.rr")$$ end$$ > asir\share\skel\.asirrc
	for %i in ( ..\asir2018\LICENSE gmp\COPYING.LIB ) do ( copy /b %i asir )
	-robocopy post-msg-asirgui asir\share\editor asirgui.mac  asir-mode.el install-ja-sjis.txt /nfl /ndl /njh /njs /np 
	-robocopy ..\asir2018\lib asir\lib\asir /nfl /ndl /njh /njs /np /xf help*.uu
	-robocopy ..\..\OpenXM\src\asir-contrib\packages\src asir\lib\asir-contrib /nfl /ndl /njh /njs /np /mir /xd CVS /xf *.in *.c *.sh *-sh .keepme
	-robocopy ..\..\OpenXM\src\asir-contrib\testing\noro asir\lib\asir-contrib de.rr gw.rr module_syz.rr mwl.rr rewrite.rr ndbf.rr /nfl /ndl /njh /njs /np
	for %i in ( de.rr gw.rr module_syz.rr mwl.rr rewrite.rr ) do ( pushd asir\lib\asir-contrib && move %i noro_%i && popd)	
	pushd asir\lib\asir-contrib && move ndbf.rr nn_ndbf.rr && popd

zip: install
	zip -r asir_$(OS)_%DATE:/=.%.zip asir

$(TARGET): $(OBJS) LICENSE.rtf zip
	$(LIGHT) $(LTFLAGS) -out $(TARGET) $(OBJS)

## The wxs files were generated by heat.
## To update _contrib.wxs, run nmake WXS=1 _contrib.wxs or run nmake WXS=1 wxs 

!ifdef WXS
_lib.wxs: zip
	cd asir\lib && $(HEAT) dir asir $(HEATFLAGS) -dr LIB_ASIR -cg LibGrp -var "var.libDir" -out ..\..\_lib.wxs

_help.wxs: zip
	cd asir && $(HEAT) dir help $(HEATFLAGS) -dr HELP  -cg HelpGrp -var "var.helpDir"  -out ..\_help.wxs

_contrib.wxs: zip
	cd asir\lib && $(HEAT) dir asir-contrib $(HEATFLAGS) -dr LIB_ASIR_CONTRIB -cg ContribGrp -var "var.contribDir" -out ..\..\_contrib.wxs
!endif

wxsclean:
	@del /q _*.wxs

clean:
	@del /q *.wixobj
	@del /q *.wixpdb

distclean: clean
	@if exist asir ( rmdir /s /q asir )
	@for %i in ( ..\asir-gc asir2000lib engine2000 mcpp asir32gui post-msg-asirgui ..\asir2018 ) do ( pushd %i && $(MAKE) -f Makefile.vc distclean && popd)

msiclean:
	@del /q $(TARGET)
	@del /q asir_$(OS)_*.msi
	@del /q asir_$(OS)_*.zip