12e83bbd84
This change adds arm as a possible architecture to the create_debian_packages.py script and additionally adds a toolchain flag so that arm packages can be built using different cross-compilers that target different ARM versions. The specified cross-compiler is passed on to the debian/rules file through an environment variable. R=ricow@google.com, sgjesse@google.com Review URL: https://codereview.chromium.org//396123003 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39291 260f80e4-7a28-3924-810f-c04153c831b5
71 lines
1.6 KiB
Makefile
Executable File
71 lines
1.6 KiB
Makefile
Executable File
#!/usr/bin/make -f
|
|
export DH_VERBOSE = 1
|
|
|
|
# Use DEB_BUILD_OPTIONS's parallel=n option (see Policy 4.9.1)
|
|
ifneq (,$(findstring parallel,$(DEB_BUILD_OPTIONS)))
|
|
PARALLEL_JOBS := $(shell echo $(DEB_BUILD_OPTIONS) | \
|
|
sed -e 's/.*parallel=\([0-9]\+\).*/\1/')
|
|
else
|
|
PARALLEL_JOBS := 1
|
|
endif
|
|
|
|
ifeq (amd64,$(DEB_HOST_ARCH_CPU))
|
|
BUILD_TYPE += ReleaseX64
|
|
ARCH += x64
|
|
else
|
|
ifeq (i386,$(DEB_HOST_ARCH_CPU))
|
|
BUILD_TYPE += ReleaseIA32
|
|
ARCH += ia32
|
|
else
|
|
ifeq (arm,$(DEB_HOST_ARCH_CPU))
|
|
ifeq ($(DEB_BUILD_ARCH_CPU),$(DEB_HOST_ARCH_CPU))
|
|
BUILD_TYPE += ReleaseARM
|
|
else
|
|
BUILD_TYPE += ReleaseXARM
|
|
endif
|
|
ARCH += arm
|
|
else
|
|
$(error unsupported target arch '$(DEB_HOST_ARCH_CPU)')
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
# Verbose?
|
|
ifeq (1,$(DH_VERBOSE))
|
|
BUILD_ARGS += V=1
|
|
endif
|
|
|
|
%:
|
|
dh $@
|
|
|
|
override_dh_auto_clean:
|
|
echo $(DEB_BUILD_OPTIONS)
|
|
rm -fr dart/out dart/Makefile
|
|
find . -name *.tmp -execdir rm -f {} \;
|
|
find . -name *.pyc -execdir rm -f {} \;
|
|
find . -name *.mk -execdir rm -f {} \;
|
|
find . -name *.Makefile -execdir rm -f {} \;
|
|
|
|
override_dh_auto_configure:
|
|
GYP_GENERATORS=make python dart/tools/gyp_dart.py all
|
|
|
|
override_dh_auto_build:
|
|
cd dart; \
|
|
python tools/build.py -v -m release -a $(ARCH) $(TOOLCHAIN) create_sdk; \
|
|
cd ..
|
|
|
|
# Building the Dart SDK will already strip all binaries.
|
|
override_dh_strip:
|
|
|
|
# This override allows us to ignore spurious missing library errors when
|
|
# cross-compiling.
|
|
override_dh_shlibdeps:
|
|
dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info
|
|
|
|
override_dh_auto_install:
|
|
mkdir -p debian/tmp/out
|
|
cp -R dart/out/$(BUILD_TYPE)/dart-sdk debian/tmp/out
|
|
mv debian/tmp/out/dart-sdk debian/tmp/out/dart
|
|
dh_install
|
|
dh_link
|