mirror of
https://bitbucket.org/Mattrixwv/cipherstream.git
synced 2025-12-06 18:33:58 -05:00
Added macros to help simplify adding ciphers in future
This commit is contained in:
77
makefile
77
makefile
@@ -1,62 +1,73 @@
|
||||
#Macros that are corss platform
|
||||
LIBFLAGS = -shared -std=c++11 -O3 -fPIC
|
||||
EXEFLAGS = -std=c++11 -O3
|
||||
TESTFLAGS = $(EXEFLAGS) -DTEST_VERSION
|
||||
DEBUGFLAGS = $(TESTFLAGS) -g
|
||||
LIBDIR = ./lib
|
||||
CIPHERS = Caesar Playfair Vigenere Atbash
|
||||
LIBFILES = $(patsubst %,SourceFiles/%.cpp,$(CIPHERS))
|
||||
|
||||
#For Linux
|
||||
LinuxAll: libCaesar.a libPlayfair.a libVigenere.a libAtbash.a Ciphers
|
||||
LinuxTest: libCaesar.a libPlayfair.a libVigenere.a libAtbash.a CiphersTest
|
||||
LinuxDebug: CiphersDBG
|
||||
allLinux: libsLinux Ciphers
|
||||
testLinux: libsLinux CiphersTest
|
||||
debugLinux: CiphersDBG
|
||||
libsLinux: directory $(patsubst %, $(LIBDIR)/lib%.a,$(CIPHERS))
|
||||
LINUXLIBS = $(patsubst %, -l%,$(CIPHERS))
|
||||
|
||||
#For Windows
|
||||
WindowsAll: libCaesar.lib libPlayfair.lib libVigenere.lib libAtbash.lib Ciphers.exe
|
||||
WindowsTest: libCaesar.lib libPlayfair.lib libVigenere.lib libAtbash.lib CiphersTest.exe
|
||||
WindowsDebug: CipherDBG.exe
|
||||
allWindows: libsWindows Ciphers.exe
|
||||
testWindows: libsWindows CiphersTest.exe
|
||||
debugWindows: CipherDBG.exe
|
||||
#Keeping the old one for now, until I can test it to make sure it works
|
||||
#WindowsLibs: libCaesar.lib libPlayfair.lib libVigenere.lib libAtbash.lib
|
||||
#WINDOWSLIBS = -llibCaesar -llibPlayfair -llibVigenere -llibAtbash
|
||||
libsWindows: directory $(patsubst %, $(LIBDIR)/lib%.lib,$(CIPHERS))
|
||||
WINDOWSLIBS = $(patsubst %, -llib%,$(CIPHERS))
|
||||
|
||||
|
||||
directory:
|
||||
mkdir -p lib
|
||||
mkdir -p $(LIBDIR)
|
||||
|
||||
#Linux
|
||||
libCaesar.a: SourceFiles/Caesar.cpp directory
|
||||
$(CXX) -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Caesar.cpp
|
||||
|
||||
libPlayfair.a: SourceFiles/Playfair.cpp directory
|
||||
$(CXX) -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Playfair.cpp
|
||||
|
||||
libVigenere.a: SourceFiles/Vigenere.cpp directory
|
||||
$(CXX) -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Vigenere.cpp
|
||||
|
||||
libAtbash.a: SourceFiles/Atbash.cpp directory
|
||||
$(CXX) -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Atbash.cpp
|
||||
$(LIBDIR)/lib%.a: SourceFiles/%.cpp
|
||||
$(CXX) $(LIBFLAGS) -o $@ $<
|
||||
|
||||
Ciphers: main.cpp helperFunctions.hpp
|
||||
$(CXX) -O3 -std=c++11 -o $@ main.cpp -L ./lib -lCaesar -lPlayfair -lVigenere -lAtbash
|
||||
$(CXX) $(EXEFLAGS) -o $@ main.cpp -L $(LIBDIR) $(LINUXLIBS)
|
||||
|
||||
CiphersTest: main.cpp
|
||||
$(CXX) -O3 -std=c++11 -DTEST_VERSION -o Ciphers $< -L ./lib -lCaesar -lPlayfair -lVigenere -lAtbash
|
||||
$(CXX) $(TESTFLAGS) -o Ciphers $< -L $(LIBDIR) $(LINUXLIBS)
|
||||
|
||||
CiphersDBG: main.cpp SourceFiles/Caesar.cpp SourceFiles/Playfair.cpp SourceFiles/Vigenere.cpp SourceFiles/Atbash.cpp
|
||||
$(CXX) -O3 -std=c++11 -g -DTEST_VERSION -o $@ $<
|
||||
CiphersDBG: main.cpp $(LIBFILES)
|
||||
$(CXX) $(DEBUGFLAGS) -o $@ $<
|
||||
|
||||
|
||||
#Windows
|
||||
|
||||
libCaesar.lib: SourceFiles/Caesar.cpp directory
|
||||
g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Caesar.cpp
|
||||
#libCaesar.lib: SourceFiles/Caesar.cpp directory
|
||||
# g++ $(LIBFLAGS) -o lib/$@ SourceFiles/Caesar.cpp
|
||||
|
||||
libPlayfair.lib: SourceFiles/Playfair.cpp directory
|
||||
g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Playfair.cpp
|
||||
#libPlayfair.lib: SourceFiles/Playfair.cpp directory
|
||||
# g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Playfair.cpp
|
||||
|
||||
libVigenere.lib: SourceFiles/Vigenere.cpp directory
|
||||
g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Vigenere.cpp
|
||||
#libVigenere.lib: SourceFiles/Vigenere.cpp directory
|
||||
# g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Vigenere.cpp
|
||||
|
||||
libAtbash.lib: SourceFiles/Atbash.cpp directory
|
||||
g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Vigenere.cpp
|
||||
#libAtbash.lib: SourceFiles/Atbash.cpp directory
|
||||
# g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Atbash.cpp
|
||||
|
||||
$(LIBDIR)/lib%.lib: SourceFiles/%.cpp
|
||||
g++ $(LIBFLAGS) -o $@ $<
|
||||
|
||||
Ciphers.exe: main.cpp helperFunctions.hpp
|
||||
g++ -std=c++11 -O3 -o $@ main.cpp -L ./lib -llibCaesar -llibPlayfair -llibVigenere -llibAtbash
|
||||
g++ $(EXEFLAGS) -o $@ main.cpp -L $(LIBDIR) $(WINDOWSLIBS)
|
||||
|
||||
CiphersTest.exe: main.cpp
|
||||
g++ -std=c++11 -O3 -DTEST_VERSION -o Ciphers.exe $< -L ./lib -llibCaesar -llibPlayfair -llibVigenere -llibAtbash
|
||||
g++ $(TESTFLAGS) -o Ciphers.exe $< -L $(LIBDIR) $(WINDOWSLIBS)
|
||||
|
||||
CiphersDBG.exe: main.cpp SourceFiles/Caesar.cpp SourceFiles/Playfair.cpp SourceFiles/Vigenere.cpp SourceFiles/Vigenere.cpp SourceFiles/Atbash.cpp
|
||||
g++ -std=c++11 -O3 -g -DTEST_VERSION -o $@ $<
|
||||
CiphersDBG.exe: main.cpp $(LIBFILES)
|
||||
g++ $(DEBUGFLAGS) -o $@ $<
|
||||
|
||||
|
||||
#Cleaning Shop
|
||||
|
||||
Reference in New Issue
Block a user