@@ -41,8 +41,6 @@ REPONAME=xen-api-sdk
4141REPO =$(call git_loc,$(REPONAME ) )
4242BINDINGS_TMP =$(MY_OBJ_DIR ) /tmp
4343PS_TAR_TMP =$(BINDINGS_TMP ) /powershell_tar
44- INSTALLER_TMP =$(BINDINGS_TMP ) /installer_tar
45- WIX_TMP =$(BINDINGS_TMP ) /wix_src
4644AUTOMATION_DLL_V2 =$(CARBON_DISTFILES ) /powershell-v2/System.Management.Automation.dll
4745CSHARP_SRC_TMP =$(BINDINGS_TMP ) /XenServer.NET-src/XenServer.NET
4846CSHARP_BIN_TMP =$(BINDINGS_TMP ) /XenServer.NET-bin/XenServer.NET
@@ -51,13 +49,8 @@ CSHARP_XMLRPC_TMP=$(BINDINGS_TMP)/csharp_xmlrpc
5149XMLRPC_DLL =CookComputing.XmlRpcV2.dll
5250XMLRPCLICENSE = $(CARBON_DISTFILES ) /csharp/XML-RPC.NET/LICENSE
5351
54- INSTALLER_DEFAULT_GUID =3285AFCC-B1FA-4D78-8F94-AF1F4C2C8027
55- INSTALLER_DEFAULT_VERSION =1\.0\.0
56-
5752PRODUCT_GUID := $(shell uuidgen | tr a-z A-Z)
5853
59- PATCHES =$(REPO ) /mk/patches
60-
6154OMAKE=DATAMODEL_DIR =$(PROJECT_OUTPUTDIR ) /api/datamodel omake
6255
6356# sources
@@ -75,7 +68,7 @@ SDK_ZIP=XenServer-SDK-$(PRODUCT_VERSION).zip
7568SDK_ZIP_LN =XenServer-SDK.zip
7669SDK_FOLDER =$(MY_OUTPUT_DIR ) /XenServer-SDK
7770SDK_NET_FOLDER =$(SDK_FOLDER ) /XenServer.NET
78- SDK_PS_FOLDER =$(SDK_FOLDER ) /XenServerPSSnapIn
71+ SDK_PS_FOLDER =$(SDK_FOLDER ) /XenServerPowerShell
7972SDK_PY_FOLDER =$(SDK_FOLDER ) /XenServerPython
8073SDK_PY_FOLDER_SAMPLES =$(SDK_PY_FOLDER ) /samples
8174
@@ -117,56 +110,38 @@ csharp-bin: $(MY_OBJ_DIR)/$(XMLRPC_DLL) $(MY_OBJ_DIR)/XenServer.dll
117110 $(INSTALL ) $^ $(CSHARP_BIN_TMP )
118111 mkdir -p $(SDK_NET_FOLDER ) /bin && cp -r $(CSHARP_BIN_TMP ) /* $(SDK_NET_FOLDER ) /bin
119112
120- $(MY_OBJ_DIR ) /powershell.tar.gz : $(MY_OBJ_DIR ) /XenServer.dll $(MY_OBJ_DIR ) /$(XMLRPC_DLL ) $(REPO ) /mk/sign.bat
113+ $(MY_OBJ_DIR ) /powershell.tar.gz : $(MY_OBJ_DIR ) /XenServer.dll \
114+ $(AUTOMATION_DLL_V2) $(MY_OBJ_DIR)/$(XMLRPC_DLL) \
115+ $(REPO)/mk/sign.bat $(REPO)/mk/sign-ps.bat \
116+ $(REPO)/powershell/*.ps1 \
117+ $(REPO)/powershell/*.ps1xml $(REPO)/powershell/samples/*.ps1
121118 mkdir -p $(PS_TAR_TMP)
122- cp -r $(BINDINGS_TMP ) /XenServerPSSnapIn $(PS_TAR_TMP )
119+ cp -r $(BINDINGS_TMP)/XenServerPowerShell $(PS_TAR_TMP)
123120 cp $^ $(PS_TAR_TMP)
124- cp $(AUTOMATION_DLL_V2 ) $(PS_TAR_TMP )
125121 tar -C $(PS_TAR_TMP) -zcf $@ .
126122
127- $(MY_OBJ_DIR ) /XenServerPSSnapIn .dll : $(MY_OBJ_DIR ) /powershell.tar.gz $(REPO ) /mk/powershell.sh
123+ $(MY_OBJ_DIR ) /XenServerPowerShell .dll : $(MY_OBJ_DIR ) /powershell.tar.gz $(REPO ) /mk/powershell.sh
128124ifeq ($(SKIP_WINDOWS_BUILD ) , yes)
129125 touch $@
130126else
131127 $(call win-build,$<,$@,$(REPO)/mk/powershell.sh)
132128endif
133129
134- $(WIX_TMP ) /src/ui/wixui :
135- mkdir -p $(WIX_TMP )
136- unzip -q -o $(CARBON_DISTFILES ) /windows-build/wix-2.0.5805.0-sources.zip -d $(WIX_TMP )
137- cd $(WIX_TMP ) /src/ui/wixui && patch -p1 --binary < $(PATCHES ) /wix_src_patch
138-
139- $(MY_OBJ_DIR ) /installer.tar.gz : $(WIX_TMP ) /src/ui/wixui $(MY_OBJ_DIR ) /XenServerPSSnapIn.dll \
140- $(MY_OBJ_DIR)/XenServer.dll $(MY_OBJ_DIR)/$(XMLRPC_DLL) \
141- $(REPO)/mk/sign.bat $(REPO)/mk/sign-ps.bat $(REPO)/powershell/*.ps1 \
142- $(REPO)/powershell/*.ps1xml $(REPO)/powershell/samples/*.ps1
143- mkdir -p $(INSTALLER_TMP)
144- unzip -q -o $(CARBON_DISTFILES)/windows-build/wix-2.0.5805.0-binaries.zip -d $(INSTALLER_TMP)
145- rm $(INSTALLER_TMP)/Bitmaps/{bannrbmp,dlgbmp}.bmp
146- cp -r $(REPO)/powershell/installer/* $(INSTALLER_TMP)
147- cp $(REPO)/Bitmaps/* $(INSTALLER_TMP)/Bitmaps
148- cp -r $^ $(INSTALLER_TMP)
149- cp $(SDK_PS_FOLDER)/src/*.txt $(INSTALLER_TMP)
150- $(INSTALL) $(XMLRPCLICENSE) $(INSTALLER_TMP)/LICENSE.CookComputing.XmlRpcV2
151- chmod -R a=rwx $(INSTALLER_TMP)
152- sed -e 's/$(INSTALLER_DEFAULT_GUID)/$(PRODUCT_GUID)/g' \
153- -e 's/$(INSTALLER_DEFAULT_VERSION)/$(PRODUCT_VERSION)/g' \
154- $(REPO)/powershell/installer/XenServerPSSnapIn.wxs > $(INSTALLER_TMP)/XenServerPSSnapIn.wxs
155- tar -C $(INSTALLER_TMP) -zcf $@ .
156-
157- $(MY_OBJ_DIR ) /XenServerPSSnapIn.msi : $(MY_OBJ_DIR ) /installer.tar.gz $(REPO ) /mk/installer.sh
158- ifeq ($(SKIP_WINDOWS_BUILD ) , yes)
159- touch $@
160- else
161- $(call win-build,$<,$@,$(REPO)/mk/installer.sh)
162- endif
130+ .PHONY : powershell-module
131+ powershell-module : $(MY_OBJ_DIR ) /XenServerPowerShell.dll
132+ mkdir -p $(SDK_PS_FOLDER ) /XenServerPSModule
133+ cp $(MY_OBJ_DIR ) /{* .dll,* .ps1,* .ps1xml} $(SDK_PS_FOLDER ) /XenServerPSModule
134+ sed -e ' s/@PRODUCT_VERSION@/$(PRODUCT_VERSION)/g' \
135+ -e ' s/@PRODUCT_GUID@/$(PRODUCT_GUID)/g' \
136+ $(REPO ) /powershell/XenServerPSModule.psd1 > $(SDK_PS_FOLDER ) /XenServerPSModule/XenServerPSModule.psd1
137+ cp $(SDK_PS_FOLDER ) /src/* .txt $(SDK_PS_FOLDER ) /XenServerPSModule
138+ $(INSTALL ) $(XMLRPCLICENSE ) $(SDK_PS_FOLDER ) /XenServerPSModule/LICENSE.CookComputing.XmlRpcV2
163139
164140.PHONY : bins
165- bins : omake-phase $( MY_OBJ_DIR ) /XenServerPSSnapIn.msi csharp-bin
141+ bins : omake-phase powershell-module csharp-bin
166142 mkdir -p $(MY_OUTPUT_DIR )
167143 cp $(BINDINGS_TMP ) /XenCenterBindings.zip $(MY_OUTPUT_DIR ) /XenCenterBindings-$(BUILD_NUMBER ) .zip
168144 cp $(MY_OBJ_DIR ) /FriendlyErrorNames.Designer.cs $(SDK_NET_FOLDER ) /src
169- cp $(MY_OBJ_DIR ) /XenServerPSSnapIn.msi $(SDK_PS_FOLDER ) /XenServerPSSnapIn-$(PRODUCT_VERSION ) .msi
170145
171146.PHONY : python-module
172147python-module :
0 commit comments