Projet mkd/Cygwin

De Wiki EELL.

Cette page n'est pas finie. Veuillez considérer le plan et le contenu comme incomplets et en préparation, temporaires et sujets à caution. Si vous souhaitez participer, il vous est recommandé de consulter sa page de discussion au préalable.

Retour vers les fichiers en développement

Sommaire

[masquer]

Remarques

_README-Cywin64-2015.txt 
  • Note : Les paquets make et gcc doivent être installés ainsi que le paquet gettext pour la version multilingue
Make mkd.exe version 2015 for cygwin under Windows 10.
------------------------------------------------------

This version 2015 update the release 2013 

version.h :
In english version (mkd_cywin_mkd_only), the Line GETTEXT is commented.
In multilingual version (mkd_cygwin_multilang), the line GETTEXT is uncommented.

Perform mkd.exe only under cygwin :
------------------------------------- 
you can compile this version with the command ./mkd_cygwin_only.bash with the _CYGWIN_cmd (konsole for cygwin)
this version use the normal Makefile with 
//#define GETTEXT ( commented ) in version.h
#define MinGW ( uncommented ) in version.h


Perform mkd.exe under Windows_10 and under cygwin :
---------------------------------------------------- 
you can compile the new version ./mkd_cygwin_windows.bash in the _CYGWIN_cmd (konsole for cygwin)
this version use mkd_cygwin_windows.mak with the gcc windows option -mno-cygwin
 and :
#define version
//#define GETTEXT ( commented ) in version.h
#define MinGW ( uncommented ) in version.h


Perform mkd.exe in multilingual version under cygwin :
-----------------------------------------------------
Compile the new version with the command ./mkd_multilang.bash in the _CYGWIN_cmd (konsole for cygwin)
This version use mkd_multilang.mak with the options :
CFLAGS  = -I/usr/i686-pc-cygwin/sys-root/usr/include 
LDFLAGS = -L/usr/i686-pc-cygwin/sys-root/usr/lib
#define GETTEXT uncommented in version.h
#define MinGW uncommented in version.h

Versions (en)

Version Windows + Cygwin

mkd_cygwin_windows.bash 
#!/bin/bash
# file: mkd_cygwin_windows.bash for cygwin64 5 Nov 2015
make -f mkd_cygwin_windows.mak 
make -f mkd_cygwin_windows.mak clean 
make -f mkd_cygwin_windows.mak copydoc
mkd_cygwin_windows.mak 
# file: mkd_cygwin_windows.mak 
# (Makefile pour cygwin et windows_10, mkd.exe version 151105)
# problem with obsolete option -mno-cygwin
#
# terminal command : 
# make -f mkd_cygwin_windows.mak
# make -f mkd_cygwin_windows.mak clean
# make -f mkd_cygwin_windows.mak copydoc
#
# create nov 5,2015 by JPL for cygwin64
# amended November 6,2015 by Clara
# modified ... by ... for
# 
# Attention: avant de compiler, il faut valider les options de compilation
# dans version.h (notamment version UNIX ou version PC MinGW ainsi que la version multilangue avec GETTEXT)
#
# i386 and x86-64 Windows Options :
# -mconsole -mcygwin -mno-cygwin -mdll -mnop-fun-dllimport
# -mthread -municode -mwin32 -mwindows
# -fno-set-stack-executable
#
######################################

PGM     = mkd.exe
CC      = cc
BINDIR  = /usr/bin
DOCDIR  = /usr/share/doc
BINMODE = 755

SRCS    = mkd.c asm.c basic.c cpp.c fortran.c pascal.c shell.c tri.c
HDRS    = version.h mkd.h asm.h basic.h cpp.h fortran.h pascal.h shell.c \
find.inc.c find.inc.h tri.h
OBJS    = mkd.o asm.o basic.o cpp.o fortran.o pascal.o shell.o tri.o
LIBS    =
CFLAGS  = -mwindows -m64 
# -mno-cygwin
LDFLAGS = -mwindows -m64 
# -mno-cygwin
SPLINTFLAG = 

#install: $(BINDIR)/$(PGM) # $(MANUALS) 

$(BINDIR)/$(PGM): $(SRCS) $(HDRS)
	-@echo "*********** update $(PGM) :"
	$(CC) $(CFLAGS) $(SRCS) -c
#	$(CC) $(CFLAGS) -o $(PGM) $(SRCS) -c
	$(CC) $(LDFLAGS) -o $(PGM) $(OBJS) $(LIBS)
	# clean ASM and LINK reloc :
	-@strip $(PGM) 	
  #
	-@echo "***********  update $(BINDIR)/mkd.exe:" 		
	# install PGM in BINDIR
	-@if [ -d $(BINDIR) ]; then \
		chmod $(BINMODE) $(PGM); \
		cp -f $(PGM) $(BINDIR)/$(PGM); \
		#if [ $(BINDIR) != "/bin" ]; then \
		#rm -f /bin/$(PGM); \
		#ln -s $(BINDIR)/$(PGM) /bin/$(PGM); \
		#fi \
	else \
		echo "couldn't find $(BINDIR)";\
	fi
  #
  
copydoc:
	-@echo "***********  update $(DOCDIR)/mkd:"
	-@if [ -d $(DOCDIR) ]; then \
		if [ ! -d $(DOCDIR)/mkd ]; then \
			mkdir $(DOCDIR)/mkd; \
			cp -rf doc/* $(DOCDIR)/mkd/.; \
		#fi \
		else if [ -d $(DOCDIR)/mkd ]; then \
			cp -rf doc/* $(DOCDIR)/mkd/.; \
			fi \
		fi \
	else \
		echo "couldn't find $(DOCDIR)"; \
	fi  

clean:
	rm -f $(OBJS)

version multilingue

Note : Les paquets make, gcc et gettext doivent être installés

La compilation avec cygwin permet normalement de créer des version multilingues de mkd.exe avec gettext.

Cygwin X86_64

Ce projet à l'étude en fin 2015 n'a pas abouti faute de librairies associées à gettext dans la version cygwin X86_64.

Cygwin X86

Cette version n'a pas été évaluée en fin 2015

Il semble que ces libraires soient présentes dans la version i686.

Sous versions 32 bits X86 il faut dé-commenter gettext dans version.h et de mettre à jour le numéro de version
Outils personnels
Catégories
Discussions