<commit_before>################################################
##############                   ###############
#############   Laxkit Makefile   ##############
##############                   ###############
################################################
#
# When installing include headers, make sure to install into
# something like: lax-version/lax/*.h. This makes it easy for users to
# do g++ -I/usr/local/include/lax-version for including lax/whatever.
# Allows multiple versions of the kit to be installed without serious
# conflicts.
#
#
# to make shared library,
# objects must be compiled without -g and:
# 	g++ -fPIC -c blah.cc -o blah.o
# and linked thus:
# 	g++ -shared -fPIC -o blah.so blah.o ...


 # Where to install stuff, currently:
 #   prefix/include
 #   prefix/lib
#PREFIX=/usr/local
#PREFIX=testinstall
include Makefile-toinclude

## Comment out the next line to disable anything to do with Imlib2.
EXTRAS= -DLAX_USES_IMLIB

## Comment out the next line to not compile in debugging info
DEBUGFLAGS= -g




 # the libs get installed here
LIBDIR=$(PREFIX)/lib
BINDIR=$(PREFIX)/bin

 # header files get installed in this directory like this: includedir/lax-version/lax/*.h
INCLUDEDIR=$(PREFIX)/include

 # documentation goes here, like: /usr/share/doc/laxkit/lax-0.0.4
DOCDIR=$(PREFIX)/share/doc/laxkit/laxkit-$(LAXKITVERSION)


### If you want to be sure that an install does not clobber anything that exists
### already, then uncomment the line with the '--backup=t' and comment out the other.
#INSTALL=install --backup=t 
INSTALL=install





LAXDIR= lax
LAXOBJDIR=objs





all: lax interfaces laxinput
	@echo "  -----------Done!-------------" 


#this compiles the core laxkit only, not interfaces
almostall: lax
	@echo "  -----------Done!-------------" 


