diff --git a/Makefile b/Makefile
index 9087f27aa..ca3471e2f 100644
--- a/Makefile
+++ b/Makefile
@@ -78,7 +78,7 @@ hack/prometheus-config-reloader-image: cmd/prometheus-config-reloader/Dockerfile
 ##############
 
 .PHONY: generate
-generate: pkg/client/monitoring/v1/zz_generated.deepcopy.go pkg/client/monitoring/v1/openapi_generated.go kube-prometheus Documentation/*
+generate: pkg/client/monitoring/v1/zz_generated.deepcopy.go pkg/client/monitoring/v1/openapi_generated.go jsonnet/prometheus-operator/**-crd.libsonnet kube-prometheus Documentation/*
 
 .PHONY: generate-in-docker
 generate-in-docker: hack/jsonnet-docker-image
@@ -104,7 +104,7 @@ jsonnet/prometheus-operator/**-crd.libsonnet: example/prometheus-operator-crd/**
 	cat example/prometheus-operator-crd/servicemonitor.crd.yaml | gojsontoyaml -yamltojson > jsonnet/prometheus-operator/servicemonitor-crd.libsonnet
 	cat example/prometheus-operator-crd/prometheusrule.crd.yaml | gojsontoyaml -yamltojson > jsonnet/prometheus-operator/prometheusrule-crd.libsonnet
 
-pkg/client/monitoring/v1/openapi_generated.go: $(OPENAPI_GEN_BINARY)
+pkg/client/monitoring/v1/openapi_generated.go: pkg/client/monitoring/v1/types.go $(OPENAPI_GEN_BINARY)
 	$(OPENAPI_GEN_BINARY) \
 	-i github.com/coreos/prometheus-operator/pkg/client/monitoring/v1,k8s.io/apimachinery/pkg/apis/meta/v1,k8s.io/api/core/v1 \
 	-p github.com/coreos/prometheus-operator/pkg/client/monitoring/v1 \
@@ -207,7 +207,7 @@ $(EMBEDMD_BINARY):
 $(JB_BINARY):
 	go get -u github.com/jsonnet-bundler/jsonnet-bundler/cmd/jb
 
-$(PO_CRDGEN_BINARY): cmd/po-crdgen/**.go
+$(PO_CRDGEN_BINARY): cmd/po-crdgen/main.go pkg/client/monitoring/v1/openapi_generated.go
 	go install github.com/coreos/prometheus-operator/cmd/po-crdgen
 
 $(PO_DOCGEN_BINARY): cmd/po-docgen/**.go