morristech
6/29/2019 - 1:01 AM

Makefile to generate create/drop/recreate scripts from a bunch of SQL files

Makefile to generate create/drop/recreate scripts from a bunch of SQL files

CREATE=create.sql
DROP=drop.sql
RECREATE=recreate.sql

all: recreate

recreate: clean create drop
	cat $(DROP) $(CREATE) > $(RECREATE)

create:
	rm -f $(CREATE)
	grep -Evh "^[ ]*[/*]+" *.sql > $(CREATE)

drop:
	egrep "(CREATE TABLE)" $(CREATE) | tac | \
		sed -e "s_CREATE_DROP_g;s_\$$_;_g" > $(DROP)

clean:
	rm -f $(CREATE) $(DROP) $(RECREATE)