Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!aioe.org!news.stack.nl!newsfeed.xs4all.nl!newsfeed5.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.002 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'python,': 0.01; 'installed.': 0.07; 'python': 0.08; 'ec2': 0.09; 'received:80.91': 0.09; 'received:80.91.229': 0.09; 'received:gmane.org': 0.09; 'received:list': 0.09; 'c++': 0.12; '(32': 0.16; 'c++.': 0.16; 'compilers': 0.16; 'subject:system': 0.16; 'linux': 0.17; 'this?': 0.19; 'extension': 0.21; 'maybe': 0.21; 'versions': 0.23; 'guess': 0.25; 'windows': 0.26; 'testing': 0.26; 'all,': 0.27; 'looks': 0.27; "i'm": 0.27; 'problem': 0.29; '(and': 0.29; 'distributing': 0.30; 'subject:?': 0.30; 'amazon': 0.30; 'pure': 0.32; 'modules': 0.32; 'source': 0.32; 'header:User-Agent:1': 0.33; 'to:addr :python-list': 0.33; 'there': 0.33; 'setting': 0.34; "we're": 0.34; 'header:X-Complaints-To:1': 0.34; 'however,': 0.35; 'before.': 0.36; 'do?': 0.36; 'recently,': 0.36; 'two': 0.37; 'but': 0.37; 'received:org': 0.37; 'bunch': 0.38; 'moment,': 0.38; 'some': 0.38; 'but,': 0.38; 'either': 0.39; 'submitting': 0.39; 'to:addr:python.org': 0.40; 'platforms': 0.40; 'more': 0.61; 'our': 0.64; 'forth': 0.77; 'received:109': 0.78 X-Injected-Via-Gmane: http://gmane.org/ To: python-list@python.org From: Dan Goodman Subject: simple system for building packages for multiple platforms? Date: Thu, 02 Feb 2012 02:14:20 +0100 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Gmane-NNTP-Posting-Host: 131.84.15.109.rev.sfr.net User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:9.0) Gecko/20111222 Thunderbird/9.0.1 X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 24 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1328145272 news.xs4all.nl 6861 [2001:888:2000:d::a6]:35380 X-Complaints-To: abuse@xs4all.nl Xref: x330-a1.tempe.blueboxinc.net comp.lang.python:19764 Hi all, Until recently, our package has been pure Python, so distributing it has been straightforward. Now, however, we want to add some extension modules in C++. We're happy to provide source only distributions on Linux because almost all Linux users will have all the required compilers and so forth already installed. But we also want to support Windows users who may not have C++ compilers available, which means providing built distributions. But, we're faced with this problem, there are three versions of Python we're supporting (2.5-2.7) and two architectures (32 and 64 bit), which means 6 possible platforms to build for (and maybe more in future if we upgrade to Python 3). Is there a straightforward way to set up a semi-automated build system for this? At the moment, I'm thinking about either having a bunch of virtual machines or Amazon EC2 instances and submitting build jobs to these, but setting that up looks to be a lot of work and I guess many people have had this problem before. So, what do other people do? Also, once we have a build system up, I guess it can also be used for a more extensive testing system on these multiple platforms? Dan