LIBS=../../libcrypto
-SOURCE[../../libcrypto]=wp_dgst.c {- $target{wp_asm_src} -}
-BEGINRAW[Makefile]
-{- $builddir -}/wp-mmx.s: {- $sourcedir -}/asm/wp-mmx.pl {- $sourcetop -}/crypto/perlasm/x86asm.pl
- CC="$(CC)" $(PERL) {- $sourcedir -}/asm/wp-mmx.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
+$WPASM=wp_block.c
+IF[{- !$disabled{asm} -}]
+ IF[{- $config{processor} ne "386" -}]
+ $WPASM_x86=wp_block.c wp-mmx.s
+ $WPDEF_x86=WHIRLPOOL_ASM
+ ENDIF
+ $WPASM_x86_64=wp-x86_64.s
+ $WPDEF_x86_64=WHIRLPOOL_ASM
-{- $builddir -}/wp-x86_64.s: {- $sourcedir -}/asm/wp-x86_64.pl
- CC="$(CC)" $(PERL) {- $sourcedir -}/asm/wp-x86_64.pl $(PERLASM_SCHEME) > $@
-ENDRAW[Makefile]
+ # Now that we have defined all the arch specific variables, use the
+ # appropriate one, and define the appropriate macros
+ IF[$WPASM_{- $target{asm_arch} -}]
+ $WPASM=$WPASM_{- $target{asm_arch} -}
+ $WPDEF=$WPDEF_{- $target{asm_arch} -}
+ ENDIF
+ENDIF
+
+SOURCE[../../libcrypto]=wp_dgst.c $WPASM
+DEFINE[../../libcrypto]=$WPDEF
+
+GENERATE[wp-mmx.s]=asm/wp-mmx.pl \
+ $(PERLASM_SCHEME) $(LIB_CFLAGS) $(LIB_CPPFLAGS) $(PROCESSOR)
+DEPEND[wp-mmx.s]=../perlasm/x86asm.pl
+
+GENERATE[wp-x86_64.s]=asm/wp-x86_64.pl $(PERLASM_SCHEME)