Patch attached, let me know if there are problems with it. The modifications were written in Linux so the line-ends of the new files are unix-style where as the existing files retained their MS-windows style.
I also have not updated the makefiles for compiling on Windows. I don't have that environment setup. If you don't want to include --list and --search in Windows builds, just ifdef em out. The search code depends on libpcre, which is common in standard Linux installs.
I had problems with unix.mak when applying the patch on my mac box. Just in case it fails for you, I've listed it below, it's small.
# USE_MAC - 1 = compile on a MAC, 0 = compile elsewhere
# FINK_REPO - Location of your MAC FINK software repository, you must have
# libmhash and libpcre installed.
USE_MAC = 0
FINK_REPO = /sw
LINK = $(CXX)
DEFINES = -DUSE_MHASH -DTIXML_USE_STL
CFLAGS = -O2 -Wall $(DEFINES)
CXXFLAGS = -O2 -frtti -fexceptions -Wall $(DEFINES)
INCPATH = -I.
LIBS = -lmhash -lpcre -lpcrecpp
ifeq ($(USE_MAC), 1)
CFLAGS := $(CFLAGS) -m32
CXXFLAGS := $(CXXFLAGS) -m32
INCPATH := -I$(FINK_REPO)/include $(INCPATH)
LIBS := -m32 -L$(FINK_REPO)/lib $(LIBS)
endif
SOURCE = shared/hasher.cpp leet.cpp main.cpp passwordmaker.cpp pwmdefaults.cpp tinystr.cpp tinyxml.cpp tinyxmlerror.cpp tinyxmlparser.cpp listaccounts.cpp urlsearch.cpp
OBJECTS = $(SOURCE:.cpp=.o)
TARGET = passwordmaker
$(TARGET): $(OBJECTS)
$(LINK) -o "$(TARGET)" $(OBJECTS) $(LIBS)
.SUFFIXES: .c .cpp .cc .cxx
.cpp.o:
$(CXX) -g -c $(CXXFLAGS) $(INCPATH) -o $@ $<
.cc.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
.cxx.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
.c.o:
$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
include unix/depends
.PHONY: depend clean
depend:
$(CXX) -MM $(CXXFLAGS) $(INCPATH) $(SOURCE) > unix/depends
clean:
rm -f $(OBJECTS) $(TARGET) 2>/dev/null