# intend to raw Makefile extention


#環境変数はmake BOOTFILE=mylua.luaと変更されるケースが有るのでAM_でワンクッション
# 変数を保持して変更可能にしているautomakeの仕組み

#	#AM_BOOTFILE = main.lua
#	#AM_OPTSEP = -J
#	#bootlj_CFLAGS +=  	-DBOOTFILE='$(AM_BOOTFILE)' -DOPTSEP='$(AM_OPTSEP)'

# libtoolは完全に時代遅れで可搬性がないので使わない方がいい
# linuxとcygwin両方を一つのconfigureでビルドを絶対に成功させたい場合のみ検討に値する
# それでも不採用かな。別々のビルドスクリプトが低コスト。もしくは仮想マシンとか。
# libtoolを使うと独自仕様の.laや独自仕様の-rpathが発生する。フラグオプションも
# -sharedが無視されたりしてまともに使えなくなる。PATHをバイナリに
# ハードコードするのでセキュリティ的に危険だしインストールフォルダは動かせなくなる。
# ややこしく紛らわしい独自コンパイル/リンクオプションとautomakeへの干渉で
# configure.acでのLT_INITのオプション扱いになってる
install-exec-hook:
# hookは通常のinstallが終わった後に追加で実行するものたち
# 調整したいときに使う
	cp libped.so $(DESTDIR)$(libdir)
#	cp ped $(DESTDIR)$(bindir)
#	for i in *.lua; do cp $$i $(DESTDIR)$(bindir);done
#	(cd $(DESTDIR)$(bindir);rm libped.so||:)
#	cp libped.a  $(DESTDIR)$(libdir)||:
#	cp ped.h $(DESTDIR)$(includedir)||:
#	cp ped.3 $(DESTDIR)$(man3dir)||:


#--- doc
# man1_MANS = rename.man thesame.1 alsothesame.1c
man_MANS = ../seed/ped.1 ../seed/ped.3

#--- app
bin_PROGRAMS = ped
ped_SOURCES = charbits.c dq.c hcut.c laptime.c msgp.c optbox.c ped.c ped_main.c stringrow.c 	#upd:ls -a |sed -ne '/[^.]*[.]c$/p'
ped_SOURCES += charbits.h dq.h hcut.h laptime.h lbc.h msgp.h optbox.h ped.h ped_ljmod.h ped_main.h stringrow.h ureg.h util.h 	#upd:ls *.h
ped_CFLAGS = -I./ $(AM_CFLAGS)		
#ped_LDFLAGS = -L./ -static -Wl,-rpath,'$$ORIGIN' $(AM_LDFLAGS)
ped_LDFLAGS = -L./ -static $(AM_LDFLAGS)
ped_LDADD = liblbc.a libureg.a -ldl -lm
# マイナー系のlibはよほどの事がない限りstatic ldlとかはAMがつけてくれるはず
# lbcの内部だから届いてないみたい。追加する

#--- shared lib
# avoid libtool. libtool is complex and hard to control.
noinst_PROGRAMS = libped.so
libped_so_SOURCES = charbits.c dq.c hcut.c laptime.c msgp.c optbox.c ped.c stringrow.c 	#upd:ls -a |sed -ne '/[^.]*[.]c$/p'|grep -v ped_main.c
libped_so_SOURCES += charbits.h dq.h hcut.h laptime.h lbc.h msgp.h optbox.h ped.h ped_ljmod.h ped_main.h stringrow.h ureg.h util.h 	#upd:ls *.h
# LIBADD...add to check timestamp files. nouse.
#libped_so_LIBADD = liblbc.a libped.a libureg.a 	
libped_so_CFLAGS = -I./ -fPIC $(AM_CFLAGS)	# CFLAG overwrites dfl AM_XX vars
#libped_so_LDFLAGS = -L./ -shared  -Wl,-rpath,'$$ORIGIN' $(AM_LDFLAGS)
libped_so_LDFLAGS = -L./ -shared $(AM_LDFLAGS)
libped_so_LDADD = liblbc.a libureg.a -ldl -lm
# so系のファイルは-staticはユーザーの決定余地を残すため付けない方向

