Selaa lähdekoodia

crossbuild

tags/v0.0.59
Peter Vivell 6 vuotta sitten
vanhempi
commit
aea81605b2
1 muutettua tiedostoa jossa 61 lisäystä ja 17 poistoa
  1. 61
    17
      drone.yml

+ 61
- 17
drone.yml Näytä tiedosto

@@ -41,7 +41,9 @@ steps:
41 41
     build_args: # custom args for docker build, e.g. additional BUILD_DEPS etc.
42 42
       - DEB_RELEASE=stretch
43 43
       - BUILD_DEPS=libhidapi-dev libssl-dev zip
44
-      - BUILD_ARCH=i386 armhf # amd64 arm64 armel armhf i386 mips mips64el mipsel powerpc ppc64el s390x
44
+      - BUILD_ARCH=i386 amd64 armhf armel # amd64 arm64 armel armhf i386 mips mips64el mipsel powerpc ppc64el s390x
45
+
46
+
45 47
 
46 48
 
47 49
 - name: build
@@ -53,23 +55,65 @@ steps:
53 55
   depends_on: [ clone, prepare ]
54 56
   environment:
55 57
     MAKEFLAGS: -j 1
58
+    BUILD_ARCH: amd64 armhf # amd64 arm64 armel armhf i386 mips mips64el mipsel powerpc ppc64el s390x
56 59
   commands:
57
-    - export MAKEFLAGS && make
58
-    - CONTENT=${DRONE_REPO_NAME} ;
59
-      test -n "${DRONE_TAG}" && 
60
-      RELEASE=${DRONE_REPO_NAME}-${DRONE_TAG}-bin || 
61
-      RELEASE=${DRONE_REPO_NAME}-bin
62
-    - mv dist $CONTENT ; 
63
-      ls -la $CONTENT
64
-    - find $CONTENT -type f -exec md5sum '{}' \;
65
-    - rm -rf release ; 
66
-      mkdir release
67
-    # - zip -rpq release/$RELEASE.zip    $CONTENT
68
-    - tar -czf release/$RELEASE.tar.gz $CONTENT
69
-    # - tar -cJf release/$RELEASE.tar.xz $CONTENT
70
-    - rm -rf $CONTENT ;
71
-      ls -la release
72
-    - find release -type f -exec md5sum '{}' \;
60
+
61
+    - PKG_NAME="${DRONE_REPO_NAME}" &&
62
+      PKG_VERSION="$(git describe)" &&
63
+      PKG_DEB_ARCHIVE="$${PKG_NAME}_$${PKG_VERSION}.orig.tar.xz" &&
64
+      PKG_DEB_ARCHIVE_ROOT="${PKG_NAME}-${PKG_VERSION}" &&
65
+      tar --exclude='./.*' --exclude='debian' 
66
+        --exclude="$${PKG_DEB_ARCHIVE}" 
67
+        --transform "s/\./$${PKG_DEB_ARCHIVE_ROOT}/" 
68
+        -cJvf "$${PKG_DEB_ARCHIVE}" .
69
+
70
+    - PKG_RELEASE_DIR="release" &&
71
+      PKG_DIST_DIR="dist" &&
72
+      PKG_BUILDHOST_ARCH="${DRONE_RUNNER_ARCH}" &&
73
+      PKG_SRC_ROOT="$(pwd)" &&
74
+      mkdir -p "$${PKG_RELEASE_DIR}" &&
75
+      for PKG_ARCH in ${BUILD_ARCH} ; do cd "$${PKG_SRC_ROOT}" &&
76
+        PKG_RELEASE_ARCHIVE="$${PKG_NAME}_$${PKG_VERSION}_$${PKG_ARCH}.tar.xz" &&
77
+        PKG_RELEASE_ARCHIVE_ROOT="$${PKG_NAME}-$${PKG_VERSION}" &&
78
+        PKG_BUILD_DIR="build/$${PKG_ARCH}/$${PKG_ARCHIVE_ROOT}" &&
79
+        tar -xf "$${PKG_ARCHIVE}" -C "$${PKG_ARCHIVE_ROOT}" --strip 1 &&
80
+        cd "$${PKG_BUILD_DIR}" &&
81
+        export MAKEFLAGS="${MAKEFLAGS}" &&
82
+        make &&
83
+        tar --exclude='./.*'
84
+          --transform "s/$${PKG_DIST_DIR}/$${PKG_RELEASE_ARCHIVE_ROOT}/"
85
+          -cJvf "$${PKG_RELEASE_DIR}/$${PKG_RELEASE_ARCHIVE}" "${PKG_DIST_DIR}" &&
86
+        make clean ;
87
+      done
88
+
89
+#    - export MAKEFLAGS && make
90
+#    - CONTENT=${DRONE_REPO_NAME} ;
91
+#      test -n "${DRONE_TAG}" && 
92
+#      RELEASE=${DRONE_REPO_NAME}-${DRONE_TAG}-bin || 
93
+#      RELEASE=${DRONE_REPO_NAME}-bin
94
+#    - cp -rp dist/. $CONTENT/ ; 
95
+#      ls -la $CONTENT
96
+#    - find $CONTENT -type f -exec md5sum '{}' \;
97
+#    - rm -rf release ; 
98
+#      mkdir release
99
+#    # - zip -rpq release/$RELEASE.zip    $CONTENT
100
+#    - tar -czf release/$RELEASE.tar.gz $CONTENT
101
+#    # - tar -cJf release/$RELEASE.tar.xz $CONTENT
102
+#    - make clean ; rm -rf $CONTENT ;
103
+#      ls -la release
104
+#    - find release -type f -exec md5sum '{}' \;
105
+
106
+
107
+#    - for ARCH in ${BUILD_ARCH} ; do
108
+#      apt-get build-dep -a $ARCH . ; 
109
+#      done
110
+
111
+#    - for ARCH in ${BUILD_ARCH} ; do
112
+#      CONFIG_SITE=/etc/dpkg-cross/cross-config.$ARCH
113
+#      DEB_BUILD_OPTIONS=nocheck 
114
+#      dpkg-buildpackage -us -uc -a $ARCH ;
115
+#      done
116
+
73 117
     - exit 0 ; ░▒▓█ BUILD END █▓▒░
74 118
 
75 119
 

Loading…
Peruuta
Tallenna