FIGURES = figures/chmod_rpcs.png \ figures/mds-reint-setattr-request.png \ figures/mds-reint-setattr-reply.png \ figures/mds-reint-setxattr-request.png \ figures/mds-reint-setxattr-reply.png \ figures/touch_rpcs.png \ figures/ldlm-enqueue-intent-layout-request.png \ figures/ldlm-enqueue-intent-layout-reply.png \ figures/mds-getxattr-request.png \ figures/mds-getxattr-reply.png \ figures/ost-setattr-request.png \ figures/ost-setattr-reply.png \ figures/truncate_rpcs.png \ figures/ldlm-enqueue-extent-lvb-reply.png \ figures/ldlm-bl-callback-request.png \ figures/ldlm-bl-callback-reply.png \ figures/ldlm-cp-callback-request.png \ figures/ldlm-cp-callback-reply.png \ figures/ldlm-cancel-request.png \ figures/ldlm-cancel-reply.png \ figures/ost-punch-request.png \ figures/ost-punch-reply.png \ figures/fstat_rpcs.png \ figures/ldlm-enqueue-intent-getattr-request.png \ figures/ldlm-enqueue-intent-getattr-reply.png \ figures/ldlm-enqueue-intent-lvb-reply.png \ figures/ldlm-enqueue-request.png \ figures/ldlm-enqueue-reply.png \ figures/ldlm-gl-callback-request.png \ figures/ldlm-gl-callback-reply.png \ figures/statfs_rpcs.png \ figures/mds-statfs-request.png \ figures/mds-statfs-reply.png \ figures/ost-statfs-request.png \ figures/ost-statfs-reply.png \ figures/getxattr_rpcs.png \ figures/ldlm-enqueue-intent-getxattr-request.png \ figures/ldlm-enqueue-intent-getxattr-reply.png \ figures/setxattr_rpcs.png \ figures/client_mgs_connect_rpcs.png \ figures/client_mdt_connect_rpcs.png \ figures/client_ost_connect_rpcs.png \ figures/umount_rpcs.png \ figures/ost-connect-request.png \ figures/ost-connect-reply.png \ figures/mds-connect-request.png \ figures/mds-connect-reply.png \ figures/mgs-connect-request.png \ figures/mgs-connect-reply.png \ figures/ost-disconnect-request.png \ figures/ost-disconnect-reply.png \ figures/mds-disconnect-request.png \ figures/mds-disconnect-reply.png \ figures/mgs-disconnect-request.png \ figures/mgs-disconnect-reply.png \ figures/mds-getattr-request.png \ figures/mds-getattr-reply.png \ figures/mds-getstatus-request.png \ figures/mds-getstatus-reply.png \ figures/mgs-config-read-reply.png \ figures/mgs-config-read-request.png \ figures/llog-origin-handle-create-reply.png \ figures/llog-origin-handle-create-request.png \ figures/llog-origin-handle-next-block-request.png \ figures/llog-origin-handle-next-block-reply.png \ figures/llog-origin-handle-read-header-request.png \ figures/llog-origin-handle-read-header-reply.png TEXT = protocol.txt \ introduction.txt \ client.txt \ target.txt \ rpc.txt \ connection.txt \ struct_obd_connect_data.txt \ struct_obd_import.txt \ struct_obd_export.txt \ struct_obd_uuid.txt \ timeouts.txt \ eviction.txt \ recovery.txt \ transno.txt \ path_lookup.txt \ lov_index.txt \ grant.txt \ ldlm.txt \ early_lock_cancellation.txt \ llog.txt \ security.txt \ file_system_operations.txt \ mount.txt \ umount.txt \ create.txt \ getattr.txt \ setattr.txt \ statfs.txt \ getxattr.txt \ setxattr.txt \ lustre_rpcs.txt \ ost_setattr.txt \ struct_ptlrpc_body.txt \ struct_lustre_handle.txt \ struct_ost_body.txt \ ost_connect.txt \ ost_disconnect.txt \ ost_punch.txt \ ost_statfs.txt \ struct_obd_statfs.txt \ mds_getattr.txt \ struct_mdt_body.txt \ struct_lu_fid.txt \ mds_reint.txt \ struct_mdt_rec_reint.txt \ struct_mdt_rec_setattr.txt \ struct_mdt_rec_setxattr.txt \ mds_connect.txt \ mds_disconnect.txt \ mds_getstatus.txt \ mds_statfs.txt \ mds_getxattr.txt \ ldlm_enqueue.txt \ struct_ldlm_request.txt \ struct_ldlm_intent.txt \ struct_layout_intent.txt \ struct_ldlm_reply.txt \ struct_ost_lvb.txt \ struct_lov_mds_md.txt \ struct_ost_id.txt \ ldlm_cancel.txt \ ldlm_bl_callback.txt \ ldlm_cp_callback.txt \ ldlm_gl_callback.txt \ mgs_connect.txt \ mgs_disconnect.txt \ mgs_config_read.txt \ struct_mgs_config_body.txt \ llog_origin_handle_create.txt \ struct_llogd_body.txt \ llog_origin_handle_next_block.txt \ llog_origin_handle_read_header.txt \ struct_llog_log_hdr.txt \ struct_lustre_msg.txt \ glossary.txt .SUFFIXES : .gnuplot .gv .pdf .png .fig .PHONY: all all: protocol.html protocol.pdf .PHONY: check check: $(TEXT) @echo "Are there lines with trailing white space?" build/whitespace.sh $< protocol.html: $(FIGURES) $(TEXT) asciidoc protocol.txt protocol.pdf: $(FIGURES) $(TEXT) a2x --no-xmllint -f pdf --fop protocol.txt .gv.png: dot -Tpng $< -o $@ .fig.png: fig2dev -L png $< $@ .PHONY : clean clean: rm -f *.xml *.html *.pdf figures/*.png