[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#111839: marked as done ([PROPOSAL]: packages should be cross buildable)



Your message dated Wed, 26 Apr 2006 09:46:50 -0500
with message-id <87bquobdid.fsf@glaurung.internal.golden-gryphon.com>
and subject line Closing out ancient, fixed bugs
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: debian-policy
Version: 3.5.5.0
Severity: wishlist

I'd like to make Debian more friendly to porters and embedded systems.
This patch basically says that packages should support
cross-compilation.  Many packages can already be cross compiled so
this is more documenting current practice rather than anything new.

I think this is an important addition to policy because Debian has the
potential to gain a larger user-base through ports and use on embedded
systems.

(The makefile snipped would be better if it was in a footnote since it
is implementation rather than policy, but the <example> tags didn't
work within a footnote.)

Thanks,

David

Here is a possible addition to the 'Debianised source tree' section:

--- policy.sgml.orig	Sun Sep  9 23:13:31 2001
+++ policy.sgml	Sun Sep  9 23:22:32 2001
@@ -8401,6 +8401,40 @@
 	    targets depend on must also be non-interactive.
 	  </p>
 
+	  <p>
+	    The <tt>debian/rules</tt> script should support
+	    cross-compilation.  Cross-compilation is helpful when
+	    porting Debian to new architectures and facilitates use of
+	    Debian in embedded environments.  Special requirements
+	    vary, but in general when cross-compilation is detected
+	    <tt>debian/rules</tt> should not execute binaries it has
+	    just created.  The following makefile snippet is an
+	    example of how to detect when a package is being
+	    cross-compiled.
+              <example>
+ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
+# commands and/or variables for cross build
+else
+# commands and/or variables for native build
+endif
+	      </example>
+	    In addition, <tt>debian/rules</tt> should allow for target
+	    specific configuration via environmental
+	    variables.<footnote> 
+	      <p>
+		To allow for target specific configuration a package
+		should not hard code tool names (gcc, ld, strip, etc.)
+		but should instead use variables (CC, LD, STRIP, etc.)
+		so that the proper tools can be used when cross
+		compiling.  In addition, target specific configuration
+		should be possible without access to the target
+		system. For example, a package that uses GNU autoconf,
+		can be configured by priming CONFIG_SITE with
+		pre-determined values.  
+	      </p>
+            </footnote>
+	  </p>
+
 	  <p>	    
 	    The targets which are required to be present are:	    
 	    <taglist>


--- End Message ---
--- Begin Message ---
Versions: 3.7.0.0
-- 
Bridge ahead.  Pay troll.
Manoj Srivastava     <srivasta@acm.org>    <http://www.golden-gryphon.com/>
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C

--- End Message ---

Reply to: