Re: [Solaris_fr] OpenSSL 0.97e

2004-12-08 Par sujet Christian Pelissier


>suggestion "triviale": utiliser gnu make?
C'est la première chose que je fais quand make Sun ne marche pas. Parfois avec
succès mais pas ici.

En fait il faut éditer tous les fips/*/Makefile et quoter la où c'est oublié.

Cette version e est un peu baclée.




--
Christian Pélissier
Office National d'Études et de Recherches Aérospatiales BP 72 92322 Chatillon
Tel: 33 1 46 73 44 19, Fax: 33 1 46 73 41 50

___
Solaris_fr liste de diffusion en français pour Solaris, sur toutes architectures
Solaris_fr@x86.sun.com
http://x86.sun.com/mailman/listinfo/solaris_fr



Re: [Solaris_fr] OpenSSL 0.97e

2004-12-07 Par sujet Gérard Henry
Christian Pelissier wrote:

Conclusion le if test ne sert à rien. Mais cela ne résout pas mon PB puisque
le Makefile est généré par le make install à la racine.
suggestion "triviale": utiliser gnu make?
___
Solaris_fr liste de diffusion en français pour Solaris, sur toutes architectures
Solaris_fr@x86.sun.com
http://x86.sun.com/mailman/listinfo/solaris_fr


Re: [Solaris_fr] OpenSSL 0.97e

2004-12-07 Par sujet Laurent Blume
Christian Pelissier wrote:
[snip]
Conclusion le if test ne sert à rien. Mais cela ne résout pas mon PB puisque
le Makefile est généré par le make install à la racine.
Il y a eu une discussion sur la liste OpenSSL à ce sujet. C'est corrigé 
pour les prochaines versions.

Robert Bannocks wrote:
> I get this too if you quote the $(EXHEADER) to be "$(EXHEADER)" in the
> install section of the files listed below it compiles and installs ok.
>
> Files:
>
> ./fips/aes/Makefile
> ./fips/des/Makefile
> ./fips/dh/Makefile
> ./fips/dsa/Makefile
> ./fips/rsa/Makefile
> ./fips/sha1/Makefile
>
> Looks as though it is time for openssl-0.9.7f!
>
> RB
Aussi cet autre point:
[EMAIL PROTECTED] wrote:
> I also had a problem with installing fips/des;  the Makefile in des
> had a space after the \
Espérant que ce soit utile,
Laurent
--
A hundred thousand lemmings can't be wrong!
___
Solaris_fr liste de diffusion en français pour Solaris, sur toutes architectures
Solaris_fr@x86.sun.com
http://x86.sun.com/mailman/listinfo/solaris_fr


Re: [Solaris_fr] OpenSSL 0.97e

2004-12-07 Par sujet Christian Pelissier


 
>et cette commande est passee a sh et sh produit une erreur car il attend
>quelque chose apres "for i in". Donc il faudrait faire qq. chose comme:
>
> @if test -n "$(EXHEADER)"; then \
>   for i in $$EXHEADER ; \
>   do  \
> (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
> chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
>   done; \
> fi

Normalement $(EXHEADER) c'est une variable  Makefile alors que $$EXHEADER
c'est une variable shell  donc c'est bien $(EXHEADER) mais il faut aussi le 
mettre entre ""
 
Le makefile

EXHEADER=
EXHEADER= a b c

install1:
if test -n "$(EXHEADER)" ; then \
for i in "$(EXHEADER)" ; \
do  \
(echo $$i ; \
echo $$i ); \
done; \
fi

install2:
if test -n "$(EXHEADER)" ; then \
for i in $$EXHEADER ; \
do  \
(echo $$i ; \
echo $$i ); \
done; \
fi





# make install1 install2
if test -n "a b c" ; then \
for i in "a b c" ; \
do  \
(echo $i ; \
echo $i ); \
done; \
fi
a b c
a b c
if test -n "a b c" ; then \
for i in $EXHEADER ; \  <<< !OK on ne peut faire cela qu'avec une var 
do  \du shell
(echo $i ; \
echo $i ); \
done; \
fi




Avec la variable à vide :

 make install1 install2
if test -n "" ; then \
for i in "" ; \
do  \
(echo $i ; \
echo $i ); \
done; \
fi
if test -n "" ; then \
for i in $EXHEADER ; \
do  \
(echo $i ; \
echo $i ); \
done; \
fi



Conclusion le if test ne sert à rien. Mais cela ne résout pas mon PB puisque
le Makefile est généré par le make install à la racine.





--
Christian Pélissier
Office National d'Études et de Recherches Aérospatiales BP 72 92322 Chatillon
Tel: 33 1 46 73 44 19, Fax: 33 1 46 73 41 50

___
Solaris_fr liste de diffusion en français pour Solaris, sur toutes architectures
Solaris_fr@x86.sun.com
http://x86.sun.com/mailman/listinfo/solaris_fr



Re: [Solaris_fr] OpenSSL 0.97e

2004-12-07 Par sujet Alexandre Chartre - Solaris Sustaining and Engineering
> Si je sors ce bout ce code dans un fichier
> X=""
> if test -n "$X"; then \
>   for i in $X  ; \
>   do  \
> (echo $$i ; \
>  echo $$i ); \
>   done; \
> fi
>
> il fonctionne avec tous les shell !
Oui mais sans $X ca ne marche pas:
if test -n ""; then \
  for i in  ; \
  do  \
(echo $$i ; \
 echo $$i ); \
  done; \
fi
=> ne marche pas
Le probleme est que $(EXHEADER) est evalue et remplace par make et non
pas par le sh. Donc:
@if test -n "$(EXHEADER)"; then \
  for i in $(EXHEADER) ; \
  do  \
(cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
  done; \
fi
devient:
if test -n ""; then \
  for i in  ; \
  do  \
(cp $i /usr/local/ssl/include/openssl/$i; \
chmod 644 /usr/local/ssl/include/openssl/$i ); \
  done; \
fi
et cette commande est passee a sh et sh produit une erreur car il attend
quelque chose apres "for i in". Donc il faudrait faire qq. chose comme:
@if test -n "$(EXHEADER)"; then \
  for i in $$EXHEADER ; \
  do  \
(cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
  done; \
fi
alex.

___
Solaris_fr liste de diffusion en français pour Solaris, sur toutes architectures
Solaris_fr@x86.sun.com
http://x86.sun.com/mailman/listinfo/solaris_fr


[Solaris_fr] OpenSSL 0.97e

2004-12-07 Par sujet Christian Pelissier
J'ai une erreur incompréhensible dans le make install du dernier
Openssl 0.97e. Une idée ?

L'erreur se passe dans fips/sha1

make install
sh: erreur de syntaxe ligne 2: `;' inattendue
*** Error code 2
make: Fatal error: Command failed for target `install'


Extrait du Makefile :

EXHEADER=
HEADER= $(EXHEADER) fips_sha_locl.h fips_md32_common.h

install:
@if test -n "$(EXHEADER)"; then \
  for i in $(EXHEADER) ; \
  do  \
(cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
  done; \
fi


Je ne comprends pas pourquoi on passe dans la boucle for puisqu'on teste
avant et que si ce n'est pas vide on ne dois pas la faire.
Si j'enlève le @ devant le if

make install

if test -n ""; then \
  for i in  ; \
  do  \
(cp $i /usr/local/ssl/include/openssl/$i; \
chmod 644 /usr/local/ssl/include/openssl/$i ); \
  done; \
fi
sh: erreur de syntaxe ligne 2: `;' inattendue
*** Error code 2
make: Fatal error: Command failed for target `install'

man de test
  -n string
True if the length of string is non-zero.

Si je sors ce bout ce code dans un fichier 
X=""
if test -n "$X"; then \
  for i in $X  ; \
  do  \
(echo $$i ; \
 echo $$i ); \
  done; \
fi

il fonctionne avec tous les shell !





--
Christian Pélissier
Office National d'Études et de Recherches Aérospatiales BP 72 92322 Chatillon
Tel: 33 1 46 73 44 19, Fax: 33 1 46 73 41 50

___
Solaris_fr liste de diffusion en français pour Solaris, sur toutes architectures
Solaris_fr@x86.sun.com
http://x86.sun.com/mailman/listinfo/solaris_fr