install-docs:
	echo "---- installing docs `date` -----" >> install.log
	$(INSTALL) -d $(DOCDIR)
	$(INSTALL) -d $(DOCDIR)/html
	$(INSTALL) -D -m644 docs/style.css $(DOCDIR)
	$(INSTALL) -D -m644 docs/*.html $(DOCDIR)
	$(INSTALL) -D -m644 docs/*.png $(DOCDIR)
	$(INSTALL) -D -m644 docs/*.jpg $(DOCDIR)
	$(INSTALL) -D -m644 docs/html/* $(DOCDIR)/html
	ls $(DOCDIR)/*  >> install.log
	ls $(DOCDIR)/html/* >> install.log

icons:
	cd lax/icons && make

install: lax interfaces laxinput
	echo "---- installing `date` -----" >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/liblaxkit.a $(LIBDIR)/liblaxkit.a && \
		echo '$(LIBDIR)/liblaxkit.a' >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/liblaxkit.so.$(LAXKITVERSION) $(LIBDIR)/liblaxkit.so.$(LAXKITVERSION) && \
		echo '$(LIBDIR)/liblaxkit.so.$(LAXKITVERSION)' >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/interfaces/liblaxinterfaces.a $(LIBDIR)/liblaxinterfaces.a && \
		echo '$(LIBDIR)/liblaxinterfaces.a' >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/interfaces/liblaxinterfaces.so.$(LAXKITVERSION) $(LIBDIR)/liblaxinterfaces.so.$(LAXKITVERSION) && \
		echo '$(LIBDIR)/liblaxinterfaces.so.$(LAXKITVERSION)' >> install.log
	$(INSTALL) -d $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/interfaces
	$(INSTALL) -D -m644 $(LAXDIR)/lists.cc $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/lists.cc && \
		echo '$(LIBDIR)/lists.cc' >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/refptrstack.cc $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/refptrstack.cc && \
		echo '$(LIBDIR)/refptrstack.cc' >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/*.h $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax
	$(INSTALL) -D -m644 $(LAXDIR)/interfaces/*.h $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/interfaces
	ls $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/*.h $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/interfaces/*.h >> install.log
	$(INSTALL) -D -m711 laxinput/laxinput $(BINDIR)/laxinput && \
		echo '$(BINDIR)/laxinput' >> install.log

#	$(INSTALL) -D -m644 $(LAXDIR)/liblaxatts.a $(LIBDIR)/liblaxatts.a && \
#		echo '$(LIBDIR)/liblaxatts.a' >> install.log

uninstall: 
	rm -vf $(LIBDIR)/liblaxkit.a
	rm -vf $(LIBDIR)/liblaxatts.a
	rm -vf $(LIBDIR)/liblaxinterfaces.a
	rm -v -rf $(INCLUDEDIR)/lax-$(LAXKITVERSION)

#this mkdir stuff is kind of an ugly hack so that when I do 'svn status' the html dir, which
#has a million files will not show up
docs:<commit_msg>Make normal full build depend on touchdepends<commit_after>################################################
##############                   ###############
#############   Laxkit Makefile   ##############
##############                   ###############
################################################
#
# When installing include headers, make sure to install into
# something like: lax-version/lax/*.h. This makes it easy for users to
# do g++ -I/usr/local/include/lax-version for including lax/whatever.
# Allows multiple versions of the kit to be installed without serious
# conflicts.
#
#
# to make shared library,
# objects must be compiled without -g and:
# 	g++ -fPIC -c blah.cc -o blah.o
# and linked thus:
# 	g++ -shared -fPIC -o blah.so blah.o ...


 # Where to install stuff, currently:
 #   prefix/include
 #   prefix/lib
#PREFIX=/usr/local
#PREFIX=testinstall
include Makefile-toinclude

## Comment out the next line to disable anything to do with Imlib2.
EXTRAS= -DLAX_USES_IMLIB

## Comment out the next line to not compile in debugging info
DEBUGFLAGS= -g




 # the libs get installed here
LIBDIR=$(PREFIX)/lib
BINDIR=$(PREFIX)/bin

 # header files get installed in this directory like this: includedir/lax-version/lax/*.h
INCLUDEDIR=$(PREFIX)/include

 # documentation goes here, like: /usr/share/doc/laxkit/lax-0.0.4
DOCDIR=$(PREFIX)/share/doc/laxkit/laxkit-$(LAXKITVERSION)


### If you want to be sure that an install does not clobber anything that exists
### already, then uncomment the line with the '--backup=t' and comment out the other.
#INSTALL=install --backup=t 
INSTALL=install





LAXDIR= lax
LAXOBJDIR=objs





all: lax interfaces laxinput touchdepends
	@echo "  -----------Done!-------------" 


#this compiles the core laxkit only, not interfaces
almostall: lax touchdepends
	@echo "  -----------Done!-------------" 


install-docs:
	echo "---- installing docs `date` -----" >> install.log
	$(INSTALL) -d $(DOCDIR)
	$(INSTALL) -d $(DOCDIR)/html
	$(INSTALL) -D -m644 docs/style.css $(DOCDIR)
	$(INSTALL) -D -m644 docs/*.html $(DOCDIR)
	$(INSTALL) -D -m644 docs/*.png $(DOCDIR)
	$(INSTALL) -D -m644 docs/*.jpg $(DOCDIR)
	$(INSTALL) -D -m644 docs/html/* $(DOCDIR)/html
	ls $(DOCDIR)/*  >> install.log
	ls $(DOCDIR)/html/* >> install.log

icons:
	cd lax/icons && make

install: lax interfaces laxinput
	echo "---- installing `date` -----" >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/liblaxkit.a $(LIBDIR)/liblaxkit.a && \
		echo '$(LIBDIR)/liblaxkit.a' >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/liblaxkit.so.$(LAXKITVERSION) $(LIBDIR)/liblaxkit.so.$(LAXKITVERSION) && \
		echo '$(LIBDIR)/liblaxkit.so.$(LAXKITVERSION)' >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/interfaces/liblaxinterfaces.a $(LIBDIR)/liblaxinterfaces.a && \
		echo '$(LIBDIR)/liblaxinterfaces.a' >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/interfaces/liblaxinterfaces.so.$(LAXKITVERSION) $(LIBDIR)/liblaxinterfaces.so.$(LAXKITVERSION) && \
		echo '$(LIBDIR)/liblaxinterfaces.so.$(LAXKITVERSION)' >> install.log
	$(INSTALL) -d $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/interfaces
	$(INSTALL) -D -m644 $(LAXDIR)/lists.cc $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/lists.cc && \
		echo '$(LIBDIR)/lists.cc' >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/refptrstack.cc $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/refptrstack.cc && \
		echo '$(LIBDIR)/refptrstack.cc' >> install.log
	$(INSTALL) -D -m644 $(LAXDIR)/*.h $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax
	$(INSTALL) -D -m644 $(LAXDIR)/interfaces/*.h $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/interfaces
	ls $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/*.h $(INCLUDEDIR)/lax-$(LAXKITVERSION)/lax/interfaces/*.h >> install.log
	$(INSTALL) -D -m711 laxinput/laxinput $(BINDIR)/laxinput && \
		echo '$(BINDIR)/laxinput' >> install.log


uninstall: 
	rm -vf $(LIBDIR)/liblaxkit.a
	rm -vf $(LIBDIR)/liblaxinterfaces.a
	rm -v -rf $(INCLUDEDIR)/lax-$(LAXKITVERSION)

#this mkdir stuff is kind of an ugly hack so that when I do 'svn status' the html dir, which
#has a million files will not show up
docs:
{'fraction_non_alphanumeric': 0.2138657520823126, 'fraction_numerical': 0.011636452719255267, 'mean_word_length': 3.8142688679245285, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 53, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6040505', 'n_tokens_mistral': 3132, 'n_tokens_neox': 2881, 'n_words': 714}