This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: A build problem of C++ code on Cygwin


Brian Dessent wrote:

> I've seen this a million times.  It's a makefile that doesn't know about
> $EXEEXT and assumes that executables have no extension.  Because of this
> one of the stock built-in make rules gets invoked instead of the proper
> link command.  Look in the Makefile for the rule that generates the
> final binary and I'm willing to bet that it has no $EXEEXT.  This works
> fine on linux because there is no extension for executables there.

Indeed.  The attached patch (and then re-running automake at the
top-level) causes the build to work correctly -- or at least get past
the problem you reported, I don't feel like waiting for the full build.

You should report this upstream.  The change should be safe for any
platform.

Brian
--- library/base/Makefile.am.orig	2006-03-06 04:22:06.000000000 -0800
+++ library/base/Makefile.am	2006-08-22 16:17:54.937500000 -0700
@@ -396,7 +396,7 @@ CLEANFILES = $(LIDIA_CONFIG_INCLUDEDIR)/
 
 noinst_HEADERS = $(LIDIA_CONFIG_INCLUDEDIR)/bytes_to_int_flag.h
 
-$(LIDIA_CONFIG_INCLUDEDIR)/bytes_to_int_flag.h: bytes_to_int_flag_generator
+$(LIDIA_CONFIG_INCLUDEDIR)/bytes_to_int_flag.h: bytes_to_int_flag_generator$(EXEEXT)
 	./bytes_to_int_flag_generator > $@
 
 noinst_PROGRAMS = bytes_to_int_flag_generator

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]