git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Daniel Barkalow <barkalow@iabervon.org>
To: Marius Storm-Olsen <mstormo@gmail.com>
Cc: Johannes.Schindelin@gmx.de, msysgit@googlegroups.com,
	git@vger.kernel.org, lznuaa@gmail.com, bonzini@gnu.org,
	kusmabite@googlemail.com
Subject: Re: [RFC] Enable compilation by Makefile for the MSVC toolchain
Date: Tue, 18 Aug 2009 12:51:46 -0400 (EDT)	[thread overview]
Message-ID: <alpine.LNX.2.00.0908181226160.7195@iabervon.org> (raw)
In-Reply-To: <1250600335-8642-1-git-send-email-mstormo@gmail.com>

On Tue, 18 Aug 2009, Marius Storm-Olsen wrote:

> From: Marius Storm-Olsen <mstormo@gmail.com>
> 
> By using GNU Make we can also compile with the MSVC toolchain.
> This is a rudementary patch, only meant as an RFC for now!!
> 
> !! DO NOT COMMIT THIS UPSTREAM !!
> ---
>  So, instead of rely on these vcproj files which *will* go stale, we can
>  simply use the same Makefile system which everyone else is using. :)
>  After all, we're just compiling with a different compiler. The end result
>  will still rely on the *msysGit environment* to function, so we already
>  require it. Thus, GNU Make is present, and we can use it.
> 
>  This implementation is a quick hack to make it compile (hence the RFC
>  subject), so please don't even consider basing anything ontop of it ;)
> 
>  But, do point out all the do's and don'ts, and I'll try to polish it up
>  to something which we can add to Frank's series..
>  
> 
>  Makefile      |   97 +++++++++++++++++++++++++++++++++++++++++++++++---------
>  compat/msvc.h |   77 +++++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 158 insertions(+), 16 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index daf4296..2e14976 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -214,9 +214,13 @@ uname_V := $(shell sh -c 'uname -v 2>/dev/null || echo not')
>  
>  CFLAGS = -g -O2 -Wall
>  LDFLAGS =
> +ARFLAGS = rcs\ # whitespace intentional
>  ALL_CFLAGS = $(CFLAGS)
>  ALL_LDFLAGS = $(LDFLAGS)
>  STRIP ?= strip
> +COMPFLAG = -c
> +COBJFLAG = -o\ # whitespace intended
> +LOBJFLAG = -o\ # whitespace intended

I think it's nicer to write the significant whitespace with non-whitespace 
text using something like:

empty=
space=$(empty) $(empty)

(...)

ARFLAGS = rcs$(space)

COBJFLAG = -o$(space)

On the other hand, I think it would be clearer to put the "rcs" in the 
default version of $(AR), and have a $(AROBJFLAG) set to nothing there, 
since the "rcs" isn't actually at all like the "-OUT:" with respect to 
what it's doing there.

Possibly also to have two variables for the output of the toolchain 
wrapper, one that is before the name of the file and one that's attached 
to the name of the file.

	-Daniel
*This .sig left intentionally blank*

  parent reply	other threads:[~2009-08-18 16:52 UTC|newest]

