| Left: | ||
| Right: |
| OLD | NEW |
|---|---|
| 1 #---------------------------------- | 1 #---------------------------------- |
| 2 # Makefile for Microsoft NMAKE | 2 # Makefile for Microsoft NMAKE |
| 3 # | 3 # |
| 4 # Call with no arguments to set the default target to all installers. | 4 # Call with only the version parameter to set the default target to all installe rs. |
| 5 # nmake | 5 # nmake VERSION=1.2.3 |
| 6 # Call with a definition of the NMAKE variable ARCH on the command line | 6 # Call with a definition of the NMAKE variable ARCH on the command line |
| 7 # nmake ARCH=ia32 | 7 # nmake VERSION=1.2.3 ARCH=ia32 |
| 8 # nmake ARCH=x64 | 8 # nmake VERSION=1.2.3 ARCH=x64 |
| 9 # If an architecture is specified, the default target is constrained to it. | 9 # If an architecture is specified, the default target is constrained to it. |
| 10 #---------------------------------- | 10 #---------------------------------- |
| 11 | 11 |
| 12 .SUFFIXES: .msi .wixobj .wxs | 12 .SUFFIXES: .msi .wixobj .wxs |
| 13 | 13 |
| 14 Build_Dir_common = ..\build\ # | 14 Build_Dir_common = ..\build\ # |
| 15 Build_Dir_ia32 = ..\build\ia32\ # comment prevents newline | 15 Build_Dir_ia32 = ..\build\ia32\ # comment prevents newline |
| 16 Build_Dir_x64 = ..\build\x64\ # | 16 Build_Dir_x64 = ..\build\x64\ # |
| 17 Configuration = Release Production | 17 Configuration = Release Test |
| 18 Version = 0.8.1 | 18 |
| 19 !ifndef VERSION | |
| 20 !error VERSION parameter is required | |
|
Eric
2013/06/11 15:41:46
Mandating a version number is a needless burden fo
Wladimir Palant
2013/06/12 09:46:34
nmake VERSION=0.8.63333 doesn't look too complicat
Eric
2013/06/12 14:33:24
I've been bitten by typos on the command line alre
| |
| 21 !endif | |
| 19 | 22 |
| 20 #--------------------- | 23 #--------------------- |
| 21 # Default Targets | 24 # Default Targets |
| 22 # | 25 # |
| 23 # We change the default rule depending upon the ARCH (architecture) definition. | 26 # We change the default rule depending upon the ARCH (architecture) definition. |
| 24 #--------------------- | 27 #--------------------- |
| 25 | 28 |
| 26 Installer_ia32 = $(Build_Dir_ia32)adblockplusie-$(Version)-en-us-ia32.msi | 29 Installer_ia32 = $(Build_Dir_ia32)adblockplusie-$(VERSION)-en-us-ia32.msi |
| 27 Installer_x64 = $(Build_Dir_x64)adblockplusie-$(Version)-en-us-x64.msi | 30 Installer_x64 = $(Build_Dir_x64)adblockplusie-$(VERSION)-en-us-x64.msi |
| 28 Setup = $(Build_Dir_common)setup-$(Version).exe | 31 Setup = $(Build_Dir_common)setup-$(VERSION).exe |
| 29 | 32 |
| 30 !ifndef ARCH | 33 !ifndef ARCH |
| 31 default: $(Installer_ia32) $(Installer_x64) | 34 default: $(Installer_ia32) $(Installer_x64) |
| 32 !elseif "$(ARCH)"=="ia32" | 35 !elseif "$(ARCH)"=="ia32" |
| 33 default: $(Installer_ia32) | 36 default: $(Installer_ia32) |
| 34 !elseif "$(ARCH)"=="x64" | 37 !elseif "$(ARCH)"=="x64" |
| 35 default: $(Installer_x64) | 38 default: $(Installer_x64) |
| 36 !else | 39 !else |
| 37 !error Unknown variable ARCH=$(ARCH) | 40 !error Unknown variable ARCH=$(ARCH) |
| 38 !endif | 41 !endif |
| 39 | 42 |
| 40 all: ia32 x64 setup | 43 all: ia32 x64 setup |
| 41 | 44 |
| 42 ia32: $(Installer_ia32) | 45 ia32: $(Installer_ia32) |
| 43 | 46 |
| 44 x64: $(Installer_x64) | 47 x64: $(Installer_x64) |
| 45 | 48 |
| 46 setup: $(Setup) | 49 setup: $(Setup) |
| 47 | 50 |
| 48 #--------------------- | 51 #--------------------- |
| 49 # candle .wxs --> .wixobj | 52 # candle .wxs --> .wixobj |
| 50 #--------------------- | 53 #--------------------- |
| 51 | 54 |
| 52 Candle = candle -nologo -dNoDefault -dVersion=$(Version) $(CANDLE_FLAGS) $(*F).w xs -out $@ | 55 Candle = candle -nologo -dNoDefault -dVersion=$(VERSION) "-dConfiguration=$(Conf iguration)" $(CANDLE_FLAGS) $(*F).wxs -out $@ |
|
Eric
2013/06/11 15:41:46
No issue here with this modification, since we hav
| |
| 53 .wxs{$(Build_Dir_common)}.wixobj: | 56 .wxs{$(Build_Dir_common)}.wixobj: |
| 54 $(Candle) | 57 $(Candle) |
| 55 .wxs{$(Build_Dir_ia32)}.wixobj: | 58 .wxs{$(Build_Dir_ia32)}.wixobj: |
| 56 $(Candle) -arch x86 | 59 $(Candle) -arch x86 |
| 57 .wxs{$(Build_Dir_x64)}.wixobj: | 60 .wxs{$(Build_Dir_x64)}.wixobj: |
| 58 $(Candle) -arch x64 | 61 $(Candle) -arch x64 |
| 59 | 62 |
| 60 objects_common = $(Build_Dir_common)custom_WixUI_InstallDir.wixobj | 63 objects_common = $(Build_Dir_common)custom_WixUI_InstallDir.wixobj |
| 61 objects_ia32 = $(Build_Dir_ia32)adblockplusie.wixobj $(objects_common) | 64 objects_ia32 = $(Build_Dir_ia32)adblockplusie.wixobj $(objects_common) |
| 62 objects_x64 = $(Build_Dir_x64)adblockplusie.wixobj $(objects_common) | 65 objects_x64 = $(Build_Dir_x64)adblockplusie.wixobj $(objects_common) |
| 63 | 66 |
| 64 object_setup = $(Build_Dir_common)setup.wixobj | 67 object_setup = $(Build_Dir_common)setup.wixobj |
| 65 $(object_setup): setup.wxs | 68 $(object_setup): setup.wxs |
| 66 $(Candle) -ext WixBalExtension | 69 $(Candle) -ext WixBalExtension |
| 67 | 70 |
| 68 #--------------------- | 71 #--------------------- |
| 69 # light .wixobj --> .msi | 72 # light .wixobj --> .msi |
| 70 #--------------------- | 73 #--------------------- |
| 71 | 74 |
| 72 Light = light -notidy -nologo -cultures:en-us -loc en-us.wxl -ext WixUIExtension -out $@ | 75 Light = light -notidy -nologo -cultures:en-us -loc en-us.wxl -ext WixUIExtension -out $@ |
| 73 | 76 |
| 74 $(Installer_ia32): $(objects_ia32) "..\build\ia32\$(Configuration)\AdblockPlus.d ll" | 77 $(Installer_ia32): $(objects_ia32) "..\build\ia32\$(Configuration)\AdblockPlus.d ll" |
| 75 $(Light) $(objects_ia32) | 78 $(Light) $(objects_ia32) |
| 76 | 79 |
| 77 $(Installer_x64): $(objects_x64) "..\build\x64\$(Configuration)\AdblockPlusx64.d ll" | 80 $(Installer_x64): $(objects_x64) "..\build\x64\$(Configuration)\AdblockPlusx64.d ll" |
| 78 $(Light) $(objects_x64) | 81 $(Light) $(objects_x64) |
| 79 | 82 |
| 80 #--------------------- | 83 #--------------------- |
| 81 # light .wixobj --> .exe | 84 # light .wixobj --> .exe |
| 82 #--------------------- | 85 #--------------------- |
| 83 | 86 |
| 84 $(Setup): $(object_setup) | 87 $(Setup): $(object_setup) |
| 85 $(Light) $(object_setup) -ext WixBalExtension | 88 $(Light) $(object_setup) -ext WixBalExtension |
| 86 | 89 |
| 87 #--------------------- | 90 #--------------------- |
| 88 # msiexec .msi --> installed --> uninstalled | 91 # msiexec .msi --> installed --> uninstalled |
| 89 #--------------------- | 92 #--------------------- |
| 90 | 93 |
| 91 install-ia32: $(Installer_ia32) | 94 install-ia32: $(Installer_ia32) |
| 92 call <<nmake_temporary.bat | 95 call <<nmake_temporary.bat |
| 93 pushd $(Build_Dir_ia32) | 96 pushd $(Build_Dir_ia32) |
| 94 msiexec /i $(**F) /l*v install.log | 97 msiexec /i $(**F) /l*v install.log |
| 95 popd | 98 popd |
| 96 << | 99 << |
| 97 | 100 |
| 98 install-x64: $(Installer_x64) | 101 install-x64: $(Installer_x64) |
| 99 call <<nmake_temporary.bat | 102 call <<nmake_temporary.bat |
| 100 pushd $(Build_Dir_x64) | 103 pushd $(Build_Dir_x64) |
| 101 msiexec /i $(**F) /l*v install.log | 104 msiexec /i $(**F) /l*v install.log |
| 102 popd | 105 popd |
| 103 << | 106 << |
| 104 | 107 |
| 105 uninstall: | 108 uninstall: |
| 106 msiexec /x {4f27c814-5ee0-4b25-b3ab-3ad565551918} | 109 msiexec /x {4f27c814-5ee0-4b25-b3ab-3ad565551918} |
| 107 | 110 |
| 108 install-setup: $(Setup) | 111 install-setup: $(Setup) |
| 109 $(Setup) | 112 $(Setup) |
| 110 | 113 |
| 111 #--------------------- | 114 #--------------------- |
| 112 # Miscellaneous | 115 # Miscellaneous |
| 113 #--------------------- | 116 #--------------------- |
| 114 | 117 |
| 115 clean: | 118 clean: |
| 116 del $(objects_ia32) | 119 del $(objects_ia32) |
| OLD | NEW |