#glib_dir = /usr/local/include/glib-1.2
glib_dir = /usr/local/include/glib-2.0
irssi_dir = /mnt/gmirror/ports/irc/irssi/work/irssi-0.8.12
all: note
@make misc
@make DH
@make FiSH
@echo
@ls -l libfish.so
@echo
@echo -e "Compiling finished -->> $(PWD)/\033[1mlibfish.so\033[0m"
@echo
note:
@echo
@echo -e "######################## \033[7m\033[1mFiSH for irssi COMPILING NOTES\033[0m ########################"
@echo "--------------------------------------------------------------------------------"
@echo "You'll need MIRACL (http://indigo.ie/~mscott/) to compile FiSH! It is suggested"
@echo "to recompile /usr/local/lib/libmiracl.a on your target machine (compile instructions can be found"
@echo -e "in miracl.zip/\033[1mlinux.txt\033[0m). Also, make sure you are using the correct mirdef.h"
@echo -e "(especially in case of exotic systems). On \033[1mAMD64\033[0m systems use 'mirdef_amd64.h'"
@echo -e "and have a look at miracl.zip/amd64.txt, use 'mirdef_macosx.h' for \033[1mMacOSX\033[0m. You"
@echo -e "can test MIRACL with \033[1mpk-demo\033[0m. BSD fails in pk-demo.cpp and wants a '(time_t *)'"
@echo "in line 54."
@echo
@echo -e "Using irssi source from: \033[1m$(irssi_dir)\033[0m"
@echo -e "Using glib source from: \033[1m$(glib_dir)\033[0m (required to compile irssi)"
@echo "-- Please make sure you have both installed!"
@echo
@echo -e "-- If you plan to use a \033[4mcustom\033[0m password for your blow.ini (via /setinipw),"
@echo -e "-- you can \033[4mskip\033[0m the following note!"
@echo "You are adviced to change default_iniKey in FiSH.h - But remember, changing the"
@echo "default blow.ini password will make your old keys in blow.ini unusable!"
@echo
@echo -e "\033[1m>> \033[4mUsual procedure to compile FiSH:\033[0m"
@echo " unzip FiSH-irssi.v0.99-source.zip;cd FiSH-irssi.v0.99-source"
@echo " mkdir MIRACL;cd MIRACL;cp ../mir_amd64 amd64;cp ../mir_macosx macosx"
@echo " wget http://indigo.ie/~mscott/miracl.zip"
@echo -e " \033[4munzip -j -aa -L miracl.zip\033[0m (see linux.txt/amd64.txt for more info)"
@echo -e " \033[4mbash linux\033[0m (or '\033[4mbash amd64\033[0m' / '\033[4mbash macosx\033[0m')"
@echo " cp /usr/local/lib/libmiracl.a ../;cd .."
@echo " <adjust glib_dir and irssi_dir in 'Makefile'>"
@echo -e " \033[4mmake\033[0m (or '\033[4mmake macosx\033[0m' / '\033[4mmake amd64\033[0m')"
@echo " cp libfish.so ~/irssi/lib/irssi/modules"
@echo "--------------------------------------------------------------------------------"
@echo
@if [ ! -f "/usr/local/lib/libmiracl.a" ]; then echo "miracl.a not found! You didn't compile MIRACL, did you?"; echo; exit 1; fi
@if [ ! -f "$(glib_dir)/glibconfig.h" ] && [ ! -f "$(glib_dir)/include/glibconfig.h" ] && [ ! -f "$(glib_dir)/glib/glibconfig.h" ]; then echo "glibconfig.h not found! Please install glib and modify 'glib_dir' ..."; echo; exit 1; fi
@make -s clean
@echo "Compiling now..."
@echo
clean:
@echo
@echo Cleaning up...
@echo
@rm -f SHA-256.o
@rm -f base64.o
@rm -f blowfish.o
@rm -f cfgopts.o
@rm -f DH1080.o
@rm -f FiSH.o
@rm -f libfish.so
@rm -f DH1080.so
DH:
cc -static -c DH1080.c
cc -static -shared -fPIC -DPIC DH1080.o /usr/local/lib/libmiracl.a SHA-256.o base64.o -o DH1080.so
misc:
cc -c -static SHA-256.c
cc -c -static base64.c
cc -c -static blowfish.c
cc -c -static cfgopts.c
FiSH:
cc -I. -I$(glib_dir) -I$(glib_dir)/include -I$(glib_dir)/glib -I$(irssi_dir) -I$(irssi_dir)/src -I$(irssi_dir)/src/core -I$(irssi_dir)/src/fe-common/core -static -fno-common -Wall -c FiSH.c -fPIC -DPIC -o FiSH.o
cc -static -shared -fPIC -DPIC FiSH.o SHA-256.o base64.o blowfish.o cfgopts.o DH1080.o /usr/local/lib/libmiracl.a -o libfish.so
mac: macosx
macosx: note
@if [ -f "mirdef_macosx.h" ]; then echo; echo "Using mirdef_macosx.h ..."; cp mirdef_macosx.h mirdef.h;echo; fi
cc -c -fno-common SHA-256.c
cc -c -fno-common base64.c
cc -c -fno-common blowfish.c
cc -c -fno-common cfgopts.c
ranlib /usr/local/lib/libmiracl.a
cc -fno-common -c DH1080.c
cc -bundle -flat_namespace -undefined suppress DH1080.o /usr/local/lib/libmiracl.a SHA-256.o base64.o -o DH1080.so
cc -I. -I$(glib_dir) -I$(glib_dir)/include -I$(glib_dir)/glib -I$(irssi_dir) -I$(irssi_dir)/src -I$(irssi_dir)/src/core -I$(irssi_dir)/src/fe-common/core -fno-common -fno-common -Wall -c FiSH.c -fPIC -DPIC -o FiSH.o
cc -bundle -flat_namespace -undefined suppress FiSH.o SHA-256.o base64.o blowfish.o cfgopts.o DH1080.o /usr/local/lib/libmiracl.a -o libfish.so
@echo
@ls -l libfish.so
@echo
@echo -e "Compiling finished -->> $(PWD)/\033[1mlibfish.so\033[0m"
@echo
amd64: note
@if [ -f "mirdef_amd64.h" ]; then echo; echo "Using mirdef_amd64.h ..."; cp mirdef_amd64.h mirdef.h;echo; fi
cc -c -static -fPIC SHA-256.c
cc -c -static -fPIC base64.c
cc -c -static -fPIC blowfish.c
cc -c -static -fPIC cfgopts.c
cc -static -c -fPIC DH1080.c
cc -static -fPIC -shared -fPIC -DPIC DH1080.o /usr/local/lib/libmiracl.a SHA-256.o base64.o -o DH1080.so
cc -I. -I$(glib_dir) -I$(glib_dir)/include -I$(glib_dir)/glib -I$(irssi_dir) -I$(irssi_dir)/src -I$(irssi_dir)/src/core -I$(irssi_dir)/src/fe-common/core -static -fno-common -Wall -c FiSH.c -fPIC -DPIC -o FiSH.o
cc -static -fPIC -shared -fPIC -DPIC FiSH.o SHA-256.o base64.o blowfish.o cfgopts.o DH1080.o /usr/local/lib/libmiracl.a -o libfish.so
@echo
@ls -l libfish.so
@echo
@echo -e "Compiling finished -->> $(PWD)/\033[1mlibfish.so\033[0m"
@echo
syntax highlighted by Code2HTML, v. 0.9.1