Thread overview: 91+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-17 16:04 [PATCH 06/11] Add miss git-compat-util.h at regex.c and fnmatch.c Add git-compat-util.h to enable build at MSVC environment Frank Li
2009-08-17 16:04 ` [PATCH 07/11] Add O_BINARY flag to open flag at mingw.c Frank Li
2009-08-17 16:04   ` [PATCH 08/11] Place __stdcall to correct position Frank Li
2009-08-17 16:05     ` [PATCH 09/11] Add MSVC porting header files Frank Li
2009-08-17 16:05       ` [PATCH 10/11] Add MSVC Project file Frank Li
2009-08-17 17:11         ` Johannes Schindelin
2009-08-17 17:34         ` Paolo Bonzini
2009-08-17 17:40           ` Erik Faye-Lund
2009-08-17 18:16             ` Paolo Bonzini
2009-08-17 19:53             ` Johannes Schindelin
2009-08-17 20:02               ` Paolo Bonzini
2009-08-17 20:54                 ` Johannes Schindelin
2009-08-17 20:17               ` Pau Garcia i Quiles
2009-08-17 20:43                 ` Reece Dunn
2009-08-17 20:54                   ` Pau Garcia i Quiles
2009-08-17 21:05                     ` Reece Dunn
2009-08-17 22:17                       ` Johan 't Hart
2009-08-17 21:05                     ` Johannes Schindelin
2009-08-17 21:23                       ` Pau Garcia i Quiles
2009-08-17 22:10                         ` Johannes Schindelin
2009-08-17 22:19                           ` Pau Garcia i Quiles
2009-08-17 22:21                             ` Paolo Bonzini
2009-08-17 22:32                               ` Thiago Farina
2009-08-17 22:33                               ` Thiago Farina
2009-08-17 20:56                 ` Johannes Schindelin
2009-08-17 20:59                   ` Pau Garcia i Quiles
2009-08-17 21:11                     ` Johannes Schindelin
2009-08-17 22:26                       ` Johan 't Hart
2009-08-17 23:00                         ` Pau Garcia i Quiles
2009-08-17 23:40                           ` Johannes Schindelin
2009-08-17 22:44                       ` Pau Garcia i Quiles
2009-08-18 12:58               ` [RFC] Enable compilation by Makefile for the MSVC toolchain Marius Storm-Olsen
2009-08-18 13:01                 ` Marius Storm-Olsen
2009-08-18 13:09                 ` Erik Faye-Lund
2009-08-18 14:11                 ` Johannes Schindelin
2009-08-18 17:07                   ` Pau Garcia i Quiles
2009-08-18 21:35                     ` Johannes Schindelin
2009-08-18 17:55                   ` Marius Storm-Olsen
2009-08-18 18:42                     ` Daniel Barkalow
2009-08-18 21:57                       ` Johannes Schindelin
2009-08-19  9:58                     ` Johannes Schindelin
2009-08-18 16:22                 ` Johan 't Hart
2009-08-18 16:28                   ` Reece Dunn
2009-08-18 17:06                   ` Pau Garcia i Quiles
2009-08-18 17:44                     ` Paolo Bonzini
2009-08-18 16:51                 ` Junio C Hamano
2009-08-18 17:36                   ` Marius Storm-Olsen
2009-08-18 17:41                   ` Johan 't Hart
2009-08-18 18:06                     ` Marius Storm-Olsen
2009-08-18 21:53                       ` Johannes Schindelin
2009-08-18 22:02                         ` Erik Faye-Lund
2009-08-18 22:38                           ` Johannes Schindelin
2009-08-18 22:48                             ` Erik Faye-Lund
2009-08-19  7:16                               ` Johannes Schindelin
2009-08-19  7:29                                 ` Marius Storm-Olsen
2009-08-19  8:29                                   ` Johannes Schindelin
2009-08-19  8:56                                     ` Thomas Berg
2009-08-19 10:59                                     ` [msysGit] " Marius Storm-Olsen
2009-08-19 12:56                                       ` Johannes Schindelin
2009-08-19 13:26                                         ` Marius Storm-Olsen
2009-08-19 14:51                                           ` Erik Faye-Lund
2009-08-19 13:04                                 ` Joshua Jensen
2009-08-18 16:51                 ` Daniel Barkalow [this message]
2009-08-18 17:38                   ` Marius Storm-Olsen
2009-08-17 22:27         ` [PATCH 10/11] Add MSVC Project file Thiago Farina
2009-08-17 22:29           ` Thiago Farina
2009-08-17 22:39           ` Johannes Schindelin
2009-08-17 22:50             ` Thiago Farina
2009-08-17 17:09       ` [PATCH 09/11] Add MSVC porting header files Johannes Schindelin
2009-08-17 19:31         ` Pau Garcia i Quiles
2009-08-17 19:48           ` CMake, was " Johannes Schindelin
2009-08-17 19:51             ` Pau Garcia i Quiles
2009-08-17 19:54               ` Pau Garcia i Quiles
2009-08-17 20:58               ` Johannes Schindelin
2009-08-17 21:03                 ` Pau Garcia i Quiles
2009-08-17 21:20               ` Reece Dunn
2009-08-17 21:29                 ` Pau Garcia i Quiles
2009-08-17 20:07           ` [msysGit] " Johannes Sixt
2009-08-18  2:15         ` Frank Li
2009-08-18  9:47           ` Johannes Schindelin
2009-08-18 10:42             ` Junio C Hamano
2009-08-18 13:01               ` Johannes Schindelin
2009-08-17 19:21       ` [msysGit] " Johannes Sixt
2009-08-17 17:01     ` [PATCH 08/11] Place __stdcall to correct position Johannes Schindelin
2009-08-18  1:51       ` Frank Li
2009-08-18  9:36         ` Johannes Schindelin
2009-08-17 16:58   ` [PATCH 07/11] Add O_BINARY flag to open flag at mingw.c Johannes Schindelin
2009-08-18  2:02     ` Frank Li
2009-08-18  9:40       ` Johannes Schindelin
2009-08-17 16:51 ` [PATCH 06/11] Add miss git-compat-util.h at regex.c and fnmatch.c Add git-compat-util.h to enable build at MSVC environment Johannes Schindelin
2009-08-17 19:23 ` Johannes Sixt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LNX.2.00.0908181226160.7195@iabervon.org \
    --to=barkalow@iabervon.org \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=bonzini@gnu.org \
    --cc=git@vger.kernel.org \
    --cc=kusmabite@googlemail.com \
    --cc=lznuaa@gmail.com \
    --cc=mstormo@gmail.com \
    --cc=msysgit@googlegroups.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).