Jump to content

Pyrex

Members
  • Posts

    2
  • Joined

  • Last visited

Everything posted by Pyrex

  1. I just need some help editing the makefile to compile with cuda. # # This file is part of John the Ripper password cracker, # Copyright (c) 1996-2011 by Solar Designer # # ...with changes in the jumbo patch, by various authors # CC = gcc AS = $(CC) LD = $(CC) CPP = $(CC) CP = cp LN = ln -f -s RM = rm -f TR = tr SED = sed NULL = /dev/null CPPFLAGS = -E ## Uncomment the TWO lines below for MPI (can be used together with OMP as well) ## For experimental MPI_Barrier support, add -DJOHN_MPI_BARRIER too. ## For experimental MPI_Abort support, add -DJOHN_MPI_ABORT too. CC = mpicc -DHAVE_MPI -DJOHN_MPI_ABORT -DJOHN_MPI_BARRIER MPIOBJ = john-mpi.o OMPFLAGS = # gcc with OpenMP #OMPFLAGS = -fopenmp #OMPFLAGS = -fopenmp -msse2 # Sun Studio with OpenMP (set the OMP_NUM_THREADS env var at runtime) #OMPFLAGS = -xopenmp # icc with OpenMP (for make target linux-x86-64-icc) #ICCOMPFLAGS = -openmp # NSS (and NSPR) flag, un-comment if installed (needed for mozilla format) #HAVE_NSS = -DHAVE_NSS `pkg-config --cflags nss` # Change sm_10 to sm_20 if you have Fermi support (400 series or later) NVCC_FLAGS = -c -Xptxas -v -arch sm_10 CUDAPATH = /usr/local/cuda/lib CUDA64PATH = /usr/local/cuda/lib64 ifdef NVIDIA_CUDA OCLROOT = $(NVIDIA_CUDA) else OCLROOT = /usr/local/cuda endif ifdef AMDAPPSDKROOT AMDAPP = -DAMDAPPSDK OCLROOT = $(AMDAPPSDKROOT) endif ifdef ATISTREAMSDKROOT AMDAPP = -DAMDAPPSDK OCLROOT = $(ATISTREAMSDKROOT) endif ifdef HAVE_NSS NSS_LDFLAGS = `pkg-config --libs nss` endif CFLAGS = -c -Wall -O2 -fomit-frame-pointer -Wdeclaration-after-statement -I/usr/local/include $(HAVE_NSS) $(OMPFLAGS) $(JOHN_CFLAGS) $(AMDAPP) # -DHAVE_SKEY # CFLAGS for use on the main john.c file only CFLAGS_MAIN = $(CFLAGS) ASFLAGS = -c $(JOHN_CFLAGS) $(OMPFLAGS) LDFLAGS = -s -L/usr/local/lib -L/usr/local/ssl/lib -lssl -lcrypto -lm -lz $(JOHN_CFLAGS) $(OMPFLAGS) $(NSS_LDFLAGS) # -lskey LDFLAGS_SOLARIS = -lrt -lnsl -lsocket -lm -lz -lcrypto -lssl LDFLAGS_MKV = -s -lm OPT_NORMAL = -funroll-loops # Remove the "-Os" if you're using an ancient version of gcc OPT_INLINE = -Os -funroll-loops -finline-functions # Works with Solaris make, and GNU make PLUGFORMATS_SRCS: sh =echo *_plug.c PLUGFORMATS_SRCS += $(wildcard *_plug.c) PLUGFORMATS_OBJS = $(PLUGFORMATS_SRCS:.c=.o) JOHN_OBJS = \ $(MPIOBJ) \ DES_fmt.o DES_std.o DES_bs.o DES_bs_b.o \ BSDI_fmt.o \ MD5_fmt.o MD5_std.o \ BF_fmt.o BF_std.o \ AFS_fmt.o \ LM_fmt.o \ trip_fmt.o \ timer.o \ md5_go.o \ md5_eq.o \ md5.o \ rc4.o \ hmacmd5.o \ base64.o \ md4.o \ dynamic_fmt.o dynamic_parser.o dynamic_preloads.o dynamic_utils.o \ rawSHA224_fmt.o rawSHA256_fmt.o rawSHA384_fmt.o rawSHA512_fmt.o \ hmacMD5_fmt.o hmacSHA1_fmt.o \ hmacSHA224_fmt.o hmacSHA256_fmt.o hmacSHA384_fmt.o hmacSHA512_fmt.o \ episerver_fmt.o keepass_fmt.o pwsafe_fmt.o \ XSHA512_fmt.o \ hmailserver_fmt.o \ dragonfly3_fmt.o \ dragonfly4_fmt.o \ drupal7_fmt.o \ django_fmt.o \ cryptsha256_fmt.o cryptsha512_fmt.o \ SybaseASE_fmt.o \ SKEY_fmt.o \ ssh_fmt.o ssh2john.o \ pdf_fmt.o pdf2john.o pdfcrack_common.o pdfcrack_md5.o pdfparser.o pdfcrack.o pdfcrack_rc4.o \ unrarcmd.o unrarfilter.o unrarhlp.o unrar.o unrarppm.o unrarvm.o \ rar_fmt.o rar2john.o \ rawSHA0_fmt.o \ zip_fmt.o zip2john.o gladman_hmac.o gladman_pwd2key.o \ racf2john.o \ pwsafe2john.o \ keepass2john.o \ keychain2john.o \ wpapsk_fmt.o hccap2john.o \ mozilla_fmt.o KeyDBCracker.o mozilla_des.o lowpbe.o mozilla2john.o \ $(PLUGFORMATS_OBJS) \ rawSHA1_ng_fmt.o \ plugin.o \ dummy.o \ batch.o bench.o charset.o common.o compiler.o config.o cracker.o \ crc32.o external.o formats.o getopt.o idle.o inc.o john.o list.o \ loader.o logger.o math.o memory.o misc.o options.o params.o path.o \ recovery.o rpp.o rules.o signals.o single.o status.o tty.o wordlist.o \ mkv.o mkvlib.o \ fake_salts.o \ win32_memmap.o \ unicode.o \ unshadow.o \ unafs.o \ undrop.o \ unique.o OCL_OBJS = \ common-opencl.o common_opencl_pbkdf2.o opencl_mysqlsha1_fmt.o \ opencl_cryptmd5_fmt.o opencl_phpass_fmt.o opencl_rawsha1_fmt.o \ opencl_nt_fmt.o opencl_rawmd5_fmt.o opencl_nsldaps_fmt.o \ opencl_cryptsha512_fmt.o opencl_mscash2_fmt.o opencl_wpapsk_fmt.o \ opencl_xsha512_fmt.o opencl_rawsha512_fmt.o opencl_bf_std.o \ opencl_bf_fmt.o opencl_pwsafe_fmt.o opencl_rawmd4_fmt.o CUDA_OBJS = \ cuda_common.o \ cuda_cryptmd5_fmt.o cuda_cryptmd5.o \ cuda_phpass_fmt.o cuda_phpass.o \ cuda_cryptsha256_fmt.o cuda_cryptsha256.o \ cuda_cryptsha512_fmt.o cuda_cryptsha512.o \ cuda_mscash2_fmt.o cuda_mscash2.o \ cuda_rawsha256_fmt.o cuda_rawsha256.o \ cuda_rawsha224_fmt.o cuda_rawsha224.o \ cuda_mscash_fmt.o cuda_mscash.o \ cuda_xsha512_fmt.o cuda_xsha512.o \ cuda_wpapsk_fmt.o cuda_wpapsk.o \ cuda_rawsha512_fmt.o cuda_rawsha512.o \ cuda_pwsafe_fmt.o cuda_pwsafe.o BENCH_DES_OBJS_ORIG = \ DES_fmt.o DES_std.o BENCH_DES_OBJS_DEPEND = \ $(BENCH_DES_OBJS_ORIG) BENCH_DES_BS_OBJS_DEPEND = \ DES_bs_b.o BENCH_MD5_OBJS_DEPEND = \ MD5_fmt.o MD5_std.o BENCH_BF_OBJS_DEPEND = \ BF_fmt.o BF_std.o BENCH_OBJS = \ $(MPIOBJ) \ $(BENCH_DES_OBJS_DEPEND) \ DES_bsg.o $(BENCH_DES_BS_OBJS_DEPEND) \ $(BENCH_MD5_OBJS_DEPEND) \ $(BENCH_BF_OBJS_DEPEND) \ bench-t.o best.o common.o config_g.o formats_g.o math.o memory.o \ miscnl.o params.o path.o signals.o tty.o PARA_BENCH_32_OBJS = \ bench-t.o para-best.o common.o config_g.o formats_g.o math.o memory.o \ miscnl.o params.o path.o signals.o tty.o sha1-mmx.o md4-mmx.o \ md5-mmx.o x86.S $(BENCH_PARA_DEPEND) PARA_BENCH_OBJS = \ bench-t.o para-best.o common.o config_g.o formats_g.o math.o memory.o \ miscnl.o params.o path.o signals.o tty.o $(BENCH_PARA_DEPEND) BENCH_PARA_DEPEND = \ sse-intrinsics.o rawMD4_fmt_plug.o rawMD5_fmt_plug.o rawSHA1_fmt_plug.o MD5_fmt.o MD5_std.o GENMKVPWD_OBJS = \ genmkvpwd.o mkvlib.o memory.o miscnl.o PROJ = ../run/john ../run/unshadow ../run/unafs ../run/unique ../run/undrop \ ../run/ssh2john ../run/pdf2john ../run/rar2john ../run/zip2john \ ../run/genmkvpwd ../run/mkvcalcproba ../run/calc_stat \ ../run/tgtsnarf ../run/racf2john ../run/mozilla2john ../run/hccap2john \ ../run/pwsafe2john ../run/raw2dyna ../run/keepass2john \ ../run/keychain2john \ john.local.conf PROJ_DOS = ../run/john.bin ../run/john.com \ ../run/unshadow.com ../run/unafs.com ../run/unique.com \ ../run/undrop.com \ ../run/ssh2john.com ../run/pdf2john.com ../run/rar2john.com ../run/zip2john \ ../run/racf2john.com ../run/mozilla2john.com ../run/hccap2john.com \ ../run/pwsafe2john.com ../run/keepass2john.com \ ../run/keychain2john.com \ john.local.conf PROJ_WIN32 = ../run/john.exe \ ../run/unshadow.exe ../run/unafs.exe ../run/unique.exe \ ../run/undrop.exe \ ../run/ssh2john.exe ../run/pdf2john.exe ../run/rar2john.exe ../run/zip2john.exe \ ../run/genmkvpwd.exe ../run/mkvcalcproba.exe ../run/calc_stat.exe \ ../run/racf2john.exe ../run/mozilla2john.exe ../run/hccap2john.exe \ ../run/pwsafe2john.exe ../run/raw2dyna.exe ../run/keepass2john.exe \ ../run/keychain2john.exe \ john.local.conf PROJ_WIN32_MINGW = ../run/john-mingw.exe \ ../run/unshadow.exe ../run/unafs.exe ../run/unique.exe \ ../run/undrop.exe \ ../run/ssh2john.exe ../run/pdf2john.exe ../run/rar2john.exe ../run/zip2john.exe \ ../run/genmkvpwd.exe ../run/mkvcalcproba.exe ../run/calc_stat.exe \ ../run/racf2john.exe ../run/mozilla2john.exe ../run/hccap2john.exe \ ../run/pwsafe2john.exe ../run/raw2dyna.exe ../run/keepass2john.exe \ ../run/keychain2john.exe \ john.local.conf default: @echo "To build John the Ripper, type:" @echo " make clean SYSTEM" @echo "where SYSTEM can be one of the following:" @echo "([i] is an optional letter for pre-built intrinsics, eg. -sse2i vs -sse2):" @echo "linux-x86-64-native Linux, x86-64 'native' (all CPU features you've got)" @echo "linux-x86-64-gpu Linux, x86-64 'native', CUDA and OpenCL (experimental)" @echo "linux-x86-64-opencl Linux, x86-64 'native', OpenCL (experimental)" @echo "linux-x86-64-cuda Linux, x86-64 'native', CUDA (experimental)" @echo "linux-x86-64-avx Linux, x86-64 with AVX (2011+ Intel CPUs)" @echo "linux-x86-64-xop Linux, x86-64 with AVX and XOP (2011+ AMD CPUs)" @echo "linux-x86-64[i] Linux, x86-64 with SSE2 (most common)" @echo "linux-x86-64-icc Linux, x86-64 compiled with icc" @echo "linux-x86-64-clang Linux, x86-64 compiled with clang" # @echo "linux-x86-64-clang-debug Linux, x86-64 compiled with clang (with debugging options) # @echo "linux-x86-64-32-native Linux, x86-64, 32-bit with everything (for regression tests)" # @echo "linux-x86-64-32-sse2asm Linux, x86-64, 32-bit with asm SSE2 (for regression tests)" # @echo "linux-x86-64-32-sse2[i] Linux, x86-64, 32-bit with SSE2 (for regression tests)" # @echo "linux-x86-64-32-mmx Linux, x86-64, 32-bit with MMX (for regression tests)" # @echo "linux-x86-64-32-any Linux, x86-64, 32-bit (for regression tests)" @echo "linux-x86-gpu Linux, x86 32-bit with SSE2, CUDA and OpenCL (experimental)" @echo "linux-x86-opencl Linux, x86 32-bit with SSE2 and OpenCL (experimental)" @echo "linux-x86-cuda Linux, x86 32-bit with SSE2 and CUDA (experimental)" @echo "linux-x86-sse2[i] Linux, x86 32-bit with SSE2 (most common, 32-bit)" @echo "linux-x86-native Linux, x86 32-bit, with all CPU features you've got (not necessarily best)" @echo "linux-x86-mmx Linux, x86 32-bit with MMX (for old computers)" @echo "linux-x86-any Linux, x86 32-bit (for truly ancient computers)" @echo "linux-x86-clang Linux, x86 32-bit with SSE2, compiled with clang" # @echo "linux-x86-clang-debug Linux, x86 32-bit with SSE2, compiled with clang (with debugging options) @echo "linux-alpha Linux, Alpha" @echo "linux-sparc Linux, SPARC 32-bit" @echo "linux-ppc32-altivec Linux, PowerPC w/AltiVec (best)" @echo "linux-ppc32 Linux, PowerPC 32-bit" # @echo "linux-ppc64-altivec Linux, PowerPC 64-bit w/AltiVec" @echo "linux-ppc64 Linux, PowerPC 64-bit" @echo "linux-ia64 Linux, IA-64" @echo "freebsd-x86-64[i] FreeBSD, x86-64 with SSE2 (best)" @echo "freebsd-x86-sse2[i] FreeBSD, x86 with SSE2 (best if 32-bit)" @echo "freebsd-x86-mmx FreeBSD, x86 with MMX" @echo "freebsd-x86-any FreeBSD, x86" @echo "freebsd-alpha FreeBSD, Alpha" @echo "openbsd-x86-64[i] OpenBSD, x86-64 with SSE2 (best)" @echo "openbsd-x86-sse2[i] OpenBSD, x86 with SSE2 (best if 32-bit)" @echo "openbsd-x86-mmx OpenBSD, x86 with MMX" @echo "openbsd-x86-any OpenBSD, x86" @echo "openbsd-alpha OpenBSD, Alpha" @echo "openbsd-sparc64 OpenBSD, SPARC 64-bit (best)" @echo "openbsd-sparc OpenBSD, SPARC 32-bit" @echo "openbsd-ppc32 OpenBSD, PowerPC 32-bit" @echo "openbsd-ppc64 OpenBSD, PowerPC 64-bit" @echo "openbsd-pa-risc OpenBSD, PA-RISC" @echo "openbsd-vax OpenBSD, VAX" @echo "netbsd-sparc64 NetBSD, SPARC 64-bit" @echo "netbsd-vax NetBSD, VAX" @echo "solaris-sparc64-cc Solaris, SPARC V9 64-bit, cc (best)" @echo "solaris-sparc64-gcc Solaris, SPARC V9 64-bit, gcc" @echo "solaris-sparcv9-cc Solaris, SPARC V9 32-bit, cc" @echo "solaris-sparcv8-cc Solaris, SPARC V8 32-bit, cc" @echo "solaris-sparc-gcc Solaris, SPARC 32-bit, gcc" @echo "solaris-x86-64-cc Solaris, x86-64 with SSE2, cc" @echo "solaris-x86-64[i]-gcc Solaris, x86-64 with SSE2, gcc" @echo "solaris-x86-sse2-cc Solaris 9 4/04+, x86 with SSE2, cc" @echo "solaris-x86-sse2[i]-gcc Solaris 9 4/04+, x86 with SSE2, gcc" @echo "solaris-x86-mmx-cc Solaris, x86 with MMX, cc" @echo "solaris-x86-mmx-gcc Solaris, x86 with MMX, gcc" @echo "solaris-x86-any-cc Solaris, x86, cc" @echo "solaris-x86-any-gcc Solaris, x86, gcc" @echo "sco-x86-any-gcc SCO, x86, gcc" @echo "sco-x86-any-cc SCO, x86, cc" @echo "tru64-alpha Tru64 (Digital UNIX, OSF/1), Alpha" @echo "aix-ppc32 AIX, PowerPC 32-bit" @echo "macosx-x86-64 Mac OS X 10.5+, Xcode 3.0+, x86-64 with SSE2 (best)" @echo "macosx-x86-64-gpu Mac OS X 10.5+, Xcode 3.0+, x86-64 with SSE2, CUDA and OpenCL support" @echo "macosx-x86-64-opencl Mac OS X 10.5+, Xcode 3.0+, x86-64 with SSE2, OpenCL support" @echo "macosx-x86-64-cuda Mac OS X 10.5+, Xcode 3.0+, x86-64 with SSE2, CUDA support" @echo "macosx-x86-sse2 Mac OS X, x86 with SSE2" @echo "macosx-ppc32-altivec Mac OS X, PowerPC w/AltiVec (best)" @echo "macosx-ppc32 Mac OS X, PowerPC 32-bit" # @echo "macosx-ppc64-altivec Mac OS X, PowerPC 64-bit w/AltiVec" @echo "macosx-ppc64 Mac OS X 10.4+, PowerPC 64-bit" @echo "macosx-universal Mac OS X, Universal Binary (x86 + x86-64 + PPC)" @echo "hpux-pa-risc-gcc HP-UX, PA-RISC, gcc" @echo "hpux-pa-risc-cc HP-UX, PA-RISC, ANSI cc" @echo "irix-mips64-r10k IRIX, MIPS 64-bit (R10K) (best)" @echo "irix-mips64 IRIX, MIPS 64-bit" @echo "irix-mips32 IRIX, MIPS 32-bit" @echo "dos-djgpp-x86-mmx DOS, DJGPP, x86 with MMX" @echo "dos-djgpp-x86-any DOS, DJGPP, x86" @echo "win32-cygwin-x86-sse2[i] Win32, Cygwin, x86 with SSE2 (best)" @echo "win32-cygwin-x86-mmx Win32, Cygwin, x86 with MMX" @echo "win32-cygwin-x86-any Win32, Cygwin, x86" @echo "win32-mingw-x86-sse2[i] Win32, MinGW, x86 with SSE2 (best)" @echo "win32-mingw-x86-mmx Win32, MinGW, x86 with MMX" @echo "win32-mingw-x86-any Win32, MinGW, x86" @echo "beos-x86-sse2 BeOS, x86 with SSE2 (best)" @echo "beos-x86-mmx BeOS, x86 with MMX" @echo "beos-x86-any BeOS, x86" @echo "generic Any other Unix-like system with gcc" linux-x86-64-avx: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS_MAIN="$(CFLAGS) -DJOHN_AVX -DHAVE_CRYPT -DHAVE_DL" \ CFLAGS="$(CFLAGS) -mavx -DHAVE_CRYPT -DHAVE_DL" \ ASFLAGS="$(ASFLAGS) -mavx" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" linux-x86-64-xop: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS_MAIN="$(CFLAGS) -DJOHN_XOP -DHAVE_CRYPT -DHAVE_DL" \ CFLAGS="$(CFLAGS) -mxop -DHAVE_CRYPT -DHAVE_DL" \ ASFLAGS="$(ASFLAGS) -mxop" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" linux-x86-64-gpu: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) $(OCL_OBJS) $(CUDA_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -I$(OCLROOT)/include -DHAVE_CRYPT -DCL_VERSION_1_0 -DHAVE_CUDA -DHAVE_DL -march=native" \ ASFLAGS="$(ASFLAGS) -march=native" \ LDFLAGS="$(LDFLAGS) -L$(OCLROOT)/lib/x86_64 -L$(OCLROOT)/lib64 -L$(CUDA64PATH) -lcrypt -lOpenCL -ldl -lcudart -march=native" $(CP) opencl/*.cl ../run/ $(CP) opencl_*.h ../run/ linux-x86-64-opencl: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) $(OCL_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -I$(OCLROOT)/include -DHAVE_CRYPT -DCL_VERSION_1_0 -DHAVE_DL -march=native" \ ASFLAGS="$(ASFLAGS) -march=native" \ LDFLAGS="$(LDFLAGS) -L$(OCLROOT)/lib/x86_64 -L$(OCLROOT)/lib64 -lcrypt -lOpenCL -ldl -march=native" $(CP) opencl/*.cl ../run/ $(CP) opencl_*.h ../run/ linux-x86-64-cuda: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) $(CUDA_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL -DHAVE_CUDA -march=native" \ ASFLAGS="$(ASFLAGS) -march=native" \ LDFLAGS="$(LDFLAGS) -L$(CUDA64PATH) -lcrypt -ldl -lcudart -march=native" linux-x86-64-native: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL -march=native" \ ASFLAGS="$(ASFLAGS) -march=native" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl -march=native" linux-x86-64: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" linux-x86-64i: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics-64.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL -DUSING_ICC_S_FILE" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" linux-x86-64-clang: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS="-Wall -c -O2 -I/usr/include -msse2 -DHAVE_CRYPT -DHAVE_DL $(HAVE_NSS)" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" \ CPP="clang" CC="clang" AS="clang" LD="clang" linux-x86-64-clang-debug: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS="-Wall -Wdeclaration-after-statement -c -g -O1 -faddress-sanitizer -I/usr/include -msse2 -DHAVE_CRYPT -DHAVE_DL $(HAVE_NSS)" \ LDFLAGS="-L/usr/local/lib -L/usr/local/ssl/lib -lssl -lcrypto -lm -lz -lcrypt -ldl -faddress-sanitizer" \ CPP="clang" CC="clang" AS="clang" LD="clang" linux-x86-64-icc: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS="-c -fast -O2 -I/usr/include -static-intel -DHAVE_CRYPT -DHAVE_DL $(ICCOMPFLAGS) $(HAVE_NSS)" \ ASFLAGS="-c -xHost" \ LDFLAGS="-lm -lssl -lcrypto -ipo -static-intel -lcrypt -ldl $(ICCOMPFLAGS) -s" \ CPP="icc" CC="icc" AS="icc" LD="icc" linux-x86-64-32-native: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -m32 -msse2 -DHAVE_CRYPT -DHAVE_DL -march=native" \ ASFLAGS="$(ASFLAGS) -m32 -msse2 -march=native" \ LDFLAGS="$(LDFLAGS) -m32 -lcrypt -ldl -march=native" linux-x86-64-32-sse2: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -m32 -msse2 -DHAVE_CRYPT -DHAVE_DL" \ ASFLAGS="$(ASFLAGS) -m32 -msse2" \ LDFLAGS="$(LDFLAGS) -m32 -lcrypt -ldl" linux-x86-64-32-sse2asm: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ CFLAGS="$(CFLAGS) -m32 -msse2 -DHAVE_CRYPT -DHAVE_DL -DJOHN_DISABLE_INTRINSICS" \ ASFLAGS="$(ASFLAGS) -m32 -msse2" \ LDFLAGS="$(LDFLAGS) -m32 -lcrypt -ldl" linux-x86-64-32-sse2i: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ CFLAGS="$(CFLAGS) -m32 -msse2 -DHAVE_CRYPT -DHAVE_DL -DUSING_ICC_S_FILE" \ ASFLAGS="$(ASFLAGS) -m32 -msse2" \ LDFLAGS="$(LDFLAGS) -m32 -lcrypt -ldl" linux-x86-64-32-mmx: $(LN) x86-mmx.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ CFLAGS="$(CFLAGS) -m32 -DHAVE_CRYPT -DHAVE_DL" \ ASFLAGS="$(ASFLAGS) -m32" \ LDFLAGS="$(LDFLAGS) -m32 -lcrypt -ldl" linux-x86-64-32-any: $(LN) x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o" \ CFLAGS="$(CFLAGS) -m32 -DHAVE_CRYPT -DHAVE_DL" \ ASFLAGS="$(ASFLAGS) -m32" \ LDFLAGS="$(LDFLAGS) -m32 -lcrypt -ldl" linux-x86-avx: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS_MAIN="$(CFLAGS) -m32 -DJOHN_AVX -DHAVE_CRYPT" \ CFLAGS="$(CFLAGS) -m32 -mavx -DHAVE_CRYPT" \ ASFLAGS="$(ASFLAGS) -m32 -mavx" \ LDFLAGS="$(LDFLAGS) -m32 -lcrypt" linux-x86-xop: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS_MAIN="$(CFLAGS) -m32 -DJOHN_XOP -DHAVE_CRYPT" \ CFLAGS="$(CFLAGS) -m32 -mxop -DHAVE_CRYPT" \ ASFLAGS="$(ASFLAGS) -m32 -mxop" \ LDFLAGS="$(LDFLAGS) -m32 -lcrypt" linux-x86-gpu: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) $(OCL_OBJS) $(CUDA_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ CFLAGS="$(CFLAGS) -I$(OCLROOT)/include -DHAVE_CRYPT -DCL_VERSION_1_0 -DHAVE_CUDA -DHAVE_DL -DUSING_ICC_S_FILE" \ LDFLAGS="$(LDFLAGS) -L$(OCLROOT)/lib/x86 -L$(OCLROOT)/lib -L$(CUDAPATH) -lcrypt -lOpenCL -ldl -lcudart" $(CP) opencl/*.cl ../run/ $(CP) opencl_*.h ../run/ linux-x86-opencl: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) $(OCL_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ CFLAGS="$(CFLAGS) -I$(OCLROOT)/include -DHAVE_CRYPT -DCL_VERSION_1_0 -DHAVE_DL -DUSING_ICC_S_FILE" \ LDFLAGS="$(LDFLAGS) -L$(OCLROOT)/lib/x86 -L$(OCLROOT)/lib -lcrypt -lOpenCL -ldl" $(CP) opencl/*.cl ../run/ $(CP) opencl_*.h ../run/ linux-x86-cuda: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) $(CUDA_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL -DHAVE_CUDA -DUSING_ICC_S_FILE" \ LDFLAGS="$(LDFLAGS) -L$(CUDAPATH) -lcrypt -ldl -lcudart" linux-x86-native: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL -march=native" \ ASFLAGS="$(ASFLAGS) -march=native" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl -march=native" linux-x86-sse2: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -msse2 -DHAVE_CRYPT -DHAVE_DL" \ ASFLAGS="$(ASFLAGS) -msse2" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" linux-x86-sse2i: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ CFLAGS="$(CFLAGS) -msse2 -DHAVE_CRYPT -DHAVE_DL -DUSING_ICC_S_FILE" \ ASFLAGS="$(ASFLAGS) -msse2" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" linux-x86-mmx: $(LN) x86-mmx.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" linux-x86-any: $(LN) x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" linux-x86-clang: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS="-Wall -c -O2 -I/usr/include -msse2 -DHAVE_CRYPT -DHAVE_DL $(HAVE_NSS)" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" \ CPP="clang" CC="clang" AS="clang" LD="clang" linux-x86-clang-debug: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS="-Wall -Wdeclaration-after-statement -c -g -O1 -faddress-sanitizer -I/usr/include -msse2 -DHAVE_CRYPT -DHAVE_DL $(HAVE_NSS)" \ LDFLAGS="-L/usr/local/lib -L/usr/local/ssl/lib -lssl -lcrypto -lm -lz -lcrypt -ldl -faddress-sanitizer" \ CPP="clang" CC="clang" AS="clang" LD="clang" linux-alpha: $(LN) alpha.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o alpha.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" # This target is currently "undocumented" as ccc generates much slower # code for the large unrolled loops in John; let's hope it gets fixed. linux-alpha-ccc: $(LN) alpha.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o alpha.o" \ CC=ccc \ CFLAGS="-c -Wf,-switch,noil_schedule -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" \ OPT_NORMAL="-fast" \ OPT_INLINE="-O2 -arch host" linux-sparc: $(LN) sparc32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" linux-ppc32-altivec: $(LN) ppc32alt.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" \ OPT_INLINE="-finline-functions -finline-limit=4000 -maltivec" linux-ppc32: $(LN) ppc32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" # This is slightly slower than linux-ppc32-altivec for most hash types. linux-ppc64-altivec: $(LN) ppc64alt.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CFLAGS="$(CFLAGS) -m64 -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -m64 -lcrypt -ldl" \ OPT_INLINE="-finline-functions -finline-limit=4000 -maltivec" linux-ppc64: $(LN) ppc64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CFLAGS="$(CFLAGS) -m64 -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -m64 -lcrypt -ldl" \ OPT_INLINE="-finline-functions -finline-limit=4000" linux-ia64: $(LN) ia64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -DHAVE_DL" \ LDFLAGS="$(LDFLAGS) -lcrypt -ldl" freebsd-x86-64: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86-64.o sse-intrinsics.o" freebsd-x86-64i: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86-64.o sse-intrinsics-64.o" \ CFLAGS="$(CFLAGS) -DUSING_ICC_S_FILE" freebsd-x86-sse2: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ ASFLAGS="$(ASFLAGS) -DBSD" freebsd-x86-sse2i: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ CFLAGS="$(CFLAGS) -msse2 -DUSING_ICC_S_FILE" \ ASFLAGS="$(ASFLAGS) -msse2 -DBSD" \ freebsd-x86-mmx: $(LN) x86-mmx.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ ASFLAGS="$(ASFLAGS) -DBSD" freebsd-x86-any: $(LN) x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o" \ ASFLAGS="$(ASFLAGS) -DBSD" freebsd-x86-any-a.out: $(LN) x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o" \ ASFLAGS="$(ASFLAGS) -DUNDERSCORES -DALIGN_LOG -DBSD" freebsd-alpha: $(LN) alpha.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) alpha.o" openbsd-x86-64: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86-64.o sse-intrinsics.o" openbsd-x86-64i: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86-64.o sse-intrinsics-64.o" \ CFLAGS="$(CFLAGS) -DUSING_ICC_S_FILE" openbsd-x86-sse2: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ ASFLAGS="$(ASFLAGS) -DBSD" openbsd-x86-sse2i: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ CFLAGS="$(CFLAGS) -msse2 -DUSING_ICC_S_FILE" \ ASFLAGS="$(ASFLAGS) -msse2 -DBSD" openbsd-x86-mmx: $(LN) x86-mmx.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ ASFLAGS="$(ASFLAGS) -DBSD" openbsd-x86-any: $(LN) x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o" \ ASFLAGS="$(ASFLAGS) -DBSD" openbsd-x86-any-a.out: $(LN) x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o" \ ASFLAGS="$(ASFLAGS) -DUNDERSCORES -DALIGN_LOG -DBSD" openbsd-alpha: $(LN) alpha.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) alpha.o" openbsd-sparc64: $(LN) sparc64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CFLAGS="$(CFLAGS) -m64 -mcpu=ultrasparc" \ LDFLAGS="$(LDFLAGS) -m64" openbsd-sparc: $(LN) sparc32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) openbsd-ppc32: $(LN) ppc32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) openbsd-ppc64: $(LN) ppc64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CFLAGS="$(CFLAGS) -m64" \ LDFLAGS="$(LDFLAGS) -m64" \ OPT_INLINE="-finline-functions -finline-limit=4000" openbsd-pa-risc: $(LN) pa-risc.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CFLAGS="-c -Wall -O3 -fomit-frame-pointer" openbsd-vax: $(LN) vax.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) netbsd-sparc64: $(LN) sparc64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CFLAGS="$(CFLAGS) -m64 -mcpu=ultrasparc" \ LDFLAGS="$(LDFLAGS) -m64" netbsd-vax: $(LN) vax.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) solaris-sparc64-cc: $(RM) arch.h $(LN) sparc64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CC=cc \ CFLAGS="-c -fast -xarch=native64 -DHAVE_CRYPT $(OMPFLAGS)" \ LDFLAGS="-s -xarch=native64 $(OMPFLAGS) -lc $(LDFLAGS_SOLARIS)" \ OPT_NORMAL="" \ OPT_INLINE="-xinline=s1,s2,s3,s4,s5,s6,s7,s8" solaris-sparc64-gcc: $(RM) arch.h $(LN) sparc64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CFLAGS="$(CFLAGS) -m64 -mcpu=ultrasparc -DHAVE_CRYPT" \ LDFLAGS="$(LDFLAGS) -m64 $(LDFLAGS_SOLARIS)" solaris-sparcv9-cc: $(RM) arch.h $(LN) sparc32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CC=cc \ CFLAGS="-c -xO4 -xarch=v8plusa -xchip=ultra -DHAVE_CRYPT $(OMPFLAGS)" \ LDFLAGS="-s $(OMPFLAGS) -lc $(LDFLAGS_SOLARIS)" \ OPT_NORMAL="" \ OPT_INLINE="-xinline=s1,s2,s3,s4,s5,s6,s7,s8" solaris-sparcv8-cc: $(RM) arch.h $(LN) sparc32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CC=cc \ CFLAGS="-c -xO4 -xarch=v8 -DHAVE_CRYPT $(OMPFLAGS)" \ LDFLAGS="-s $(OMPFLAGS) -lc $(LDFLAGS_SOLARIS)" \ OPT_NORMAL="" \ OPT_INLINE="-xinline=s1,s2,s3,s4,s5,s6,s7,s8" solaris-sparc-gcc: $(RM) arch.h $(LN) sparc32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT" \ LDFLAGS="$(LDFLAGS) $(LDFLAGS_SOLARIS)" solaris-x86-64-cc: $(RM) arch.h $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CC=cc \ CFLAGS="-c -fast -xarch=native64 -DHAVE_CRYPT $(OMPFLAGS)" \ ASFLAGS="-c -xarch=native64 $(OMPFLAGS)" \ LDFLAGS="-s -xarch=native64 $(OMPFLAGS) $(LDFLAGS_SOLARIS)" \ OPT_NORMAL="" \ OPT_INLINE="-xinline=s1,s2,s3,s4,s5,s6,s7,s8" solaris-x86-64-gcc: $(RM) arch.h $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -m64 -DHAVE_CRYPT" \ ASFLAGS="$(CFLAGS) -m64" \ LDFLAGS="$(LDFLAGS) -m64 $(LDFLAGS_SOLARIS)" solaris-x86-64i-gcc: $(RM) arch.h $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o x86-64.o sse-intrinsics-64.o" \ CFLAGS="$(CFLAGS) -m64 -DHAVE_CRYPT -DUSING_ICC_S_FILE" \ ASFLAGS="$(CFLAGS) -m64" \ LDFLAGS="$(LDFLAGS) -m64 $(LDFLAGS_SOLARIS)" solaris-x86-sse2-cc: $(RM) arch.h $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o solaris-x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ CC=cc \ CFLAGS="-c -fast -xarch=native -DHAVE_CRYPT $(OMPFLAGS)" \ ASFLAGS="-c -xarch=native $(OMPFLAGS)" \ LDFLAGS="-s -xarch=native $(OMPFLAGS) $(LDFLAGS_SOLARIS)" \ OPT_NORMAL="" \ OPT_INLINE="-xinline=s1,s2,s3,s4,s5,s6,s7,s8" solaris-x86-sse2-gcc: $(RM) arch.h $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o solaris-x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT" \ LDFLAGS="$(LDFLAGS) $(LDFLAGS_SOLARIS)" solaris-x86-sse2i-gcc: $(RM) arch.h $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o solaris-x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT -msse2 -DUSING_ICC_S_FILE" \ ASFLAGS="$(ASFLAGS) -msse2" \ LDFLAGS="$(LDFLAGS) $(LDFLAGS_SOLARIS)" solaris-x86-mmx-cc: $(RM) arch.h $(LN) x86-mmx.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o solaris-x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ CC=cc \ CFLAGS="-c -fast -xarch=native -DHAVE_CRYPT $(OMPFLAGS)" \ ASFLAGS="-c -xarch=native $(OMPFLAGS)" \ LDFLAGS="-s -xarch=native $(OMPFLAGS) $(LDFLAGS_SOLARIS)" \ OPT_NORMAL="" \ OPT_INLINE="-xinline=s1,s2,s3,s4,s5,s6,s7,s8" solaris-x86-mmx-gcc: $(RM) arch.h $(LN) x86-mmx.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o solaris-x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT" \ LDFLAGS="$(LDFLAGS) $(LDFLAGS_SOLARIS)" solaris-x86-any-cc: $(RM) arch.h ln -s x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ SHELL=/bin/sh \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o solaris-x86.o" \ CC=cc \ CFLAGS="-c -xO4 -DHAVE_CRYPT $(OMPFLAGS)" \ ASFLAGS="-c $(OMPFLAGS)" \ LDFLAGS="-s $(OMPFLAGS) -lc $(LDFLAGS_SOLARIS)" \ OPT_NORMAL="" \ OPT_INLINE="-xinline=s1,s2,s3,s4,s5,s6,s7,s8" solaris-x86-any-gcc: $(RM) arch.h ln -s x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ SHELL=/bin/sh \ JOHN_OBJS="$(JOHN_OBJS) c3_fmt.o solaris-x86.o" \ CFLAGS="$(CFLAGS) -DHAVE_CRYPT" \ LDFLAGS="$(LDFLAGS) -lc $(LDFLAGS_SOLARIS)" # Older versions of Sun's assembler had a line length restriction (and some # other problems, which affect newer versions as well and which are worked # around in x86.S). solaris-x86.o: x86.S $(CPP) $(CPPFLAGS) -P -DDUMBAS x86.S | $(TR) \; \\n > tmp.s $(AS) $(ASFLAGS) tmp.s -o solaris-x86.o $(RM) tmp.s sco-x86-any-gcc: $(RM) arch.h ln -s x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ SHELL=/bin/sh \ JOHN_OBJS="$(JOHN_OBJS) sco-x86.o" sco-x86-any-cc: $(RM) arch.h ln -s x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ SHELL=/bin/sh \ JOHN_OBJS="$(JOHN_OBJS) sco-x86.o" \ CC=cc \ CFLAGS="-c -b elf -O3" \ ASFLAGS="-c -b elf" \ OPT_NORMAL="-K loop_unroll,no_inline" \ OPT_INLINE="-K inline" # SCO is even worse than Solaris x86 sco-x86.o: x86.S $(CPP) $(CPPFLAGS) -DDUMBAS x86.S | \ $(TR) \; \\n | $(SED) 's/\([%.]\) /\1/g' > tmp.s $(AS) $(ASFLAGS) tmp.s -o sco-x86.o $(RM) tmp.s tru64-alpha: $(LN) alpha.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) digipaq-alpha.o" \ CC=cc \ CFLAGS="-c -O4 -arch host" \ OPT_NORMAL="" \ OPT_INLINE="-inline all" # Digital/Compaq's cc and make use the .S suffix for a different purpose... digipaq-alpha.o: alpha.S $(CPP) $(CPPFLAGS) alpha.S > tmp.s $(AS) $(ASFLAGS) tmp.s -o digipaq-alpha.o $(RM) tmp.s aix-ppc32: $(LN) ppc32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CC=cc \ CFLAGS="-c -qunroll=2 -qarch=ppc -qchars=signed" \ LDFLAGS="$(LDFLAGS) -lbsd" \ OPT_NORMAL="-O2" \ OPT_INLINE="-O3 -Q=99 -w" macosx-x86-64-gpu: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) $(OCL_OBJS) $(CUDA_OBJS) x86-64.o sse-intrinsics.o" \ ASFLAGS="$(ASFLAGS) -m64 -DUNDERSCORES -DBSD -DALIGN_LOG" \ CFLAGS="$(CFLAGS) -m64 -I$(OCLROOT)/include -DBSD -DCL_VERSION_1_0 -DHAVE_CUDA -Wno-deprecated-declarations" \ LDFLAGS="$(LDFLAGS) -m64 -L$(CUDAPATH) -lcudart -framework OpenCL" \ NVCC_FLAGS="$(NVCC_FLAGS) -m64" $(CP) opencl/*.cl ../run/ $(CP) opencl_*.h ../run/ macosx-x86-64-opencl: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) $(OCL_OBJS) x86-64.o sse-intrinsics.o" \ ASFLAGS="$(ASFLAGS) -m64 -DUNDERSCORES -DBSD -DALIGN_LOG" \ CFLAGS="$(CFLAGS) -m64 -I$(OCLROOT)/include -DBSD -DCL_VERSION_1_0 -Wno-deprecated-declarations" \ LDFLAGS="$(LDFLAGS) -m64 -framework OpenCL" \ NVCC_FLAGS="$(NVCC_FLAGS) -m64" $(CP) opencl/*.cl ../run/ $(CP) opencl_*.h ../run/ macosx-x86-64-cuda: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) $(CUDA_OBJS) x86-64.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -DBSD -DHAVE_CUDA -m64 -Wno-deprecated-declarations" \ ASFLAGS="$(ASFLAGS) -m64 -DUNDERSCORES -DBSD -DALIGN_LOG" \ LDFLAGS="$(LDFLAGS) -m64 -L$(CUDAPATH) -lcudart" \ NVCC_FLAGS="$(NVCC_FLAGS) -m64" macosx-x86-64: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86-64.o sse-intrinsics.o" \ ASFLAGS="$(ASFLAGS) -m64 -DUNDERSCORES -DBSD -DALIGN_LOG" \ CFLAGS="$(CFLAGS) -m64 -Wno-deprecated-declarations" \ LDFLAGS="$(LDFLAGS) -m64" macosx-x86-64i: $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86-64.o sse-intrinsics-64.o" \ ASFLAGS="$(ASFLAGS) -m64 -DUNDERSCORES -DBSD -DALIGN_LOG" \ CFLAGS="$(CFLAGS) -m64 -DUSING_ICC_S_FILE -Wno-deprecated-declarations" \ LDFLAGS="$(LDFLAGS) -m64" macosx-x86-sse2: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ ASFLAGS="$(ASFLAGS) -m32 -DUNDERSCORES -DBSD -DALIGN_LOG" \ CFLAGS="$(CFLAGS) -m32 -Wno-deprecated-declarations" \ LDFLAGS="$(LDFLAGS) -m32" macosx-x86-sse2i: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ ASFLAGS="$(ASFLAGS) -m32 -msse2 -DUNDERSCORES -DBSD -DALIGN_LOG" \ CFLAGS="$(CFLAGS) -m32 -msse2 -DUSING_ICC_S_FILE -Wno-deprecated-declarations" \ LDFLAGS="$(LDFLAGS) -m32" macosx-x86-mmx: $(LN) x86-mmx.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ ASFLAGS="$(ASFLAGS) -m32 -DUNDERSCORES -DBSD -DALIGN_LOG" \ CFLAGS="$(CFLAGS) -m32 -Wno-deprecated-declarations" \ LDFLAGS="$(LDFLAGS) -m32" macosx-ppc32-altivec: $(LN) ppc32alt.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CFLAGS="-c -Wall -fomit-frame-pointer" \ OPT_NORMAL="-fast -mcpu=7450" \ OPT_INLINE="-fast -mcpu=7450 -finline-limit=4000 -faltivec -maltivec" # The -cross targets can be used to compile PowerPC binaries on x86. macosx-ppc32-altivec-cross: $(LN) ppc32alt.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ ASFLAGS="$(ASFLAGS) -arch ppc" \ CFLAGS="-c -Wall -arch ppc -fomit-frame-pointer" \ LDFLAGS="$(LDFLAGS) -arch ppc" \ OPT_NORMAL="-fast -mcpu=7450" \ OPT_INLINE="-fast -mcpu=7450 -finline-limit=4000 -faltivec -maltivec" # "cc -traditional-cpp" was needed on older versions of Mac OS X; it might # actually be problematic on current ones, but those will hopefully use other # make targets anyway (e.g., macosx-ppc32-altivec above). macosx-ppc32: $(LN) ppc32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CC=cc \ CFLAGS="-c -traditional-cpp" \ OPT_NORMAL="-O2" \ OPT_INLINE="-O3" macosx-ppc32-cross: $(LN) ppc32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ ASFLAGS="$(ASFLAGS) -arch ppc" \ CFLAGS="-c -Wall -arch ppc -fomit-frame-pointer" \ LDFLAGS="$(LDFLAGS) -arch ppc" \ OPT_NORMAL="-O2" \ OPT_INLINE="-O3 -finline-limit=4000" # This is slightly slower than macosx-ppc32-altivec for most hash types. macosx-ppc64-altivec: $(LN) ppc64alt.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CFLAGS="-c -m64 -Wall -fomit-frame-pointer" \ LDFLAGS="$(LDFLAGS) -m64" \ OPT_NORMAL="-fast" \ OPT_INLINE="-fast -finline-limit=4000 -faltivec -maltivec" macosx-ppc64-altivec-cross: $(LN) ppc64alt.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ ASFLAGS="$(ASFLAGS) -arch ppc" \ CFLAGS="-c -arch ppc -m64 -Wall -fomit-frame-pointer" \ LDFLAGS="$(LDFLAGS) -arch ppc -m64" \ OPT_NORMAL="-fast" \ OPT_INLINE="-fast -finline-limit=4000 -faltivec -maltivec" macosx-ppc64: $(LN) ppc64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CFLAGS="-c -m64 -Wall -fomit-frame-pointer" \ LDFLAGS="$(LDFLAGS) -m64" \ OPT_NORMAL="-fast" \ OPT_INLINE="-fast -finline-limit=4000" macosx-ppc64-cross: $(LN) ppc64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ ASFLAGS="$(ASFLAGS) -arch ppc" \ CFLAGS="-c -arch ppc -m64 -Wall -fomit-frame-pointer" \ LDFLAGS="$(LDFLAGS) -arch ppc -m64" \ OPT_NORMAL="-fast" \ OPT_INLINE="-fast -finline-limit=4000" john-macosx-x86-64: $(RM) *.o $(LN) x86-64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86-64.o sse-intrinsics.o" \ ASFLAGS="$(ASFLAGS) -arch x86_64 -m64 -DUNDERSCORES -DBSD -DALIGN_LOG" \ CFLAGS="$(CFLAGS) -arch x86_64 -m64" \ LDFLAGS="$(LDFLAGS) -arch x86_64 -m64" mv ../run/john john-macosx-x86-64 john-macosx-x86: $(RM) *.o $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ ASFLAGS="$(ASFLAGS) -arch i386 -m32 -DUNDERSCORES -DBSD -DALIGN_LOG" \ CFLAGS="$(CFLAGS) -arch i386 -m32" \ LDFLAGS="$(LDFLAGS) -arch i386 -m32" mv ../run/john john-macosx-x86 john-macosx-ppc: $(RM) *.o $(LN) ppc32alt.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ ASFLAGS="$(ASFLAGS) -arch ppc" \ CFLAGS="-c -Wall -arch ppc -fomit-frame-pointer" \ LDFLAGS="$(LDFLAGS) -arch ppc" \ OPT_NORMAL="-fast -mcpu=7450" \ OPT_INLINE="-fast -mcpu=7450 -finline-limit=4000 -faltivec -maltivec" mv ../run/john john-macosx-ppc macosx-universal: john-macosx-x86-64 john-macosx-x86 john-macosx-ppc lipo -create john-macosx-x86-64 john-macosx-x86 john-macosx-ppc \ -output ../run/john hpux-pa-risc-gcc: $(LN) pa-risc.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CFLAGS="-c -Wall -O3 -fomit-frame-pointer" hpux-pa-risc-cc: $(LN) pa-risc.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CC=cc \ CFLAGS="-c -Aa -D_HPUX_SOURCE -DANSI_CPP" \ OPT_NORMAL="+O2" \ OPT_INLINE="+O3 +Oinline" irix-mips64-r10k: $(LN) mips64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CC=cc \ CFLAGS="-c -O2 -64 -mips4 -r10000 -signed" \ LDFLAGS="$(LDFLAGS) -64 -mips4 -r10000" \ OPT_NORMAL="-LNO:opt=1 -OPT:Olimit=2194" \ OPT_INLINE="-INLINE:all" irix-mips64: $(LN) mips64.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CC=cc \ CFLAGS="-c -O2 -64 -mips3 -signed" \ LDFLAGS="$(LDFLAGS) -64 -mips3" \ OPT_NORMAL="-LNO:opt=1 -OPT:Olimit=2194" \ OPT_INLINE="-INLINE:all" irix-mips32: $(LN) mips32.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ CC=cc \ CFLAGS="-c -O2 -32 -signed" \ LDFLAGS="$(LDFLAGS) -32" \ OPT_NORMAL="-LNO:opt=1 -OPT:Olimit=2194" \ OPT_INLINE="-INLINE:all" # @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h # Not sure we can do the above. Thus we set the 'no build' rule dos-djgpp-x86-mmx: copy x86-mmx.h arch.h $(MAKE) $(PROJ_DOS) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ CFLAGS="$(CFLAGS) -DNO_JOHN_BLD -mpreferred-stack-boundary=2" \ ASFLAGS="$(ASFLAGS) -DUNDERSCORES -DALIGN_LOG" dos-djgpp-x86-any: copy x86-any.h arch.h $(MAKE) $(PROJ_DOS) \ JOHN_OBJS="$(JOHN_OBJS) x86.o" \ CFLAGS="$(CFLAGS) -DNO_JOHN_BLD -mpreferred-stack-boundary=2" \ ASFLAGS="$(ASFLAGS) -DUNDERSCORES -DALIGN_LOG" win32-cygwin-x86-sse2i: $(CP) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ_WIN32) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ CFLAGS="$(CFLAGS) -Wall -mpreferred-stack-boundary=4 -msse2 -m32 -DUSING_ICC_S_FILE" \ ASFLAGS="$(ASFLAGS) -msse2 -m32 -DUNDERSCORES" win32-cygwin-x86-sse2: $(CP) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ_WIN32) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -mpreferred-stack-boundary=4 -msse2 -m32" \ ASFLAGS="$(ASFLAGS) -msse2 -m32 -DUNDERSCORES" win32-cygwin-x86-mmx: $(CP) x86-mmx.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ_WIN32) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ CFLAGS="$(CFLAGS) -mpreferred-stack-boundary=3" \ ASFLAGS="$(ASFLAGS) -DUNDERSCORES" win32-cygwin-x86-any: $(CP) x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ_WIN32) \ JOHN_OBJS="$(JOHN_OBJS) x86.o" \ CFLAGS="$(CFLAGS) -mpreferred-stack-boundary=2" \ CFLAGS_MAIN="$(CFLAGS) -O0" \ ASFLAGS="$(ASFLAGS) -DUNDERSCORES" win32-mingw-x86-sse2i: $(CP) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ_WIN32_MINGW) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics-32.o" \ CFLAGS="$(CFLAGS) -Wall -mpreferred-stack-boundary=4 -msse2 -m32 -DUSING_ICC_S_FILE" \ ASFLAGS="$(ASFLAGS) -msse2 -m32 -DUNDERSCORES" win32-mingw-x86-sse2: $(CP) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ_WIN32_MINGW) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o sse-intrinsics.o" \ CFLAGS="$(CFLAGS) -Wall -mpreferred-stack-boundary=4 -msse2 -m32" \ ASFLAGS="$(ASFLAGS) -msse2 -m32 -DUNDERSCORES" win32-mingw-x86-mmx: $(CP) x86-mmx.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ_WIN32_MINGW) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" \ CFLAGS="$(CFLAGS) -mpreferred-stack-boundary=3 -mmmx -m32" \ ASFLAGS="$(ASFLAGS) -DUNDERSCORES" win32-mingw-x86-any: $(CP) x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ_WIN32_MINGW) \ JOHN_OBJS="$(JOHN_OBJS) x86.o" \ CFLAGS="$(CFLAGS) -Wall -mpreferred-stack-boundary=2 -m32" \ ASFLAGS="$(ASFLAGS) -DUNDERSCORES" beos-x86-sse2: $(LN) x86-sse.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-sse.o sha1-mmx.o md4-mmx.o md5-mmx.o" beos-x86-mmx: $(LN) x86-mmx.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o x86-mmx.o sha1-mmx.o md4-mmx.o md5-mmx.o" beos-x86-any: $(LN) x86-any.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) \ JOHN_OBJS="$(JOHN_OBJS) x86.o" generic: generic.h $(RM) arch.h ln -s generic.h arch.h @echo "#define JOHN_BLD" '"'$@'"' > john_build_rule.h $(MAKE) $(PROJ) generic.h: $(RM) arch.h $(CC) $(CFLAGS) detect.c $(LD) detect.o $(LDFLAGS) -o detect ./best.sh "$(MAKE)" \ "$(BENCH_DES_OBJS_DEPEND)" \ "$(BENCH_DES_BS_OBJS_DEPEND)" \ "$(BENCH_MD5_OBJS_DEPEND)" \ "$(BENCH_BF_OBJS_DEPEND)" testpara: $(LN) x86-64.h arch.h perl ./para-best.pl "$(CC)" "$(MAKE)" \ "$(BENCH_PARA_DEPEND)" "-msse2" 64 testpara-native: $(LN) x86-64.h arch.h perl ./para-best.pl "$(CC)" "$(MAKE)" \ "$(BENCH_PARA_DEPEND)" "-march=native" 64 testpara32: $(LN) x86-sse.h arch.h CFLAGS="$(CFLAGS) -m32 -msse2" \ perl ./para-best.pl "$(CC)" "$(MAKE)" \ "$(BENCH_PARA_DEPEND)" "-m32 -msse2" 32 bench: $(BENCH_OBJS) $(LD) $(BENCH_OBJS) $(LDFLAGS) -o bench para-bench64: $(PARA_BENCH_OBJS) $(LD) $(PARA_BENCH_OBJS) $(LDFLAGS) -o para-bench para-bench32: $(PARA_BENCH_32_OBJS) $(LD) $(PARA_BENCH_32_OBJS) $(LDFLAGS) -o para-bench cuda_common.o: cuda/cuda_common.cuh cuda/cuda_common.cu cd cuda; nvcc $(NVCC_FLAGS) cuda_common.cu -o ../cuda_common.o cuda_cryptmd5.o: cuda_cryptmd5.h cuda/cryptmd5.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) cryptmd5.cu -o ../cuda_cryptmd5.o cuda_cryptmd5_fmt.o: cuda_cryptmd5.o cuda_cryptmd5_fmt.c $(CC) $(CFLAGS) cuda_cryptmd5_fmt.c -o cuda_cryptmd5_fmt.o cuda_phpass.o: cuda_phpass.h cuda/phpass.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) phpass.cu -o ../cuda_phpass.o cuda_phpass_fmt.o: cuda_phpass.o cuda_phpass_fmt.c $(CC) $(CFLAGS) cuda_phpass_fmt.c -o cuda_phpass_fmt.o cuda_cryptsha256.o: cuda_cryptsha256.h cuda/cryptsha256.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) cryptsha256.cu -o ../cuda_cryptsha256.o cuda_cryptsha256_fmt.o: cuda_cryptsha256.o cuda_cryptsha256_fmt.c $(CC) $(CFLAGS) cuda_cryptsha256_fmt.c -o cuda_cryptsha256_fmt.o cuda_cryptsha512.o: cuda_cryptsha512.h cuda/cryptsha512.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) cryptsha512.cu -o ../cuda_cryptsha512.o cuda_cryptsha512_fmt.o: cuda_cryptsha512.o cuda_cryptsha512_fmt.c $(CC) $(CFLAGS) cuda_cryptsha512_fmt.c -o cuda_cryptsha512_fmt.o cuda_mscash2.o: cuda_mscash2.h cuda/mscash2.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) mscash2.cu -o ../cuda_mscash2.o cuda_mscash2_fmt.o: cuda_mscash2.o cuda_mscash2_fmt.c $(CC) $(CFLAGS) cuda_mscash2_fmt.c -o cuda_mscash2_fmt.o cuda_mscash.o: cuda_mscash.h cuda/mscash.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) mscash.cu -o ../cuda_mscash.o cuda_mscash_fmt.o: cuda_mscash.o cuda_mscash_fmt.c $(CC) $(CFLAGS) cuda_mscash_fmt.c -o cuda_mscash_fmt.o cuda_rawsha256.o: cuda_rawsha256.h cuda/rawsha256.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) -DSHA256 rawsha256.cu -o ../cuda_rawsha256.o cuda_rawsha256_fmt.o: cuda_rawsha256.o cuda_rawsha256_fmt.c $(CC) $(CFLAGS) -DSHA256 cuda_rawsha256_fmt.c -o cuda_rawsha256_fmt.o cuda_rawsha224.o: cuda_rawsha256.h cuda/rawsha256.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) -DSHA224 rawsha256.cu -o ../cuda_rawsha224.o cuda_rawsha224_fmt.o: cuda_rawsha224.o cuda_rawsha256_fmt.c $(CC) $(CFLAGS) -DSHA224 cuda_rawsha256_fmt.c -o cuda_rawsha224_fmt.o cuda_xsha512.o: cuda_xsha512.h cuda/xsha512.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) xsha512.cu -o ../cuda_xsha512.o cuda_xsha512_fmt.o: cuda_xsha512.o cuda_xsha512_fmt.c $(CC) $(CFLAGS) cuda_xsha512_fmt.c -o cuda_xsha512_fmt.o cuda_wpapsk.o: cuda/wpapsk.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) wpapsk.cu -o ../cuda_wpapsk.o cuda_wpapsk_fmt.o: cuda_wpapsk.o cuda_wpapsk_fmt.c $(CC) $(CFLAGS) cuda_wpapsk_fmt.c -o cuda_wpapsk_fmt.o cuda_rawsha512.o: cuda_rawsha512.h cuda/rawsha512.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) rawsha512.cu -o ../cuda_rawsha512.o cuda_rawsha512_fmt.o: cuda_rawsha512.o cuda_rawsha512_fmt.c $(CC) $(CFLAGS) cuda_rawsha512_fmt.c -o cuda_rawsha512_fmt.o cuda_pwsafe.o: cuda/pwsafe.cu cuda_common.o cd cuda; nvcc $(NVCC_FLAGS) pwsafe.cu -o ../cuda_pwsafe.o cuda_pwsafe_fmt.o: cuda_pwsafe.o cuda_pwsafe_fmt.c $(CC) $(CFLAGS) cuda_pwsafe_fmt.c -o cuda_pwsafe_fmt.o ../run/john: $(JOHN_OBJS) $(LD) $(JOHN_OBJS) $(LDFLAGS) -o ../run/john ../run/unshadow: ../run/john $(RM) ../run/unshadow ln -s john ../run/unshadow ../run/unafs: ../run/john $(RM) ../run/unafs ln -s john ../run/unafs ../run/undrop: ../run/john $(RM) ../run/undrop ln -s john ../run/undrop ../run/ssh2john: ../run/john $(RM) ../run/ssh2john ln -s john ../run/ssh2john ../run/keepass2john: ../run/john $(RM) ../run/keepass2john ln -s john ../run/keepass2john ../run/keychain2john: ../run/john $(RM) ../run/keychain2john ln -s john ../run/keychain2john ../run/zip2john: ../run/john $(RM) ../run/zip2john ln -s john ../run/zip2john ../run/pdf2john: ../run/john $(RM) ../run/pdf2john ln -s john ../run/pdf2john ../run/rar2john: ../run/john $(RM) ../run/rar2john ln -s john ../run/rar2john ../run/mozilla2john: ../run/john ifdef HAVE_NSS $(RM) ../run/mozilla2john ln -s john ../run/mozilla2john endif ../run/racf2john: ../run/john $(RM) ../run/racf2john ln -s john ../run/racf2john ../run/pwsafe2john: ../run/john $(RM) ../run/pwsafe2john ln -s john ../run/pwsafe2john ../run/hccap2john: ../run/john $(RM) ../run/hccap2john ln -s john ../run/hccap2john ../run/unique: ../run/john $(RM) ../run/unique ln -s john ../run/unique ../run/john.bin: $(JOHN_OBJS) $(LD) $(JOHN_OBJS) $(LDFLAGS) -o ../run/john.exe if exist ..\run\john.bin del ..\run\john.bin ren ..\run\john.exe john.bin ../run/john.com: john.com copy john.com ..\run\john.com ../run/unshadow.com: john.com copy john.com ..\run\unshadow.com ../run/unafs.com: john.com copy john.com ..\run\unafs.com ../run/undrop.com: john.com copy john.com ..\run\undrop.com ../run/ssh2john.com: john.com copy john.com ..\run\ssh2john.com ../run/keepass2john.com: john.com copy john.com ..\run\keepass2john.com ../run/keychain2john.com: john.com copy john.com ..\run\keychain2john.com ../run/pdf2john.com: john.com copy john.com ..\run\pdf2john.com ../run/rar2john.com: john.com copy john.com ..\run\rar2john.com ../run/mozilla2john.com: john.com ifdef HAVE_NSS copy john.com ..\run\mozilla2john.com endif ../run/racf2john.com: john.com copy john.com ..\run\racf2john.com ../run/pwsafe2john.com: john.com copy john.com ..\run\pwsafe2john.com ../run/zip2john.com: john.com copy john.com ..\run\zip2john.com ../run/hccap2john.com: john.com copy john.com ..\run\hccap2john.com ../run/unique.com: john.com copy john.com ..\run\unique.com john.local.conf: [ -f ../run/john.local.conf ] || touch ../run/john.local.conf john.com: john.asm @echo Use Borland TASM/TLINK to make JOHN.COM # this LD line removed from the ../run/john.exe rule (Cygwin builds) # this change needed for full openssl linking, in 1.7.7-jumbo-6 # this comment should stay for a jumbo or 2, to make sure this does not break # other peoples cygwin builds. # $(LD) $(JOHN_OBJS) -lkernel32 -lcrypto -o ../run/john.exe ../run/john.exe: $(JOHN_OBJS) $(LD) $(JOHN_OBJS) $(LDFLAGS) -lkernel32 -o ../run/john.exe strip ../run/john.exe # this LD line removed from the ../run/john-mingw.exe rule (MinGW32 builds) # this change needed for full openssl linking, in 1.7.7-jumbo-6 # $(LD) $(JOHN_OBJS) -lkernel32 -leay32 -o ../run/john-mingw.exe # $(LD) $(JOHN_OBJS) $(LDFLAGS) -lkernel32 -o ../run/john-mingw.exe ../run/john-mingw.exe: $(JOHN_OBJS) $(LD) $(JOHN_OBJS) $(LDFLAGS) -lkernel32 -o ../run/john-mingw.exe strip ../run/john-mingw.exe cp ../run/john-mingw.exe ../run/john.exe ../run/unshadow.exe: symlink.c $(CC) symlink.c -o ../run/unshadow.exe strip ../run/unshadow.exe ../run/unafs.exe: symlink.c $(CC) symlink.c -o ../run/unafs.exe strip ../run/unafs.exe ../run/undrop.exe: symlink.c $(CC) symlink.c -o ../run/undrop.exe strip ../run/undrop.exe ../run/ssh2john.exe: symlink.c $(CC) symlink.c -o ../run/ssh2john.exe strip ../run/ssh2john.exe ../run/keepass2john.exe: symlink.c $(CC) symlink.c -o ../run/keepass2john.exe strip ../run/keepass2john.exe ../run/keychain2john.exe: symlink.c $(CC) symlink.c -o ../run/keychain2john.exe strip ../run/keychain2john.exe ../run/pdf2john.exe: symlink.c $(CC) symlink.c -o ../run/pdf2john.exe strip ../run/pdf2john.exe ../run/rar2john.exe: symlink.c $(CC) symlink.c -o ../run/rar2john.exe strip ../run/rar2john.exe ../run/mozilla2john.exe: symlink.c ifdef HAVE_NSS $(CC) symlink.c -o ../run/mozilla2john.exe strip ../run/mozilla2john.exe endif ../run/racf2john.exe: symlink.c $(CC) symlink.c -o ../run/racf2john.exe strip ../run/racf2john.exe ../run/pwsafe2john.exe: symlink.c $(CC) symlink.c -o ../run/pwsafe2john.exe strip ../run/pwsafe2john.exe ../run/zip2john.exe: symlink.c $(CC) symlink.c -o ../run/zip2john.exe strip ../run/zip2john.exe ../run/hccap2john.exe: symlink.c $(CC) symlink.c -o ../run/hccap2john.exe strip ../run/hccap2john.exe ../run/unique.exe: symlink.c $(CC) symlink.c -o ../run/unique.exe strip ../run/unique.exe ../run/genmkvpwd: $(GENMKVPWD_OBJS) $(LD) $(GENMKVPWD_OBJS) $(LDFLAGS) -o ../run/genmkvpwd ../run/genmkvpwd.exe: $(GENMKVPWD_OBJS) $(LD) $(GENMKVPWD_OBJS) $(LDFLAGS_MKV) -o ../run/genmkvpwd.exe ../run/mkvcalcproba: mkvcalcproba.o $(LD) mkvcalcproba.o $(LDFLAGS) -o ../run/mkvcalcproba ../run/mkvcalcproba.exe: mkvcalcproba.o $(LD) mkvcalcproba.o $(LDFLAGS_MKV) -o ../run/mkvcalcproba.exe ../run/calc_stat: calc_stat.o $(LD) calc_stat.o $(LDFLAGS) -o ../run/calc_stat ../run/calc_stat.exe: calc_stat.o $(LD) calc_stat.o $(LDFLAGS_MKV) -o ../run/calc_stat.exe ../run/raw2dyna: raw2dyna.o $(LD) raw2dyna.o $(LDFLAGS) -o ../run/raw2dyna ../run/raw2dyna.exe: raw2dyna.o $(LD) raw2dyna.o $(LDFLAGS) -o ../run/raw2dyna.exe SIPdump: SIPdump.o $(LD) SIPdump.o $(LDFLAGS) -lpcap -o ../run/SIPdump vncpcap2john: g++ vncpcap2john.cpp -lpcap -o ../run/vncpcap2john office2john: $(CC) `xml2-config --cflags` `pkg-config --cflags libgsf-1` office2john.c common.o base64.o `pkg-config --libs libgsf-1` `xml2-config --libs` -o ../run/office2john ../run/tgtsnarf: tgtsnarf.o $(LD) tgtsnarf.o $(LDFLAGS) -o ../run/tgtsnarf # Inlining the S-boxes produces faster code as long as they fit in the cache. DES_bs_b.o: DES_bs_b.c sboxes.c nonstd.c sboxes-s.c $(CC) $(CFLAGS) $(OPT_INLINE) DES_bs_b.c # This is for the BENCH build (to not depend upon unicode.o) DES_bsg.o: DES_bs.c $(CC) $(CFLAGS) -DBENCH_BUILD DES_bs.c -o DES_bsg.o # This is for the BENCH build (to not depend upon unicode.o) config_g.o: config.c $(CC) $(CFLAGS) -DBENCH_BUILD config.c -o config_g.o # This is for the BENCH build (to not depend upon options.o) formats_g.o: formats.o $(CC) $(CFLAGS) -DBENCH_BUILD formats.c -o formats_g.o miscnl.o: misc.c $(CC) $(CFLAGS) $(OPT_NORMAL) -D_JOHN_MISC_NO_LOG misc.c -o miscnl.o bench-t.o: bench.c $(CC) $(CFLAGS) $(OPT_NORMAL) -D_JOHN_BENCH_TMP bench.c -o bench-t.o fmt_externs.h: $(PLUGFORMATS_SRCS) Makefile LC_ALL=C $(SED) -n 's/^\(struct fmt_main [^ ]*\) =.*/extern \1;/p' *_fmt_plug.c > fmt_externs.h fmt_registers.h: $(PLUGFORMATS_SRCS) Makefile LC_ALL=C $(SED) -n 's/^struct fmt_main \([^ ]*\) =.*/john_register_one(\&\1);/p' *_fmt_plug.c > fmt_registers.h john.o: john.c fmt_externs.h fmt_registers.h $(CC) $(CFLAGS_MAIN) $(OPT_NORMAL) -O0 $*.c .c.o: $(CC) $(CFLAGS) $(OPT_NORMAL) $*.c .S.o: $(AS) $(ASFLAGS) $*.S # We don't have any files with .s suffix, this is for compiling in DOS only .s.o: $(AS) $(ASFLAGS) $*.S check: ../run/john --make_check depend: makedepend -fMakefile.dep -Y *.c 2>> /dev/null test: cd ../test && perl jtrts.pl -q test_full: cd ../test && perl jtrts.pl -q -type full test_utf8: cd ../test && perl jtrts.pl -q -type utf-8 test_verbose: cd ../test && perl jtrts.pl test_full_verbose: cd ../test && perl jtrts.pl -type full test_utf8_verbose: cd ../test && perl jtrts.pl -type utf-8 bash-completion: @echo @echo NOTE: Administrative priviledges required for this make target. [ -d /etc/bash_completion.d ] && $(CP) ../run/john.bash_completion /etc/bash_completion.d/ || true [ -d /usr/local/etc/bash_completion.d ] && $(CP) ../run/john.bash_completion /usr/local/etc/bash_completion.d/ || true [ -d /opt/local/etc/bash_completion.d ] && $(CP) ../run/john.bash_completion /opt/local/etc/bash_completion.d/ || true @echo @echo Bash-completion for JtR opportunistically installed. @echo Source \". ../run/john.bash_completion\" or logout/login to activate the changes clean: $(RM) $(PROJ) $(PROJ_DOS) $(PROJ_WIN32) $(PROJ_WIN32_MINGW) $(RM) ../run/john.exe john-macosx-* *.o *.bak core $(RM) ../run/*.cl ../run/*.h ../run/office2john ../run/vncpcap2john $(RM) detect bench para-bench generic.h arch.h tmp.s $(RM) cuda/*.o cuda/*~ *~ ../run/SIPdump $(RM) fmt_registers.h fmt_externs.h john_build_rule.h $(CP) $(NULL) Makefile.dep # For the time being, icc builds a better sse-intrinsics.S but this may # change over time. NOTE that sse-intrinsics.S is never re-built unless you # manually do a "make intrinsics". intrinsics: clean-intrinsics sse-intrinsics-64.S sse-intrinsics-32.S clean-intrinsics: $(RM) sse-intrinsics-64.S sse-intrinsics-32.S sse-intrinsics-win32.S sse-intrinsics-64.S: $(LN) x86-64.h arch.h icc -S -o sse-intrinsics-64.S sse-intrinsics.c -O3 -fno-builtin -fno-verbose-asm -openmp -DUSING_ICC_S_FILE $(JOHN_CFLAGS) -Wall sse-intrinsics-32.S: $(LN) x86-sse.h arch.h icc -m32 -S -o sse-intrinsics-32.S sse-intrinsics.c -O3 -fno-builtin -fno-verbose-asm -openmp -DUSING_ICC_S_FILE $(JOHN_CFLAGS) -Wall perl sse2i_winfix.pl sse-intrinsics-32.S sse-intrinsics-win32.S mv sse-intrinsics-win32.S sse-intrinsics-32.S include Makefile.dep This is already configured to compile WITH MPI support.
  2. Hey guys! I have been looking all over the internet for a community of like minded people. I am presently building a large cluster of computers for a lab of mine and I have been trying for quite some time now with no success to compile John the Ripper on an ARM CPU with MPI and CUDA support... I was able at the very least to compile it on ARM architecture with MPI support but CUDA is another matter all together. If anyone can provide any information on how to accomplish this I would really appreciate it! Thank You
×
×
  • Create New...