#--- static lib
lib_LIBRARIES = libped.a
libped_a_SOURCES = charbits.c dq.c hcut.c laptime.c msgp.c optbox.c ped.c stringrow.c 	#upd:ls -a |sed -ne '/[^.]*[.]c$/p'|grep -v ped_main.c
libped_a_SOURCES += charbits.h dq.h hcut.h laptime.h lbc.h msgp.h optbox.h ped.h ped_ljmod.h ped_main.h stringrow.h ureg.h util.h 	#upd:ls *.h
libped_a_CFLAGS =  -I./ -fPIC $(AM_CFLAGS) 	#upd: echo ' -I./ -fPIC $(AM_CFLAGS)'
include_HEADERS = ped.h

#	# 
#	# # use EXTRA_ instead of lib_ to handle -rpath manually
#	# # kick .la files after install
#	# LT系のビルドフラグが一般的な奴と専用の奴が衝突してセマンティクスが異なる
#	# -rpathは全く違う意味を持つ ranpath だったり skipしたりする
#	noinst_LTLIBRARIES = libpvm.la
#	libpvm_la_SOURCES = charbits.c dq.c hcut.c laptime.c msgp.c optbox.c ped.c ped_main.c stringrow.c 	#upd:ls -a |sed -ne '/[^.]*[.]c$/p'
#	libpvm_la_SOURCES += charbits.h dq.h hcut.h laptime.h lbc.h msgp.h optbox.h ped.h ped_ljmod.h ped_main.h stringrow.h ureg.h util.h 	#upd:ls *.h
#	#libpvm_CFLAGS = -static  -I./ $(AM_CFLAGS) 	#upd: echo '-static  -I./ $(AM_CFLAGS)'
#	libpvm_la_LIBADD = liblbc.a libped.a libureg.a 	
#	libpvm_la_LDFLAGS = -L./ -shared -Wl,-rpath,'$$ORIGIN' $(AM_LDFLAGS)
#	# include_HEADERS = pvm.h
#	# libbar_la_LDFLAGS = -rpath '$(libdir)'

	
# # use EXTRA_ instead of lib_ to handle -rpath manually
# # kick .la files after install
# noinst_LIBRARIES = libpvm.so
# libpvm_so_SOURCES = charbits.c dq.c hcut.c laptime.c msgp.c optbox.c ped.c ped_main.c stringrow.c 	#upd:ls -a |sed -ne '/[^.]*[.]c$/p'
# libpvm_so_SOURCES += charbits.h dq.h hcut.h laptime.h lbc.h msgp.h optbox.h ped.h ped_ljmod.h ped_main.h stringrow.h ureg.h util.h 	#upd:ls *.h
# #libpvm_CFLAGS = -static  -I./ $(AM_CFLAGS) 	#upd: echo '-static  -I./ $(AM_CFLAGS)'
# libpvm_so_LDADD = liblbc.a libped.a libureg.a 	
# libpvm_so_LDFLAGS = -L./ -shared -Wl,-rpath,'$ORIGIN'
# # include_HEADERS = pvm.h
# # libbar_la_LDFLAGS = -rpath '$(libdir)'

# lib_LIBRARIES = libbootlj.a
# libbootlj_a_SOURCES = bootlj.c
# libbootlj_a_SOURCES += charbits.h dq.h hcut.h laptime.h lbc.h msgp.h optbox.h ped.h ped_ljmod.h ped_main.h stringrow.h ureg.h util.h 	#upd:ls *.h
# include_HEADERS = bootlj.h
# @PACKAGE_NAME@_a_SOURCES += charbits.h dq.h hcut.h laptime.h lbc.h msgp.h optbox.h ped.h ped_ljmod.h ped_main.h stringrow.h ureg.h util.h 	#upd:ls -a |sed -ne '/[.]h$/p'
#prshtml_DEPENDENCIES = dbg.h opthelper.h prshtml.h 	#_upd:ls -a |sed -ne '/[.]cc$/p; /[.]h$/p'
EXTRA_DIST = makefile
