+{- use File::Spec::Functions qw/catdir catfile/; -}
LIBS=../libcrypto
SOURCE[../libcrypto]=\
cryptlib.c mem.c mem_dbg.c cversion.c ex_data.c cpt_err.c \
ppccpuid.pl pariscid.pl alphacpuid.pl arm64cpuid.pl armv4cpuid.pl
DEPEND[cversion.o]=buildinf.h
+
+BEGINRAW[descrip.mms]
+[.crypto]buildinf.h : configdata.pm
+ $(PERL) {- catfile(catdir($sourcedir, "[-]"), "util", "mkbuildinf.pl") -} "$(CC) $(CFLAGS)" "$(PLATFORM)" > [.crypto]buildinf.h
+ENDRAW[descrip.mms]
+
+BEGINRAW[Makefile]
+crypto/buildinf.h : configdata.pm
+ $(PERL) $(SRCDIR)/util/mkbuildinf.pl "$(CC) $(CFLAGS_Q)" "$(PLATFORM)" > crypto/buildinf.h
+
+##### APPLINK, UPLINK and CPUID assembler implementations
+
+{- $builddir -}/uplink-x86.s: $(SRCDIR)/ms/uplink-x86.pl
+ CC="$(CC)" $(PERL) $(SRCDIR)/ms/uplink-x86.pl $(PERLASM_SCHEME) > $@
+
+{- $builddir -}/x86cpuid.s: {- $sourcedir -}/x86cpuid.pl {- $sourcedir -}/perlasm/x86asm.pl
+ CC="$(CC)" $(PERL) {- $sourcedir -}/x86cpuid.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
+
+{- $builddir -}/x86_64cpuid.s: {- $sourcedir -}/x86_64cpuid.pl
+ CC="$(CC)" $(PERL) {- $sourcedir -}/x86_64cpuid.pl $(PERLASM_SCHEME) > $@
+{- $builddir -}/ia64cpuid.s: {- $sourcedir -}/ia64cpuid.S
+ $(CC) $(CFLAGS) -E {- $sourcedir -}/ia64cpuid.S > $@
+{- $builddir -}/ppccpuid.s: {- $sourcedir -}/ppccpuid.pl
+ CC="$(CC)" $(PERL) {- $sourcedir -}/ppccpuid.pl $(PERLASM_SCHEME) $@
+{- $builddir -}/pariscid.s: {- $sourcedir -}/pariscid.pl
+ CC="$(CC)" $(PERL) {- $sourcedir -}/pariscid.pl $(PERLASM_SCHEME) $@
+{- $builddir -}/alphacpuid.s: {- $sourcedir -}/alphacpuid.pl
+ (preproc=$$$$.$@.S; trap "rm $$preproc" INT; \
+ CC="$(CC)" $(PERL) {- $sourcedir -}/alphacpuid.pl > $$preproc && \
+ $(CC) -E -P $$preproc > $@ && rm $$preproc)
+{- $builddir -}/arm64cpuid.S: {- $sourcedir -}/arm64cpuid.pl
+ CC="$(CC)" $(PERL) {- $sourcedir -}/arm64cpuid.pl $(PERLASM_SCHEME) > $@
+{- $builddir -}/armv4cpuid.S: {- $sourcedir -}/armv4cpuid.pl
+ CC="$(CC)" $(PERL) {- $sourcedir -}/armv4cpuid.pl $(PERLASM_SCHEME) > $@
+ENDRAW[Makefile]