| 
									
										
										
										
											2010-06-21 12:56:23 +02:00
										 |  |  | #!/bin/bash
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ## Command line parameters | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  | if [[ $# != 1 ]]; then | 
					
						
							| 
									
										
										
										
											2010-06-21 12:56:23 +02:00
										 |  |  |     cat <<USAGE | 
					
						
							|  |  |  | usage: | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  |   $0 <version> | 
					
						
							| 
									
										
										
										
											2010-06-21 12:56:23 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  |   Creates tar and zip source package from HEAD of the main repository and submodules. | 
					
						
							| 
									
										
										
										
											2010-11-02 11:35:47 +01:00
										 |  |  |   Files and directories are named after <version>. | 
					
						
							| 
									
										
										
										
											2010-06-21 12:56:23 +02:00
										 |  |  |   example: | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  |     $0 2.2.0-beta | 
					
						
							| 
									
										
										
										
											2010-06-21 12:56:23 +02:00
										 |  |  | USAGE | 
					
						
							|  |  |  |     exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  | VERSION=$1 | 
					
						
							|  |  |  | PREFIX=qt-creator-${VERSION}-src | 
					
						
							| 
									
										
										
										
											2010-06-21 12:56:23 +02:00
										 |  |  | cd `dirname $0`/.. | 
					
						
							| 
									
										
										
										
											2013-03-06 15:42:12 +01:00
										 |  |  | RESULTDIR=`pwd` | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  | TEMPSOURCES=`mktemp -d -t qtcCreatorSourcePackage.XXXXXX` | 
					
						
							|  |  |  | echo "Temporary directory: ${TEMPSOURCES}" | 
					
						
							| 
									
										
										
										
											2010-06-21 12:56:23 +02:00
										 |  |  | echo "Creating tar archive..." | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | echo "  Creating tar sources of repositories..." | 
					
						
							|  |  |  | git archive --format=tar --prefix=${PREFIX}/ HEAD > ${TEMPSOURCES}/__qtcreator_main.tar || exit 1 | 
					
						
							|  |  |  | cd src/shared/qbs || exit 1 | 
					
						
							|  |  |  | git archive --format=tar --prefix=${PREFIX}/src/shared/qbs/ HEAD > ${TEMPSOURCES}/__qtcreator_qbs.tar || exit 1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | echo "  Combining tar sources..." | 
					
						
							|  |  |  | cd ${TEMPSOURCES} || exit 1 | 
					
						
							|  |  |  | tar xf __qtcreator_main.tar || exit 1 | 
					
						
							|  |  |  | tar xf __qtcreator_qbs.tar || exit 1 | 
					
						
							|  |  |  | tar czf "${RESULTDIR}/${PREFIX}.tar.gz" ${PREFIX}/ || exit 1 | 
					
						
							| 
									
										
										
										
											2013-03-06 15:42:12 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-06-21 12:56:23 +02:00
										 |  |  | echo "Creating zip archive..." | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  | echo "  Filtering binary vs text files..." | 
					
						
							| 
									
										
										
										
											2013-03-06 15:42:12 +01:00
										 |  |  | # write filter for text files (for use with 'file' command) | 
					
						
							|  |  |  | echo ".*:.*ASCII
 | 
					
						
							|  |  |  | .*:.*directory | 
					
						
							|  |  |  | .*:.*empty | 
					
						
							|  |  |  | .*:.*POSIX | 
					
						
							|  |  |  | .*:.*html | 
					
						
							|  |  |  | .*:.*text" > __txtpattern || exit 1
 | 
					
						
							|  |  |  | # list all files | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  | find ${PREFIX} > __packagedfiles || exit 1 | 
					
						
							| 
									
										
										
										
											2013-03-06 15:42:12 +01:00
										 |  |  | # record file types | 
					
						
							|  |  |  | file -f __packagedfiles > __filetypes || exit 1 | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  | echo "  Creating archive..." | 
					
						
							| 
									
										
										
										
											2013-03-06 15:42:12 +01:00
										 |  |  | # zip text files and binary files separately | 
					
						
							| 
									
										
										
										
											2013-06-20 10:33:40 +02:00
										 |  |  | cat __filetypes | grep -f __txtpattern -v | cut -d: -f1 | zip -9q "${RESULTDIR}/${PREFIX}.zip" -@ || exit 1 | 
					
						
							|  |  |  | cat __filetypes | grep -f __txtpattern    | cut -d: -f1 | zip -l9q "${RESULTDIR}/${PREFIX}.zip" -@ || exit 1 |