forked from qt-creator/qt-creator
		
	Include a patch for MinGW Change-Id: I3bbed52e92b5ae657debb5b6045da31274ccf6c5 Reviewed-by: hjk <hjk@qt.io>
		
			
				
	
	
		
			87 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
broot=${PWD}
 | 
						|
source=${broot}/source
 | 
						|
targets=x86_64-unknown-linux-gnu,i686-unknown-linux-gnu,arm-none-linux-gnueabi
 | 
						|
staging=${broot}/staging
 | 
						|
pyversion=2.7
 | 
						|
expatversion=2.1.1
 | 
						|
arch=`uname -sm | sed 's/ /-/g' | tr A-Z a-z`
 | 
						|
version=7.12
 | 
						|
targetdir=${broot}/qtcreator-gdb-${version}
 | 
						|
packagename=qtcreator-gdb-${version}-${arch}.tar.gz
 | 
						|
 | 
						|
all:package
 | 
						|
 | 
						|
clean:
 | 
						|
	rm -rf  ${broot}/qtcreator-gdb-* ${staging}/gdb-* qtcreator-gdb-*.tar.gz
 | 
						|
 | 
						|
makesourcedir:
 | 
						|
	@test -e ${source} || mkdir ${source}
 | 
						|
 | 
						|
maketargetdir:
 | 
						|
	@test -e ${targetdir} || mkdir ${targetdir}
 | 
						|
 | 
						|
makestagingdir:
 | 
						|
	@test -e ${staging} || mkdir ${staging}
 | 
						|
 | 
						|
${source}/expat-${expatversion}.tar.bz2: | makesourcedir
 | 
						|
	cd ${source} && \
 | 
						|
	echo "Downloading expat..." && \
 | 
						|
	wget -q http://sourceforge.net/projects/expat/files/expat/${expatversion}/expat-${expatversion}.tar.bz2 && \
 | 
						|
	touch ${source}/expat-${expatversion}.tar.bz2
 | 
						|
 | 
						|
${source}/Python-${pyversion}.tgz: | makesourcedir
 | 
						|
	cd ${source} && \
 | 
						|
	echo "Downloading python..." && \
 | 
						|
	wget -q http://www.python.org/ftp/python/${pyversion}/Python-${pyversion}.tgz && \
 | 
						|
	touch ${source}/Python-${pyversion}.tgz
 | 
						|
 | 
						|
${source}/gdb-${version}.tar.xz: | makesourcedir
 | 
						|
	cd ${source} && \
 | 
						|
	echo "Downloading gdb..." && \
 | 
						|
	wget -q http://ftp.gnu.org/gnu/gdb/gdb-${version}.tar.xz || \
 | 
						|
	wget -Oq gdb-${version}.tar.xz http://ftp.gnu.org/gnu/gdb/gdb-${version}a.tar.xz && \
 | 
						|
	touch gdb-*.tar.xz
 | 
						|
 | 
						|
${staging}/lib/libexpat.a: ${source}/expat-${expatversion}.tar.bz2 | makestagingdir
 | 
						|
	cd ${staging} && \
 | 
						|
	echo "Extracting expat..." && \
 | 
						|
	tar xf ${source}/expat-${expatversion}.tar.bz2 && cd expat-${expatversion} && \
 | 
						|
	./configure --disable-shared -prefix=${staging} && ${MAKE} && ${MAKE} install
 | 
						|
 | 
						|
${staging}/lib/libpython${pyversion}.a: ${source}/Python-${pyversion}.tgz | makestagingdir
 | 
						|
	unset PYTHONHOME && cd ${staging} && \
 | 
						|
	echo "Extracting python..." && \
 | 
						|
	tar xf ${source}/Python-${pyversion}.tgz && \
 | 
						|
	cd Python-${pyversion} && \
 | 
						|
	export LDFLAGS="-pthread -lm" && \
 | 
						|
	./configure --prefix=${staging} && ${MAKE} && ${MAKE} install
 | 
						|
 | 
						|
${targetdir}/python/include/python${pyversion}/pyconfig.h: ${staging}/lib/libpython${pyversion}.a | maketargetdir
 | 
						|
	mkdir -p ${targetdir}/python/lib && cp -a ${staging}/lib/python${pyversion} ${targetdir}/python/lib/
 | 
						|
	mkdir -p ${targetdir}/python/include/python${pyversion} && cp ${staging}/include/python${pyversion}/pyconfig.h ${targetdir}/python/include/python${pyversion}/
 | 
						|
 | 
						|
${staging}/gdb-${version}/configure: ${source}/gdb-${version}.tar.xz | makestagingdir
 | 
						|
	cd ${staging} && \
 | 
						|
	echo "Extracting gdb..." && \
 | 
						|
	tar xf ${source}/gdb-${version}.tar.xz && \
 | 
						|
	cd gdb-${version} && \
 | 
						|
	touch configure
 | 
						|
 | 
						|
${targetdir}/gdb: ${staging}/gdb-${version}/configure ${staging}/lib/libpython${pyversion}.a ${staging}/lib/libexpat.a | maketargetdir
 | 
						|
	test -e ${staging}/gdb-${version}-build || mkdir ${staging}/gdb-${version}-build
 | 
						|
	export PYTHONHOME=${staging} && \
 | 
						|
	export PATH="${staging}/bin/:$$PATH" && \
 | 
						|
	export LDFLAGS="-Wl,--no-as-needed -pthread -lm" && \
 | 
						|
	cd ${staging}/gdb-${version}-build && \
 | 
						|
	${staging}/gdb-${version}/configure --disable-nls --enable-targets=${targets} --with-separate-debug-dir="" \
 | 
						|
	--disable-werror --with-python=${staging} --with-libexpat-prefix=${staging} && \
 | 
						|
	sleep 3 && \
 | 
						|
	${MAKE} MAKEFLAGS+=-j1 && \
 | 
						|
	strip -o ${targetdir}/gdb gdb/gdb
 | 
						|
 | 
						|
package: ${targetdir}/gdb ${targetdir}/python/include/python${pyversion}/pyconfig.h
 | 
						|
	mv ${targetdir} ${targetdir}-${arch}
 | 
						|
	echo "Packing..."
 | 
						|
	tar czf ${packagename} qtcreator-gdb-${version}-${arch}
 | 
						|
	mv ${targetdir}-${arch} ${targetdir}
 |