282 lines
8.8 KiB
Groff
282 lines
8.8 KiB
Groff
.\" -*- nroff -*-
|
|
.TH WINEMAKER 1 "mai 2010" "@PACKAGE_STRING@" "Manuel des développeurs de Wine"
|
|
.SH NOM
|
|
winemaker \- générer une infrastructure de construction pour la compilation de programmes Windows sur UNIX
|
|
.SH SYNOPSIS
|
|
.B "winemaker "
|
|
[
|
|
.BR "--nobanner " "] [ " "--backup " "| " "--nobackup " "] [ "--nosource-fix "
|
|
]
|
|
.br
|
|
[
|
|
.BR "--lower-none " "| " "--lower-all " "| " "--lower-uppercase "
|
|
]
|
|
.br
|
|
[
|
|
.BR "--lower-include " "| " "--nolower-include " ]\ [ " --mfc " "| " "--nomfc "
|
|
]
|
|
.br
|
|
[
|
|
.BR "--guiexe " "| " "--windows " "| " "--cuiexe " "| " "--console " "| " "--dll "
|
|
]
|
|
.br
|
|
[
|
|
.BI "-D" macro "\fR[=\fIdéfn\fR] ] [" "\ " "-I" "rép\fR ]\ [ " "-P" "rép\fR ] [ " "-i" "dll\fR ] [ " "-L" "rép\fR ] [ " "-l" "bibliothèque "
|
|
]
|
|
.br
|
|
[
|
|
.BR "--nodlls " "] [ " "--nomsvcrt " "] [ " "--interactive " "] [ " "--single-target \fInom\fR "
|
|
]
|
|
.br
|
|
[
|
|
.BR "--generated-files " "] [ " "--nogenerated-files " "]
|
|
]
|
|
.br
|
|
[
|
|
.BR "--wine32 " "]
|
|
.br
|
|
.IR " répertoire_de_travail" "| " "fichier_projet" "| " "fichier_espace_de_travail"
|
|
|
|
.SH DESCRIPTION
|
|
.PP
|
|
.B winemaker
|
|
est un script perl conçu pour vous aider à entamer le
|
|
processus de conversion de vos sources Windows en programmes Winelib.
|
|
.PP
|
|
À cet effet, il peut effectuer les opérations suivantes :
|
|
.PP
|
|
-\ renommer vos fichiers sources et répertoires en minuscules s'ils ont été
|
|
convertis en majuscules durant le transfert.
|
|
.PP
|
|
-\ convertir les fins de ligne DOS en fins de lignes UNIX (CRLF vers LF).
|
|
.PP
|
|
-\ balayer les directives d'inclusion et les références aux fichiers
|
|
de ressources pour y remplacer les backslashs par des slashs.
|
|
.PP
|
|
-\ durant l'étape ci-dessus,
|
|
.B winemaker
|
|
va également effectuer une recherche insensible à la casse du fichier
|
|
référencé dans le chemin d'inclusion, et réécrire la directive d'inclusion
|
|
avec la casse correcte si nécessaire.
|
|
.PP
|
|
.RB "-\ " winemaker
|
|
recherchera également d'autres problèmes plus exotiques comme l'emploi
|
|
de «\ #pragma pack\ », l'utilisation de «\ afxres.h\ » dans des projets
|
|
non MFC, etc. Quand il trouve de tels points nébuleux, il émettra des
|
|
avertissements.
|
|
.PP
|
|
.RB "-\ " winemaker
|
|
peut également balayer un arbre de répertoires complet en une seule passe,
|
|
deviner quels sont les exécutables et bibliothèques en cours de construction,
|
|
les faire correspondre à des fichiers sources, et générer le Makefile
|
|
correspondant.
|
|
.PP
|
|
-\ finalement,
|
|
.B winemaker
|
|
générera un Makefile global pour une utilisation classique.
|
|
.PP
|
|
.RB "-\ " winemaker
|
|
comprend les projets de type MFC, et génère des fichiers appropriés.
|
|
.PP
|
|
.RB "-\ " winemaker
|
|
est capable de lire des fichiers projets existants (dsp, dsw, vcproj et sln).
|
|
.PP
|
|
.SH OPTIONS
|
|
.TP
|
|
.B --nobanner
|
|
Désactiver l'affichage de la bannière.
|
|
.TP
|
|
.B --backup
|
|
Effectuer une sauvegarde préalable de tous les fichiers modifiés.
|
|
Comportement par défaut.
|
|
.TP
|
|
.B --nobackup
|
|
Ne pas effectuer de sauvegarde des fichiers sources modifiés.
|
|
.TP
|
|
.B --nosource-fix
|
|
Ne pas essayer de corriger les fichiers sources (p.ex. la conversion
|
|
DOS vers UNIX). Cela évite des messages d'erreur si des fichiers sont
|
|
accessibles en lecture seule uniquement.
|
|
.TP
|
|
.B --lower-all
|
|
Renommer tous les fichiers et répertoires en minuscules.
|
|
.TP
|
|
.B --lower-uppercase
|
|
Ne renommer que les fichiers et répertoires qui ont un nom composé
|
|
uniquement de majuscules.
|
|
Ainsi, «\ HELLO.C\ » serait renommé, mais pas «\ World.c\ ».
|
|
.TP
|
|
.B --lower-none
|
|
Ne pas renommer de fichiers et répertoires en minuscules. Notez que cela
|
|
n'empêche pas le renommage d'un fichier si son extension ne peut être traitée
|
|
telle quelle, comme par exemple «\ .Cxx\ ». Comportement par défaut.
|
|
.TP
|
|
.B "--lower-include "
|
|
Convertir en minuscules les noms de fichiers associés à des directives
|
|
d'inclusion (ou à d'autres formes de références de fichiers pour les
|
|
fichiers ressources) que
|
|
.B winemaker
|
|
n'arrive pas à trouver. Comportement par défaut.
|
|
.TP
|
|
.B "--nolower-include "
|
|
Ne pas modifier la directive d'inclusion si le fichier référencé ne peut
|
|
être trouvé.
|
|
.TP
|
|
.BR "--guiexe " "| " "--windows"
|
|
Présumer une application graphique quand une cible exécutable ou une cible d'un
|
|
type inconnu est rencontrée.
|
|
Comportement par défaut.
|
|
.TP
|
|
.BR "--cuiexe " "| " "--console"
|
|
Présumer une application en mode console quand une cible exécutable ou une cible d'un
|
|
type inconnu est rencontrée.
|
|
.TP
|
|
.B --dll
|
|
Présumer une bibliothèque quand une cible d'un type inconnu est rencontrée (c.-à-d.
|
|
si
|
|
.B winemaker
|
|
ne peut déterminer s'il s'agit d'un exécutable ou d'une bibliothèque).
|
|
.TP
|
|
.B --mfc
|
|
Spécifier que les cibles utilisent les MFC. Dans ce cas,
|
|
.B winemaker
|
|
adapte les chemins d'inclusion et des bibliothèques en conséquence,
|
|
et lie la cible avec la bibliothèque MFC.
|
|
.TP
|
|
.B --nomfc
|
|
Spécifier que les cibles n'utilisent pas les MFC. Cette option empêche
|
|
l'utilisation des bibliothèques MFC même si
|
|
.B winemaker
|
|
rencontre des fichiers «\ stdafx.cpp\ » ou «\ stdafx.h\ » qui activeraient
|
|
les MFC automatiquement en temps normal si ni --nomfc ni --mfc n'était
|
|
spécifiée.
|
|
.TP
|
|
.BI -D macro "\fR[=\fIdéfn\fR]"
|
|
Ajouter la définition de macro spécifiée à la liste globale des
|
|
définitions de macros.
|
|
.TP
|
|
.BI -I répertoire
|
|
Ajouter le répertoire spécifié au chemin global d'inclusion.
|
|
.TP
|
|
.BI -P répertoire
|
|
Ajouter le répertoire spécifié au chemin global des DLL.
|
|
.TP
|
|
.BI -i dll
|
|
Ajouter la bibliothèque Winelib à la liste global de bibliothèques Winelib
|
|
à importer.
|
|
.TP
|
|
.BI -L répertoire
|
|
Ajouter le répertoire spécifié au chemin global des bibliothèques.
|
|
.TP
|
|
.BI -l bibliothèque
|
|
Ajouter la bibliothèque spécifiée à la liste globale de bibliothèques à utiliser lors de l'édition des liens.
|
|
.TP
|
|
.B --nodlls
|
|
Ne pas utiliser l'ensemble standard de bibliothèques Winelib pour les imports,
|
|
c.-à-d. que toute DLL utilisée par votre code doit être explicitement spécifiée à l'aide d'options -i.
|
|
L'ensemble standard de bibliothèques est\ : odbc32.dll, odbccp32.dll, ole32.dll,
|
|
oleaut32.dll et winspool.drv.
|
|
.TP
|
|
.B --nomsvcrt
|
|
Définir certaines options afin que winegcc n'utilise pas
|
|
msvcrt durant la compilation. Utilisez cette option si certains fichiers cpp
|
|
incluent <string>.
|
|
.TP
|
|
.B --interactive
|
|
Entrer dans le mode interactif. Dans ce mode,
|
|
.B winemaker
|
|
demandera de confirmer la liste de cibles pour chaque répertoire, et ensuite
|
|
de fournir des options spécifiques de répertoire et/ou de cible.
|
|
.TP
|
|
.BR --single-target " nom"
|
|
Spécifier qu'il n'y a qu'une seule cible, appelée «\ nom\ ».
|
|
.TP
|
|
.B --generated-files
|
|
Générer le Makefile. Comportement par défaut.
|
|
.TP
|
|
.B --nogenerated-files
|
|
Ne pas générer le Makefile.
|
|
.TP
|
|
.B --wine32
|
|
Générer une cible 32 bits. Utile sur les systèmes wow64. Sans cette option,
|
|
l'architecture par défaut est utilisée.
|
|
|
|
.SH EXEMPLES
|
|
.PP
|
|
Voici quelques exemples typiques d'utilisation de
|
|
.B winemaker
|
|
:
|
|
.PP
|
|
$ winemaker --lower-uppercase -DSTRICT .
|
|
.PP
|
|
Recherche des fichiers sources dans le répertoire courant et ses
|
|
sous-répertoires. Quand un fichier ou répertoire a un nom composé
|
|
uniquement de majuscules, le renomme en minuscules. Ensuite, adapte tous
|
|
ces fichiers sources pour une compilation avec Winelib, et génère des
|
|
Makefiles. «\ -DSTRICT\ » spécifie que la macro STRICT doit
|
|
être définie lors de la compilation des sources.
|
|
Finalement, un Makefile est créé.
|
|
.PP
|
|
L'étape suivante serait :
|
|
.PP
|
|
$ make
|
|
.PP
|
|
Si vous obtenez des erreurs de compilation à ce moment (ce qui est plus que
|
|
probable pour un projet d'une taille raisonnable), vous devriez consulter
|
|
le guide d'utilisateur Winelib pour trouver des moyens de les résoudre.
|
|
.PP
|
|
Pour un projet utilisant les MFC, vous devriez plutôt exécuter les commandes
|
|
suivantes\ :
|
|
.PP
|
|
$ winemaker --lower-uppercase --mfc .
|
|
.br
|
|
$ make
|
|
.PP
|
|
Pour un fichier projet existant, vous devriez exécuter les commandes suivantes :
|
|
.PP
|
|
$ winemaker monprojet.dsp
|
|
.br
|
|
$ make
|
|
.PP
|
|
|
|
.SH LIMITATIONS / PROBLÈMES
|
|
.PP
|
|
Dans certains cas, vous devrez éditer manuellement le Makefile ou les fichiers
|
|
sources.
|
|
.PP
|
|
En supposant que l'exécutable ou la bibliothèque windows est disponible, on peut
|
|
utiliser
|
|
.B winedump
|
|
pour en déterminer le type (graphique ou en mode console) et les
|
|
bibliothèques auxquelles il est lié (pour les exécutables), ou quelles fonctions
|
|
elle exporte (pour les bibliothèques). On pourrait ensuite restituer tous ces
|
|
réglages pour la cible Winelib correspondante.
|
|
.PP
|
|
De plus,
|
|
.B winemaker
|
|
n'est pas très apte à trouver la bibliothèque contenant l'exécutable : elle doit
|
|
être soit dans le répertoire courant, soit dans un des répertoires de
|
|
.IR LD_LIBRARY_PATH .
|
|
.PP
|
|
.B winemaker
|
|
ne prend pas encore en charge les fichiers de messages, ni le compilateur
|
|
de messages.
|
|
.PP
|
|
|
|
.SH VOIR AUSSI
|
|
.PP
|
|
Le guide utilisateur de Winelib :
|
|
.PP
|
|
http://www.winehq.org/docs/winelib-guide/index
|
|
.PP
|
|
.BR wine (1)
|
|
.PP
|
|
|
|
.SH AUTEURS
|
|
François Gouget pour CodeWeavers
|
|
.PP
|
|
Dimitrie O. Paun
|
|
.PP
|
|
André Hentschel
|
|
.PP
|